linux上sd卡驅動移植除錯記錄

2021-06-06 20:19:27 字數 902 閱讀 4093

編譯出來了之後,我插上了我的乙個512mb的卡,在啟動資訊了列印如下:

s3c2440-sdi s3c2440-sdi: powered down.

mmc0: error -110 whilst initialising sd card

s3c2440-sdi s3c2440-sdi: powered down.

注意紅色部分,進入了之後/dev/devices 裡面看不到沒有相應的驅動。驅動工作不正常!

但是插上了乙個32mb的卡後,就能夠正常識別。

在網上查到如下資訊:

現在說下這個錯誤的解決方案:

driver/mmc/core/sd.c 的mmc_sd_init_card()函式中mmc_read_switch前延時10ms

mdelay(10);

err = mmc_read_switch(card);

看到紅色語句了麼,就這個加上去就可以了啊,哈哈......

加上紅色延時語句之後啟動資訊如下

s3c2440-sdi s3c2440-sdi: running at 196khz (requested: 195khz).

s3c2440-sdi s3c2440-sdi: running at 25000khz (requested: 25000khz).

s3c2440-sdi s3c2440-sdi: running at 25000khz (requested: 25000khz).

mmc0: new sd card at address 95b9

mmcblk0: mmc0:95b9 sd02g 1.83 gib

mmcblk0: p1

驅動工作完全正常。

進入系統後

mount /dev/mmcblk0p1 /mnt

Linux上SD MMC卡驅動移植除錯記錄

我的核心是linux 2.6.28,已經帶有了sd mmc卡驅動了只要在menuconfig裡面把相應選項選上即可,編譯出來了之後,我插上了我的乙個512mb的卡,在啟動資訊了列印如下 s3c2440 sdi s3c2440 sdi powered down.mmc0 error 110 whils...

Linux驅動之掛在SD卡

講解之前我得說一下,現在有乙個新的技術在公司已經在用了,遠遠比你在學校學的東西要先進一點,我們燒寫u boot程式一般是在flash上,然後由flash中的程式來引導linux核心,但是flash成本遠遠比sd卡要高,現在公司很多都用sd卡來代替flash,這個具體怎麼實現,還得自己去學習,我目前也...

SD卡的驅動

這幾天一直在調大容量sdhc卡的驅動,期間遇到一些問題,現在只調好一張4g容量的卡,8g容量的卡還不行。不得不感嘆sd卡協議的混亂和相容性之差。特別是命令響應這部分,看了很多文件,還是雲裡霧裡。期間參考正點原子的spi驅動sdhc的例子,那例子裡判斷cmd17的正確響應應該是0x00,然而在veri...