在linux中读取mmc的原因是什么

在linux中读取mmc的原因是什么,linux,linux-device-driver,embedded-linux,archlinux,Linux,Linux Device Driver,Embedded Linux,Archlinux,linux中出现mmc读取问题的原因是什么。。?请帮忙解决这个。。。?请检查下面我的内核引导日志,帮助我解决这个问题 我已经启用了mmc的相关驱动程序,并使用新创建的内核映像编译和引导。我得到了如下所示的内核引导代码 mmc0: card lacks mandatory switch function, performance might suffer. mmc0: host does not support reading read-only switch. assumi

linux中出现mmc读取问题的原因是什么。。?请帮忙解决这个。。。?请检查下面我的内核引导日志,帮助我解决这个问题

我已经启用了mmc的相关驱动程序,并使用新创建的内核映像编译和引导。我得到了如下所示的内核引导代码

mmc0: card lacks mandatory switch function, performance might suffer.           
mmc0: host does not support reading read-only switch. assuming write-enable.    
mmc0: new SD card at address b368                                               
mmcblk0: mmc0:b368 SMI-S 8.00 MiB                                               
 mmcblk0:                                                                       
mmcblk0: retrying using single block read                                       
mmcblk0: error -110 transferring data, sector 0, nr 8, card status 0xb00        
end_request: I/O error, dev mmcblk0, sector 0                                   
mmcblk0: error -110 sending read/write command, response 0xb00, card status 0x40
end_request: I/O error, dev mmcblk0, sector 1                                   
mmcblk0: error -110 sending read/write command, response 0x400b00, card status 0
end_request: I/O error, dev mmcblk0, sector 2                                   
mmcblk0: error -110 sending read/write command, response 0x400b00, card status 0
end_request: I/O error, dev mmcblk0, sector 3                                   
mmcblk0: error -110 sending read/write command, response 0x400b00, card status 0
end_request: I/O error, dev mmcblk0, sector 4                                   
mmcblk0: error -110 sending read/write command, response 0x400b00, card status 0
end_request: I/O error, dev mmcblk0, sector 5                                   
mmcblk0: error -110 sending read/write command, response 0x400b00, card status 0
end_request: I/O error, dev mmcblk0, sector 6                                   
mmcblk0: error -110 sending read/write command, response 0x400b00, card status 0
end_request: I/O error, dev mmcblk0, sector 7                                   
Buffer I/O error on device mmcblk0, logical block 0                             
mmcblk0: retrying using single block read                                       
mmcblk0: error -110 sending read/write command, response 0x400b00, card status 0
end_request: I/O error, dev mmcblk0, sector 0                                   
mmcblk0: error -110 sending read/write command, response 0x400b00, card status 0
end_request: I/O error, dev mmcblk0, sector 1                                   
mmcblk0: error -110 sending read/write command, response 0x400b00, card status 0
end_request: I/O error, dev mmcblk0, sector 2                                   
mmcblk0: error -110 sending read/write command, response 0x400b00, card status 0
end_request: I/O error, dev mmcblk0, sector 3                                   
mmcblk0: error -110 sending read/write command, response 0x400b00, card status 0
end_request: I/O error, dev mmcblk0, sector 4                                   
mmcblk0: error -110 sending read/write command, response 0x400b00, card status 0
end_request: I/O error, dev mmcblk0, sector 5                                   
mmcblk0: error -110 sending read/write command, response 0x400b00, card status 0
end_request: I/O error, dev mmcblk0, sector 6                                   
mmcblk0: error -110 sending read/write command, response 0x400b00, card status 0
end_request: I/O error, dev mmcblk0, sector 7                                   
Buffer I/O error on device mmcblk0, logical block 0                             
unable to read partition table

错误-110表示超时。基本上,您的MMC控制器无法与SD卡正确通话。这通常发生在您的卡未正确插入插槽时(例如,弹簧将卡向后推得太远),或者您正在使用micro SD卡,但它未正确插入SD卡适配器时。还可能发生的情况是,SD卡适配器轻微损坏,某些连接不正确(例如,您的卡已协商4位模式,而某些线路实际上未连接)。

您是否有任何独立的验证,证明与卡的电气连接正确?从另一台设备的使用情况中,您是否知道该卡具有有效的文件系统?你试过另一张卡吗?是的,这张卡在我的手机里工作正常。我有FAT文件系统。读取分区表信息时,看起来像cmd17单读取超时错误。然而,从一开始,这里就是“mmcblk0:使用单块读取重试”。这意味着您首先应该有一个CMD18读取错误日志,然后主机会通过CMD17逐个重试读取分区表。但我看不见。如何打开CONFIG_MMC_DEBUG以获取更多信息?将micro SD从SD适配器中拉出并放回适配器中。固定的!想想其他帖子都说这张卡片是烤面包!