u-boot/drivers/mmc
John Keeping ea0f766253 mmc: rockchip_dw_mmc: fix DDR52 8-bit mode handling
The RK3288 TRM states that, for 8-bit DDR modes:

	The CLKDIV register should always be programmed with a value
	higher than zero (0); that is, a clock divider should always be
	used for 8-bit DDR mode.

In Linux, the driver applies this logic for all SoCs using the driver
and does not distinguish RK3288, so presumably this requirement is the
same for all other Rockchip SoCs using this IP.

Add the necessary code to double the clock frequency when 8-bit DDR is
selected.  The dw_mmc core already handles setting CLKDIV correctly
given the input clock and desired bus clock.

Signed-off-by: John Keeping <john@metanate.com>
Reviewed-by: Jaehoon Chung <jh80.chung@samsung.com>
2023-02-28 18:07:26 +08:00
..
am654_sdhci.c drivers: mmc: am654_sdhci: Add new compatible for AM62 SoC 2022-06-10 13:37:32 -04:00
arm_pl180_mmci.c mmc: arm_pl180_mmci: Enable HWFC for specific versions of MCI 2021-10-29 18:22:32 +09:00
arm_pl180_mmci.h mmc: arm_pl180_mmci: Enable HWFC for specific versions of MCI 2021-10-29 18:22:32 +09:00
aspeed_sdhci.c mmc/aspeed: Enable controller clocks 2022-07-06 14:31:29 -04:00
atmel_sdhci.c mmc: atmel_sdhci: re-enable sdhci after SD Card re-insertion 2022-09-19 09:50:17 +03:00
bcm2835_sdhci.c dm: treewide: Rename dev_get_platdata() to dev_get_plat() 2020-12-13 16:51:09 -07:00
bcm2835_sdhost.c dm: treewide: Rename dev_get_platdata() to dev_get_plat() 2020-12-13 16:51:09 -07:00
bcmstb_sdhci.c dm: treewide: Rename dev_get_platdata() to dev_get_plat() 2020-12-13 16:51:09 -07:00
ca_dw_mmc.c common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
davinci_mmc.c dm: treewide: Rename ofdata_to_platdata() to of_to_plat() 2020-12-13 16:51:09 -07:00
dw_mmc.c mmc: dwmmc: only clear handled interrupts 2022-10-24 18:02:41 +09:00
exynos_dw_mmc.c common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
f_sdh30.c mmc: f_sdh30: Add support for F_SDH30_E51 2022-10-24 18:01:32 +09:00
fsl_esdhc.c global: Migrate CONFIG_SYS_FSL* symbols to the CFG_SYS namespace 2022-11-10 10:08:55 -05:00
fsl_esdhc_imx.c Convert CONFIG_FSL_ESDHC_PIN_MUX to Kconfig 2022-12-22 10:31:48 -05:00
fsl_esdhc_spl.c global: Move remaining CONFIG_SYS_* to CFG_SYS_* 2022-12-05 16:06:08 -05:00
ftsdc010_mci.c mmc: ftsdc010: make command timeout 250 ms as in the comment 2022-10-24 18:01:07 +09: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 global: Move remaining CONFIG_SYS_* to CFG_SYS_* 2022-12-05 16:06:08 -05:00
hi6220_dw_mmc.c common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
iproc_sdhci.c drivers: mmc: iproc_sdhci: enable HS200 mode 2021-03-02 13:53:37 +01:00
jz_mmc.c common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
Kconfig Convert CONFIG_FSL_ESDHC_PIN_MUX to Kconfig 2022-12-22 10:31:48 -05:00
kona_sdhci.c common: Drop linux/delay.h from common header 2020-05-18 21:19:23 -04:00
Makefile Correct SPL use of SUPPORT_EMMC_RPMB 2023-02-10 07:41:40 -05:00
meson_gx_mmc.c mmc: meson_gx_mmc: use mmc_pwrseq instead of meson_mmc_pwrseq 2021-02-19 15:10:46 +08:00
meson_gx_mmc.h dm: treewide: Rename ..._platdata variables to just ..._plat 2020-12-13 16:51:09 -07:00
mmc-pwrseq.c mmc: pwrseq: add mmc-pwrseq file to provide a generic interface 2021-02-19 15:10:41 +08:00
mmc-uclass.c dm: mmc: Use bootdev_setup_sibling_blk() 2023-01-23 18:11:39 -05:00
mmc.c Correct SPL use of MMC_QUIRKS 2023-02-09 12:50:50 -05:00
mmc_boot.c common: Drop log.h from common header 2020-05-18 21:19:18 -04:00
mmc_bootdev.c bootstd: Add a new pre-scan priority for bootdevs 2023-01-23 18:11:41 -05:00
mmc_legacy.c blk: Rename if_type to uclass_id 2022-09-25 08:30:05 -06:00
mmc_private.h doc: replace @return by Return: 2022-01-19 18:11:34 +01:00
mmc_spi.c doc: replace @return by Return: 2022-01-19 18:11:34 +01:00
mmc_write.c blk: Switch over to using uclass IDs 2022-09-16 11:05:16 -04:00
msm_sdhci.c mmc: msm_sdhci: Add SDCC version 5.0.0 support 2022-07-25 13:02:04 -04:00
mtk-sd.c mmc: mediatek: add support for MediaTek MT7891/MT7986 SoCs 2022-09-23 15:09:15 -04:00
mv_sdhci.c arm: Remove aspenite board 2021-10-01 12:10:09 -04:00
mvebu_mmc.c mmc: mvebu: convert to driver model 2021-04-08 08:50:52 +02:00
mxcmmc.c treewide: convert bd_t to struct bd_info by coccinelle 2020-07-17 09:30:13 -04:00
mxsmmc.c treewide: Simply conditions with the new OF_REAL 2021-09-25 09:46:15 -06:00
nexell_dw_mmc.c mmc: dwmmc: Change designware MMC 'clksel' callback function to return status 2021-01-15 17:48:36 +08:00
npcm_sdhci.c mmc: nuvoton: Add NPCM7xx mmc driver 2022-07-27 15:19:09 +09:00
octeontx_hsmmc.c cyclic: Use schedule() instead of WATCHDOG_RESET() 2022-09-18 10:26:33 +02:00
octeontx_hsmmc.h mmc: Add MMC controller driver for OcteonTX / TX2 2020-08-25 08:01:16 +02:00
omap_hsmmc.c dm: treewide: Use uclass_first_device_err when accessing one device 2022-10-17 21:17:12 -06:00
owl_mmc.c mmc: actions: add MMC driver for Actions OWL S700/S900 2022-01-18 12:48:17 -05:00
pci_mmc.c mmc: pci_mmc.c should build with ACPIGEN=n 2022-07-27 15:19:42 +09:00
pic32_sdhci.c common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
piton_mmc.c mmc: openpiton: add piton_mmc driver 2021-07-06 13:50:56 +08:00
renesas-sdhi.c clk: renesas: Switch to new SD clock handling 2023-02-02 01:49:20 +01:00
rockchip_dw_mmc.c mmc: rockchip_dw_mmc: fix DDR52 8-bit mode handling 2023-02-28 18:07:26 +08:00
rockchip_sdhci.c mmc: rockchip_sdhci: Correct error checking 2022-04-18 11:25:12 +08:00
rpmb.c mmc: rpmb: Fix driver routing memory alignment with tmp buffer 2021-07-30 17:12:15 +08:00
s5p_sdhci.c common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
sandbox_mmc.c sandbox: mmc: Start off with a zeroed file 2023-01-23 18:11:39 -05:00
sdhci-adma.c doc: replace @return by Return: 2022-01-19 18:11:34 +01:00
sdhci-cadence.c common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
sdhci.c mmc: sdhci: Enable HS400 support if available in caps 2023-01-31 22:02:27 +09:00
sh_mmcif.c cyclic: Use schedule() instead of WATCHDOG_RESET() 2022-09-18 10:26:33 +02: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 global: Move remaining CONFIG_SYS_* to CFG_SYS_* 2022-12-05 16:06:08 -05:00
snps_dw_mmc.c dm: treewide: Rename ofdata_to_platdata() to of_to_plat() 2020-12-13 16:51:09 -07:00
socfpga_dw_mmc.c mmc: dwmmc: socfpga: Get "fifo-mode" property from DT 2021-06-22 12:02:32 +08:00
sti_sdhci.c common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
stm32_sdmmc2.c mmc: stm32_sdmmc2: manage vqmmc 2022-10-24 18:02:15 +09:00
sunxi_mmc.c sunxi: mmc: group non-DM specific functions 2023-01-21 01:32:23 +00:00
tangier_sdhci.c dm: treewide: Rename dev_get_platdata() to dev_get_plat() 2020-12-13 16:51:09 -07:00
tegra_mmc.c dm: treewide: Rename dev_get_platdata() to dev_get_plat() 2020-12-13 16:51:09 -07:00
tmio-common.c common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
tmio-common.h Correct SPL use of RENESAS_SDHI 2023-02-10 07:41:40 -05:00
uniphier-sd.c dm: treewide: Rename 'platdata' variables to just 'plat' 2020-12-13 16:51:08 -07:00
xenon_sdhci.c mmc: xenon_sdhci: remove wait_dat0 SDHCI OP 2022-03-16 16:47:37 +09:00
zynq_sdhci.c mmc: zynq_sdhci: Add support and quirk for HS400 2023-01-31 22:02:27 +09:00