u-boot-brain/drivers/mmc
Marek Vasut cf345760bd mmc: Do not issue CMD 6 on SD 1.00 and SD 1.01
According to SD Specifications Part 1 Physical Layer Simplified Specification
Version 6.00 August 29, 2018, section 4.3.10 (Switch Function Command) and
section 5.6 (SCR register), SD cards version 1.00 and 1.01 do not support the
SD CMD 6.

Currently, U-Boot will issue CMD 6 unconditionally in sd_set_card_speed()
while configuring the bus for selected frequency. This will make SD cards
version 1.00 and 1.01 time out and thus fail detection altogether.

Fix this by not sending CMD 6 on such cards. Tested on Matsushita Electric
Industrial Co., Ltd. Japan RP-SD008B / Victor 8MB SD card, CU-SD008, which
is correctly detected with this patch as:

Device: sd@ee160000
Manufacturer ID: 1
OEM: 5041
Name: S008B
Bus Speed: 25000000
Mode : SD Legacy
Rd Block Len: 512
SD version 1.0
High Capacity: No
Capacity: 6.5 MiB
Bus Width: 4-bit
Erase Group Size: 512 Bytes

Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Cc: Masahiro Yamada <yamada.masahiro@socionext.com>
2018-12-04 09:21:06 +01:00
..
arm_pl180_mmci.c mmc: arm_pl180_mmci: Remove cd_inverted host's struct field 2018-08-03 19:53:54 -04:00
arm_pl180_mmci.h mmc: arm_pl180_mmci: Remove cd_inverted host's struct field 2018-08-03 19:53:54 -04:00
atmel_sdhci.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
bcm2835_sdhci.c mmc: use core clock frequency in bcm2835 sdhost 2018-04-05 13:17:43 +02:00
bcm2835_sdhost.c mmc: Unirqify bcm2835_sdhost and fix writes 2018-05-23 22:31:42 +02:00
bcmstb_sdhci.c board: arm: Add support for Broadcom BCM7445 2018-07-10 16:55:57 -04:00
davinci_mmc.c MMC: davinici_mmc: Enable CD and WP with DM and OF_CONTROL 2018-09-11 21:49:02 -04:00
dw_mmc.c mmc: dw_mmc: Add RCRC handling 2018-11-10 08:16:30 -05:00
exynos_dw_mmc.c ARM: Odroid XU3: Modify exynos dw_mmc driver to support Odroid XU3 in DM MMC 2018-08-06 10:53:53 +09:00
fsl_esdhc_spl.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
fsl_esdhc.c mmc: fsl_esdhc: add uclass clk support 2018-10-22 13:00:09 +02:00
ftsdc010_mci.c mmc: ftsdc010_mci: Sync compatible with DT mmc node 2018-05-29 14:45:03 +08:00
ftsdc010_mci.h SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
gen_atmel_mci.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
hi6220_dw_mmc.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
k3_arsan_sdhci.c mmc: k3_arasan: Add sdhci driver support for K3 family SoCs 2018-09-11 08:32:55 -04:00
Kconfig mmc: mtk-sd: add SD/MMC host controller driver for MT7623 SoC 2018-11-28 23:04:54 -05:00
kona_sdhci.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
Makefile mmc: mtk-sd: add SD/MMC host controller driver for MT7623 SoC 2018-11-28 23:04:54 -05:00
meson_gx_mmc.c mmc: meson-gx: Add AXG compatible 2018-11-26 14:39:57 +01:00
mmc_boot.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
mmc_legacy.c mmc: Improve tinification 2018-05-13 07:57:32 -04:00
mmc_private.h SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
mmc_spi.c mmc: change the set_ios return type from void to int 2017-01-11 19:40:13 +09:00
mmc_write.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
mmc-uclass.c mmc: Parse HS400 DT properties 2018-12-03 12:51:16 +01:00
mmc.c mmc: Do not issue CMD 6 on SD 1.00 and SD 1.01 2018-12-04 09:21:06 +01:00
msm_sdhci.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
mtk-sd.c mmc: mtk-sd: add SD/MMC host controller driver for MT7623 SoC 2018-11-28 23:04:54 -05:00
mv_sdhci.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
mvebu_mmc.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
mxcmmc.c mmc: change the set_ios return type from void to int 2017-01-11 19:40:13 +09:00
mxsmmc.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
omap_hsmmc.c mmc: omap: Surround DM_FLAG_PRE_RELOC flag with OF_CONTROL check 2018-11-14 09:16:28 -08:00
pci_mmc.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
pic32_sdhci.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
pxa_mmc_gen.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
renesas-sdhi.c mmc: tmio: sdhi: Add HS400 support 2018-12-03 12:51:17 +01:00
rockchip_dw_mmc.c rockchip: dwmmc: add rk2928-dw-mshc compatible 2018-10-02 09:35:09 +02:00
rockchip_sdhci.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
rpmb.c mmc: rpmb: add mmc_rpmb_route_frames() 2018-10-07 10:47:38 -04:00
s5p_sdhci.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
sandbox_mmc.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
sdhci-cadence.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
sdhci.c mmc: sdhci: Fix MMC HS200 tuning command failures 2018-06-15 08:54:04 +02:00
sh_mmcif.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
sh_mmcif.h SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
sh_sdhi.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
socfpga_dw_mmc.c mmc: socfpga: Add clock framework support 2018-08-13 22:35:42 +02:00
sti_sdhci.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
stm32_sdmmc2.c mmc: stm32_sdmmc2: update pwron management 2018-07-19 16:31:35 -04:00
sunxi_mmc.c sunxi-mmc: use new mode on both controllers on A64 2018-11-22 13:20:16 +05:30
tangier_sdhci.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
tegra_mmc.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
tmio-common.c mmc: tmio: Reorder TMIO clock handling 2018-12-03 12:51:16 +01:00
tmio-common.h mmc: tmio: sdhi: Add HS400 support 2018-12-03 12:51:17 +01:00
uniphier-sd.c mmc: tmio: Switch to clock framework 2018-12-03 12:51:16 +01:00
xenon_sdhci.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
zynq_sdhci.c mmc: zynq: Fix tuning_loop_counter type in arasan_sdhci_execute_tuning() 2018-06-15 08:54:04 +02:00