SD Card initialization failed - Host Driver does not check the Voltage Support bits


#1

Hello Forum,

I am various problems when trying to mount an SD card with my mangOH board.
What is the most complicated to understand is that I do not have the same behavior with different SD cards.

Here is the test with 3 different cards (Reproducible 100%)
=> the Host Driver does not check the Voltage Support bits in the Capabilities register.

Card A, Kernel Log:
[ 1390.960048] mmc0: bam physical base=0x12182000
[ 1390.963466] mmc0: bam virtual base=0xd055c000
[ 1390.967831] sps:BAM 0x12182000 is registered.
[ 1390.999389] mmc0: BAM device registered. bam_handle=0xcbe39c00[ 1391.004608] sps:REVISION of BAM 0xd055c000 is 0x5.
[ 1391.029848] mmc0: Qualcomm MSM SDCC-BAM at 0x0000000012182000 irq 130
[ 1391.035281] mmc0: Qualcomm MSM SDCC-DML at 0x0000000012180800
[ 1391.050999] mmc0: No card detect facilities available
[ 1391.065588] mmc0: Qualcomm MSM SDCC-core at 0x0000000012180000 irq 136,0 dma -1 dmacrcri -1
[ 1391.087288] mmc0: 8 bit data mode disabled
[ 1391.098458] mmc0: 4 bit data mode enabled
[ 1391.107034] mmc0: polling status mode disabled
[ 1391.130077] mmc0: MMC clock 400000 -> 48000000 Hz, PCLK 0 Hz
[ 1391.156111] mmc0: Slot eject status = 0
[ 1391.166518] mmc0: Power save feature enable = 1
[ 1391.171158] mmc0: SPS-BAM data transfer mode available
root@swi-mdm9x15:~# [ 1391.373843] mmc0: msmsdcc_switch_io_voltage: MCIDATIN_3_0 are still not all ones
[ 1391.607446] mmc0: mmc_sd_init_card() failure (err = -95)
[ 1391.612513] mmc0: error -95 whilst initialising SD card
[ 1391.620021] mmc0: host doesn’t support card’s voltages
[ 1391.624141] mmc0: error -22 whilst initialising MMC card

Card B, Kernel Log:
[ 1590.823347] mmc0: mci-version: 18
[ 1590.829970] mmc0: bam physical base=0x12182000
[ 1590.833389] mmc0: bam virtual base=0xd05d0000
[ 1590.837722] sps:BAM 0x12182000 is registered.
[ 1590.859392] mmc0: BAM device registered. bam_handle=0xcbe0c200[ 1590.864580] sps:REVISION of BAM 0xd05d0000 is 0x5.
[ 1590.873309] mmc0: Qualcomm MSM SDCC-BAM at 0x0000000012182000 irq 130
[ 1590.878772] mmc0: Qualcomm MSM SDCC-DML at 0x0000000012180800
[ 1590.885304] mmc0: No card detect facilities available
[ 1590.893483] mmc0: Qualcomm MSM SDCC-core at 0x0000000012180000 irq 136,0 dma -1 dmacrcri -1
[ 1590.909567] mmc0: 8 bit data mode disabled
[ 1590.912650] mmc0: 4 bit data mode enabled
[ 1590.928460] mmc0: polling status mode disabled
[ 1590.937524] mmc0: MMC clock 400000 -> 48000000 Hz, PCLK 0 Hz
[ 1590.959590] mmc0: Slot eject status = 0
[ 1590.967465] mmc0: Power save feature enable = 1
[ 1590.976712] mmc0: SPS-BAM data transfer mode available
root@swi-mdm9x15:~# [ 1591.200274] mmc0: msmsdcc_switch_io_voltage: MCIDATIN_3_0 are still not all ones
[ 1591.556172] mmc0: mmc_sd_init_card() failure (err = -110)
[ 1591.561330] mmc0: error -110 whilst initialising SD card

Card C, Kernel Log:
[ 31.272852] mmc0: mci-version: 18
[ 31.280299] mmc0: bam physical base=0x12182000
[ 31.283717] mmc0: bam virtual base=0xd055c000
[ 31.288081] sps:BAM 0x12182000 is registered.
[ 31.309751] mmc0: BAM device registered. bam_handle=0xcdcc7800[ 31.314939] sps:REVISION of BAM 0xd055c000 is 0x5.
[ 31.319914] mmc0: Qualcomm MSM SDCC-BAM at 0x0000000012182000 irq 130
[ 31.329528] mmc0: Qualcomm MSM SDCC-DML at 0x0000000012180800
[ 31.334991] mmc0: No card detect facilities available
[ 31.343995] mmc0: Qualcomm MSM SDCC-core at 0x0000000012180000 irq 136,0 dma -1 dmacrcri -1
[ 31.359865] mmc0: 8 bit data mode disabled
[ 31.362948] mmc0: 4 bit data mode enabled
[ 31.378727] mmc0: polling status mode disabled
[ 31.387791] mmc0: MMC clock 400000 -> 48000000 Hz, PCLK 0 Hz
[ 31.410102] mmc0: Slot eject status = 0
[ 31.417976] mmc0: Power save feature enable = 1
[ 31.427132] mmc0: SPS-BAM data transfer mode available
===> OK, no error card detected
root@swi-mdm9x15:~# [ 31.567801] mmc0: host does not support reading read-only switch. assuming write-enable.
[ 31.585808] mmc0: new high speed SDHC card at address 59b4
[ 31.599816] mmcblk0: mmc0:59b4 00000 7.47 GiB
[ 31.665466] mmcblk0: p1

Help would be welcome,
Best regards,
Sylvain