u-boot/drivers/mmc
Masahiro Yamada 4155ad9aac mmc: sdhci: fix missing cache invalidation after reading by DMA
This driver currently performs cache operation before the DMA start,
but does nothing after the DMA completion.

When reading data by DMA, the cache invalidation is needed also after
finishing the DMA transfer. Otherwise, the CPU might read data from
the cache instead of from the main memory when speculative memory read
or memory prefetch occurs.

Instead of calling the cache operation directly, this commit adds
dma_unmap_single(), which performs cache invalidation internally,
but drivers do not need which operation is being run.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
2020-02-20 15:09:57 +08:00
..
am654_sdhci.c dm: core: Create a new header file for 'compat' features 2020-02-05 19:33:46 -07:00
arm_pl180_mmci.c dm: core: Create a new header file for 'compat' features 2020-02-05 19:33:46 -07:00
arm_pl180_mmci.h mmc: arm_pl180_mmci: Sync compatible with kernel 2019-04-23 15:31:30 +02:00
aspeed_sdhci.c dm: core: Require users of devres to include the header 2020-02-05 19:33:46 -07:00
atmel_sdhci.c mmc: atmel_sdhci: Add sam9x60-sdhci compatibility string 2019-10-08 09:16:11 +03:00
bcm2835_sdhci.c common: Move get_ticks() function out of common.h 2019-12-02 18:23:13 -05:00
bcm2835_sdhost.c dm: core: Create a new header file for 'compat' features 2020-02-05 19:33:46 -07:00
bcmstb_sdhci.c mmc: bcm: fix uninitialized pointer deref on probe 2019-08-09 13:45:25 +08:00
davinci_mmc.c Revert "mmc: davinci: drop struct davinci_mmc_plat" 2020-01-04 09:33:33 -05:00
dw_mmc.c common: Move ARM cache operations out of common.h 2019-12-02 18:24:58 -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_imx.c dm: core: Create a new header file for 'compat' features 2020-02-05 19:33:46 -07:00
fsl_esdhc_spl.c common: Move hang() to the same header as panic() 2020-01-17 17:53:40 -05:00
fsl_esdhc.c mmc: fsl_esdhc: actually enable cache snooping on mpc830x 2020-02-19 21:21:42 +08: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 mmc: Add support for HI3660 SoC reusing hi6220_dw_mmc driver 2019-08-11 16:43:41 -04:00
iproc_sdhci.c drivers: mmc: Add sdhci driver for Broadcom iProc platform 2019-10-10 10:59:48 +08:00
jz_mmc.c dm: core: Create a new header file for 'compat' features 2020-02-05 19:33:46 -07:00
Kconfig mmc: config help typo fix 2020-01-16 13:21:01 +08: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 drivers: mmc: Add sdhci driver for Broadcom iProc platform 2019-10-10 10:59:48 +08:00
meson_gx_mmc.c common: Move ARM cache operations out of common.h 2019-12-02 18:24:58 -05: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: Register only the first MMC device on MMC_TINY 2019-07-13 11:11:26 -04:00
mmc_private.h mmc: add mmc_poll_for_busy() and change the purpose of mmc_send_status() 2019-07-15 10:16:49 +08:00
mmc_spi.c dm: mmc_spi: Fix NULL pointer dereference in mmc_spi_bind() 2019-09-05 15:29:29 +08:00
mmc_write.c mmc: Rename timeout parameters for clarification 2019-09-05 15:27:31 +08:00
mmc-uclass.c dm: core: Create a new header file for 'compat' features 2020-02-05 19:33:46 -07:00
mmc.c mmc: remove unneeded forward declarations 2020-02-17 14:55:04 +08:00
msm_sdhci.c dm: core: Create a new header file for 'compat' features 2020-02-05 19:33:46 -07:00
mtk-sd.c dm: core: Create a new header file for 'compat' features 2020-02-05 19:33:46 -07:00
mv_sdhci.c mmc: mv_sdhci: fix uninitialized pointer deref on probe 2019-07-31 15:31:36 +08: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 common: Move get_ticks() function out of common.h 2019-12-02 18:23:13 -05:00
mxsmmc.c mmc: Replace printf with debug call for timeouts in the i.MX28 mxs driver 2019-10-08 16:36:36 +02:00
omap_hsmmc.c dm: core: Require users of devres to include the header 2020-02-05 19:33:46 -07:00
pci_mmc.c mmc: pci: fix uninitialized pointer deref on probe 2019-08-09 13:45:25 +08: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 dm: core: Create a new header file for 'compat' features 2020-02-05 19:33:46 -07:00
rockchip_dw_mmc.c rockchip: dwmmc: add handling for u-boot, spl-fifo-mode 2019-11-23 23:41:44 +08:00
rockchip_sdhci.c dm: core: Require users of devres to include the header 2020-02-05 19:33:46 -07:00
rpmb.c drivers: mmc: rpmb: Use R1 response 2020-02-17 14:55:04 +08:00
s5p_sdhci.c mmc: s5p_sdhci: Read generic MMC properties from DT 2020-01-23 11:43:10 +09:00
sandbox_mmc.c sandbox: mmc: Fix up MMC emulator for valgrind 2019-10-08 13:57:39 +08:00
sdhci-cadence.c mmc: sdhci-cadence: send tune request twice to work around errata 2020-02-17 14:55:04 +08:00
sdhci.c mmc: sdhci: fix missing cache invalidation after reading by DMA 2020-02-20 15:09:57 +08:00
sh_mmcif.c dm: core: Create a new header file for 'compat' features 2020-02-05 19:33:46 -07: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 dm: core: Create a new header file for 'compat' features 2020-02-05 19:33:46 -07:00
snps_dw_mmc.c dm: core: Create a new header file for 'compat' features 2020-02-05 19:33:46 -07:00
socfpga_dw_mmc.c dm: core: Create a new header file for 'compat' features 2020-02-05 19:33:46 -07:00
sti_sdhci.c mmc: sti_sdhci: Fix sdhci_setup_cfg() call. 2019-08-27 09:36:56 +02:00
stm32_sdmmc2.c dm: core: Create a new header file for 'compat' features 2020-02-05 19:33:46 -07:00
sunxi_mmc.c mmc: sunxi: Honour non-removable property in DT 2019-01-29 23:49:41 +05:30
tangier_sdhci.c mmc: tangier_sdhci: fix uninitialized pointer deref on probe 2019-08-09 13:45:25 +08:00
tegra_mmc.c dm: core: Require users of devres to include the header 2020-02-05 19:33:46 -07:00
tmio-common.c dma-mapping: move dma_map_(un)single() to <linux/dma-mapping.h> 2020-02-19 21:27:30 +08:00
tmio-common.h mmc: tmio: sdhi: Add calibration tables 2019-11-27 16:56:46 +08:00
uniphier-sd.c dm: core: Create a new header file for 'compat' features 2020-02-05 19:33:46 -07:00
xenon_sdhci.c mmc: sdhci: Make set_ios_post() return int 2019-07-17 11:12:08 -04:00
zynq_sdhci.c dm: core: Create a new header file for 'compat' features 2020-02-05 19:33:46 -07:00