linux-yocto/drivers/mmc/host
Erick Shepherd d0306f88b4 mmc: sdhci: Disable SD card clock before changing parameters
[ Upstream commit fb3bbc46c9 ]

Per the SD Host Controller Simplified Specification v4.20 §3.2.3, change
the SD card clock parameters only after first disabling the external card
clock. Doing this fixes a spurious clock pulse on Baytrail and Apollo Lake
SD controllers which otherwise breaks voltage switching with a specific
Swissbit SD card.

Signed-off-by: Kyle Roeschley <kyle.roeschley@ni.com>
Signed-off-by: Brad Mouring <brad.mouring@ni.com>
Signed-off-by: Erick Shepherd <erick.shepherd@ni.com>
Acked-by: Adrian Hunter <adrian.hunter@intel.com>
Link: https://lore.kernel.org/r/20250211214645.469279-1-erick.shepherd@ni.com
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2025-06-04 14:40:07 +02:00
..
alcor.c
atmel-mci.c mmc: atmel-mci: Add missing clk_disable_unprepare() 2025-03-28 21:59:01 +01:00
au1xmmc.c
bcm2835.c mmc: bcm2835: fix deferred probing 2023-06-28 11:12:26 +02:00
cavium-octeon.c
cavium-thunderx.c
cavium.c
cavium.h
cb710-mmc.c
cb710-mmc.h
cqhci-core.c mmc: cqhci: Fix checking of CQHCI_HALT state 2024-09-12 11:10:17 +02:00
cqhci-crypto.c
cqhci-crypto.h
cqhci.h
davinci_mmc.c mmc: davinci: Don't strip remove function when driver is builtin 2024-06-21 14:35:40 +02:00
dw_mmc-bluefield.c
dw_mmc-exynos.c mmc: dw_mmc: add exynos7870 DW MMC support 2025-06-04 14:40:07 +02:00
dw_mmc-exynos.h
dw_mmc-hi3798cv200.c
dw_mmc-k3.c
dw_mmc-pci.c
dw_mmc-pltfm.c
dw_mmc-pltfm.h
dw_mmc-rockchip.c
dw_mmc.c mmc: dw_mmc: add a quirk for accessing 64-bit FIFOs in two halves 2025-04-25 10:43:28 +02:00
dw_mmc.h mmc: dw_mmc: add a quirk for accessing 64-bit FIFOs in two halves 2025-04-25 10:43:28 +02:00
jz4740_mmc.c
Kconfig mmc: sdhci_omap: Fix TI SoC dependencies 2024-01-25 15:27:38 -08:00
litex_mmc.c mmc: litex_mmc: set PROBE_PREFER_ASYNCHRONOUS 2023-06-28 11:12:25 +02:00
Makefile
meson-gx-mmc.c mmc: meson-gx: Remove setting of CMD_CFG_ERROR 2023-11-28 17:07:10 +00:00
meson-mx-sdhc-clkc.c
meson-mx-sdhc-mmc.c mmc: meson-mx-sdhc: Fix initialization frozen issue 2024-01-10 17:10:36 +01:00
meson-mx-sdhc.h
meson-mx-sdio.c
mmc_hsq.c
mmc_hsq.h
mmc_spi.c mmc: mmc_spi: drop buggy snprintf() 2024-12-14 19:53:20 +01:00
mmci_qcom_dml.c
mmci_stm32_sdmmc.c mmc: mmci: stm32: fix DMA API overlapping mappings warning 2024-03-06 14:45:11 +00:00
mmci.c mmc: mmci: Set PROBE_PREFER_ASYNCHRONOUS 2023-07-19 16:22:09 +02:00
mmci.h
moxart-mmc.c mmc: moxart: read scr register without changing byte order 2023-08-16 18:27:21 +02:00
mtk-sd.c mmc: mtk-sd: Fix register settings for hs400(es) mode 2025-02-21 13:50:05 +01:00
mvsdio.c mmc: mvsdio: fix deferred probing 2023-06-28 11:12:30 +02:00
mvsdio.h
mxcmmc.c
mxs-mmc.c
of_mmc_spi.c
omap_hsmmc.c mmc: omap_hsmmc: fix deferred probing 2023-06-28 11:12:30 +02:00
omap.c mmc: omap: fix deferred probing 2023-06-28 11:12:30 +02:00
owl-mmc.c mmc: owl: fix deferred probing 2023-06-28 11:12:30 +02:00
pxamci.c
pxamci.h
renesas_sdhi_core.c mmc: renesas_sdhi: Fix error handling in renesas_sdhi_probe 2025-05-09 09:41:35 +02:00
renesas_sdhi_internal_dmac.c
renesas_sdhi_sys_dmac.c
renesas_sdhi.h
rtsx_pci_sdmmc.c
rtsx_usb_sdmmc.c
s3cmci.c
s3cmci.h
sdhci_am654.c mmc: sdhci_am654: Fix ITAPDLY for HS400 timing 2024-06-12 11:03:45 +02:00
sdhci_f_sdh30.c mmc: f-sdh30: fix order of function calls in sdhci_f_sdh30_remove 2023-08-23 17:52:42 +02:00
sdhci_f_sdh30.h
sdhci-acpi.c mmc: sdhci-acpi: Add quirk to enable pull-up on the card-detect GPIO on Asus T100TA 2024-06-16 13:41:36 +02:00
sdhci-bcm-kona.c
sdhci-brcmstb.c mmc: sdhci-brcmstb: add cqhci suspend/resume to PM ops 2025-03-28 21:59:01 +01:00
sdhci-cadence.c
sdhci-cns3xxx.c
sdhci-cqhci.h
sdhci-dove.c
sdhci-esdhc-imx.c mmc: sdhci-esdhc-imx: improve ESDHC_FLAG_ERR010450 2023-09-23 11:11:02 +02:00
sdhci-esdhc-mcf.c
sdhci-esdhc.h
sdhci-iproc.c
sdhci-milbeaut.c
sdhci-msm.c mmc: sdhci-msm: Correctly set the load for the regulator 2025-02-21 13:49:33 +01:00
sdhci-of-arasan.c
sdhci-of-aspeed-test.c
sdhci-of-aspeed.c mmc: sdhci-of-aspeed: fix module autoloading 2024-09-12 11:10:17 +02:00
sdhci-of-at91.c
sdhci-of-dwcmshc.c
sdhci-of-esdhc.c mmc: sdhci-of-esdhc: fix quirk to ignore command inhibit for data 2023-05-11 23:03:11 +09:00
sdhci-of-hlwd.c
sdhci-of-sparx5.c
sdhci-omap.c mmc: sdhci-omap: Disable MMC_CAP_AGGRESSIVE_PM for eMMC/SD 2025-04-10 14:33:42 +02:00
sdhci-pci-arasan.c
sdhci-pci-core.c mmc: host: Wait for Vdd to settle on card power off 2025-06-04 14:40:04 +02:00
sdhci-pci-dwc-mshc.c
sdhci-pci-gli.c mmc: sdhci-pci-gli: Disable LPM during initialization 2023-12-08 08:51:13 +01:00
sdhci-pci-o2micro.c mmc: Avoid open coding by using mmc_op_tuning() 2024-09-04 13:24:58 +02:00
sdhci-pci.h mmc: sdhci-pci: Add DMI quirk for missing CD GPIO on Vexia Edu Atla 10 tablet 2024-12-14 19:54:36 +01:00
sdhci-pic32.c
sdhci-pltfm.c
sdhci-pltfm.h
sdhci-pxav2.c
sdhci-pxav3.c mmc: sdhci-pxav3: set NEED_RSP_BUSY capability 2025-04-10 14:33:42 +02:00
sdhci-s3c.c
sdhci-spear.c mmc: sdhci-spear: fix deferred probing 2023-06-28 11:12:25 +02:00
sdhci-sprd.c mmc: sdhci-sprd: Fix eMMC init failure after hw reset 2024-01-10 17:10:36 +01:00
sdhci-st.c
sdhci-tegra.c mmc: sdhci-tegra: Remove SDHCI_QUIRK_BROKEN_ADMA_ZEROLEN_DESC quirk 2024-12-27 13:52:55 +01:00
sdhci-xenon-phy.c mmc: sdhci-xenon: fix PHY init clock stability 2024-03-06 14:45:11 +00:00
sdhci-xenon.c
sdhci-xenon.h
sdhci.c mmc: sdhci: Disable SD card clock before changing parameters 2025-06-04 14:40:07 +02:00
sdhci.h mmc: sdhci: Add support for "Tuning Error" interrupts 2024-06-16 13:41:36 +02:00
sdricoh_cs.c
sh_mmcif.c mmc: sh_mmcif: fix deferred probing 2023-06-28 11:12:31 +02:00
sunxi-mmc.c mmc: sunxi-mmc: Fix A100 compatible description 2024-11-22 15:37:32 +01:00
tifm_sd.c
tmio_mmc_core.c mmc: tmio: avoid concurrent runs of mmc_request_done() 2024-04-03 15:19:30 +02:00
tmio_mmc.c
tmio_mmc.h
toshsd.c
toshsd.h
uniphier-sd.c
usdhi6rol0.c mmc: usdhi60rol0: fix deferred probing 2023-06-28 11:12:31 +02:00
ushc.c
via-sdmmc.c
vub300.c mmc: vub300: fix an error code 2023-11-28 17:07:11 +00:00
wbsd.c mmc: wbsd: fix double mmc_free_host() in wbsd_init() 2023-08-23 17:52:39 +02:00
wbsd.h
wmt-sdmmc.c mmc: wmt-sdmmc: remove an incorrect release_mem_region() call in the .remove function 2024-03-26 18:20:39 -04:00