首页 > 其他分享 >i.MX6 mmc0: unrecognised EXT_CSD revision 8 错误解决办法

i.MX6 mmc0: unrecognised EXT_CSD revision 8 错误解决办法

时间:2023-01-14 10:11:15浏览次数:47  
标签:5.0 mmc0 EMMC eMMC MX6 CSD mmc card

問題現象:

mmc0: unrecognised EXT_CSD revision 8
mmc0: error -22 whilst initialising MMC card

解決方法:  

  在我们的参考设计板中,eMMC IC是Sandisk SDIN5C2-8(4.41),在i.MX6参考手册和数据表中,我们可以知道它与MMC系统规范版本4.2/4.3/4.4兼容,并且数据表中的详细信息声明uSDHC模块“完全符合多媒体卡系统规范v4.2/4.3/4.4/4.41中定义的MMC命令/响应集和物理层,包括高容量(> 2 GB) HC MMC卡”。EMMC4.4/4.41的原因可以在我们发布的BSP中工作。

  但是eMMC 4.4已经停止,eMMC 4.41也有可能停止。我们的许多客户会选择eMMC 4.5或高版本的eMMC 5.0和eMMC 5.1。如何使eMMC 4.5、eMMC 5.0和eMMC 5.1在i.MX6上工作?

  EMMC 4.5或EMMC 5.0 /5.1向后兼容eMMC4.4,我们可以在eMMC4.4模式下使用它在i.MX6平台上启用eMMC4.4功能和性能。不支持从eMMC4.5或更高版本的设备引导,当检测到支持eMMC4.5或更高版本的设备时,引导ROM将退回到eMMC4.4标准。在BSP中可以绕过eMMC版本检查,因此eMMC v4.5或更高版本可以作为eMMC v4.4卡使用,不支持特定的v4.5特性。仅支持基本的读写操作。

  在源代码中,我们可以更改card->ext_csd.rev的检查值。

  以eMMC4.5为例,当前的i.MX6 Linux BSP (L3.0.35_4.1.0) 增加了与eMMC4.5卡接口的代码,以作为eMMC4.4卡进行操作。修改 card->ext_csd 的值。rev 5到6,现在eMMC 5.0可以作为eMMC 4.4工作。代码 drivers/mmc/core/mmc.c:

  

   而对于EMMC 5.0和EMMC5.1,修改内核以支持EMMC 5.0和5.1扩展CSD修订,如下所示: 

/drivers/mmc/core/mmc.c :

if (card->ext_csd.rev > 6) {              // The '6' has to be replaced with '7' For EMMC5.0 ; The '6' has to be replaced with '8'  For EMMC5.1

pr_err("%s: unrecognised EXT_CSD revision %d\n",

mmc_hostname(card->host), card->ext_csd.rev);

err = -EINVAL;

goto out;

         }

  修改代码后,我们需要重建用于MfgTool的固件uImage。更新Mfgtool中的uImage,可以成功闪光。

  eMMC 5.0和5.1版本可用于基于IMX6的单板。

  參考:https://community.nxp.com/t5/i-MX-Processors-Knowledge-Base/EMMC-5-0-and-EMMC-5-1-work-on-i-MX6/ta-p/1118941 ,僅供參考學習。

标签:5.0,mmc0,EMMC,eMMC,MX6,CSD,mmc,card
From: https://www.cnblogs.com/xingboy/p/17051324.html

相关文章

  • MfgTool 烧写 Linux 系统(imx6ull)【转】
    转自:https://www.cnblogs.com/dhtblog/p/14505677.html仅供参考学习使用一、烧写原理1、开发板连接电脑以后双击“mfgtool2-yocto-mx-evk-emmc.vbs”,打开下载对话框......
  • C#下ArcSDE(Oracle)图层数据变化监控实现
    因业务需要对ArcSDE中单个图层的变化进行监控,在出现图形插入、删除,图形和属性修改时及时获取到发生变化的要素。研究了一下可以通过C#进行监控。核心代码如下:stringsq......
  • Spire.Doc API 可以在CSDN下载啦!
    近期,我们会将E-iceblue公司发布的系列产品帮助文档API陆续提交到CSDN.今天我们提交的是Spire.DocAPI.先来看看Spire.Doc产品的API样式图:Spire.DocAPI详细罗列了Spire.......
  • CSDN上一个关于kmp比较简洁的讲解
    上链接:https://blog.csdn.net/Jackma_mayichao/article/details/114732596?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522167221162316800188583279%2522%25......
  • IMX6 长时间播放1080P 中途停止
    原因还是播放视频导致芯片温度过高。用IMX6播放720P测试芯片温度竟然能叨叨81度,一般是七十多度。晚点加上散热片测试。下面是搜的两篇有关的文章。​​https://github.com/......
  • 基于I.MX6UL平台的ADS1256驱动开发五.实现功能
    在前面我们已经完成了基本的寄存器读写操作,下面我们就可以根据数据手册来完成基础AD功能的实现。初始化初始化的过程基本上是从AD板供应商提供的Demo移植的。1voidA......
  • 基于I.MX6UL平台的ADS1256驱动开发四.IC操作
    在前面章节我们已经完成了最基础的驱动框架的搭建,下面就需要在GPIO可以正常工作的条件下进行IC的读写操作。首先我们要完成最基础的读写操作,然后所有的操作都是基于这个读......
  • boa服务器移植到mx6ull
    BOA服务器的移植 1、源码下载http://www.boa.org/News!(lastupdated23February2005)LatestReleasedVersion(0.94.13)here(signaturehere) ---下载地址......
  • 欢迎使用CSDN-markdown编辑器
    欢迎使用Markdown编辑器写博客本Markdown编辑器使用​​StackEdit​​修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片......
  • nacos2.0 启动报错 Error creating bean with name 'grpcSdkServer': Invocation of i
    错误信息Errorcreatingbeanwithname'grpcSdkServer':Invocationofinitmethodfailed;nestedexceptionisjava.io.IOException:Failedtobind目前市面......