1. 程式人生 > >新開項目SD卡不識別,如何debug

新開項目SD卡不識別,如何debug

SD卡不識別

[DESCRIPTION]

在新開項目中,經常碰到SD卡不識別的問題,一共有兩大類: “SD底層Driver 初始化失敗,無法識別SD卡” 和 “上層mount 失敗,無法識別到卡”

[SOLUTION]

a. 如果可以連接adb shell,執行 “ls /dev/block/ ” ,查看得到信息。


a1. eMMC 的項目一般會有 mmcblk0 ,mmcblk0p* 和mmcblk1 及mmcblk1p1,如果有mmcblk1 則說明底層已經認到卡,這種情況請參考我司提供的《Multi-storage_for_Customer_XX.pptx》配置。


a2. Nand 的項目如果有mmcblk0 ,mmcblk0p1 ,則說明底層Driver 已識別卡,請先參考我司提供的《Multi-storage_for_Customer_XX.pptx》配置。


a3. 如仍然不能解決問題,請抓取開機過程的mobile log,提交eService。


b. 如未發現上述信息,則很有可能是底層driver未識別到卡。


b1. 請先多使用幾張T卡測試,看是否能夠識別到卡


b2. 請check 原理圖上SD卡供電,包含T卡端的VDD 和 IO端的 DVDD_MC1 ,這兩路點通常是VMC/VMCH/VGP中的某個或某兩個LDO供的。請Check供電是否正常。


b3. 請Check 原理圖是否有連接INS_Pin(Hot-Plug檢測Pin),如未連接,則需要去掉\mediatek\custom\<proj>\kernel\core\src\board.c中 msdc1_hw 結構體中的flags 的MSDC_CD_PIN_EN 和 MSDC_REMOVABLE 這兩個flag。或者,在相關設定由dws控制時,需要將dws中關於MSDC EINT相關的設定關掉。即軟件上的熱插拔配置,需要同硬件實際匹配。


b4. 如仍然不能解決問題,請抓取開機過程的完整的mobile log 和uart log,提交eService。


原文鏈接:

新開項目SD卡不識別,如何debug