linux/drivers/mmc/host
Wolfram Sang c330601c9c mmc: renesas_sdhi: take DMA end interrupts into account
So far, we have been relying on access_end interrupts only to mark DMA
transfers as done implying that DMA end interrupts have occurred by then
anyhow. On some SoCs under some conditions, this turned out to be not
enough. So, we enable DMA interrupts as well and make sure that both
events, DMA irq and access_end irq, have happened before finishing the
DMA transfer.

Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
Tested-by: Duy Nguyen <duy.nguyen.rh@renesas.com>
Tested-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Link: https://lore.kernel.org/r/20221006190452.5316-6-wsa+renesas@sang-engineering.com
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
2022-12-07 13:22:36 +01:00
..
alcor.c mmc: alcor: fix return value check of mmc_add_host() 2022-12-07 13:22:34 +01:00
atmel-mci.c mmc: atmel-mci: fix return value check of mmc_add_host() 2022-12-07 13:22:35 +01:00
au1xmmc.c mmc: au1xmmc: Replace kmap_atomic() with kmap_local_page() 2022-12-07 13:22:33 +01:00
bcm2835.c mmc: bcm2835: Replace kmap_atomic() with kmap_local_page() 2022-12-07 13:22:32 +01:00
cavium-octeon.c mmc: cavium-octeon: Add of_node_put() when breaking out of loop 2022-07-21 18:02:55 +02:00
cavium-thunderx.c mmc: cavium-thunderx: Add of_node_put() when breaking out of loop 2022-07-21 18:03:08 +02:00
cavium.c
cavium.h
cb710-mmc.c
cb710-mmc.h
cqhci-core.c mmc: cqhci: Capture eMMC and SD card errors 2022-07-12 12:25:35 +02:00
cqhci-crypto.c blk-crypto: rename blk_keyslot_manager to blk_crypto_profile 2021-10-21 10:49:32 -06:00
cqhci-crypto.h mmc: core: Store pointer to bio_crypt_ctx in mmc_request 2021-08-24 10:15:32 +02:00
cqhci.h
davinci_mmc.c mmc: davinci_mmc: Handle error for clk_enable 2022-03-15 10:29:53 +01:00
dw_mmc-bluefield.c
dw_mmc-exynos.c mmc: dw_mmc: exynos: Obviously always return success in remove callback 2022-07-12 12:25:37 +02:00
dw_mmc-exynos.h
dw_mmc-hi3798cv200.c mmc: dw_mmc: hi3789cv200: Obviously always return success in remove callback 2022-07-12 12:25:37 +02:00
dw_mmc-k3.c
dw_mmc-pci.c
dw_mmc-pltfm.c mmc: dw_mmc-pltfm: Remove unused <linux/clk.h> 2021-06-14 13:57:42 +02:00
dw_mmc-pltfm.h
dw_mmc-rockchip.c mmc: dw_mmc: rockchip: Obviously always return success in remove callback 2022-07-12 12:25:38 +02:00
dw_mmc.c mmc: host: Fix repeated words in comments 2022-12-07 13:22:33 +01:00
dw_mmc.h mmc: dw_mmc: Support setting f_min from host drivers 2022-03-07 12:56:38 +01:00
jz4740_mmc.c mmc: jz4740_mmc: Fix error check for dma_map_sg 2022-09-14 11:53:47 +02:00
Kconfig mmc: sdhci-brcmstb: Allow building with COMPILE_TEST 2022-12-07 13:22:33 +01:00
litex_mmc.c mmc: litex_mmc: ensure host->irq == 0 if polling 2022-12-07 13:22:35 +01:00
Makefile mmc: Add driver for LiteX's LiteSDCard interface 2022-02-28 13:06:21 +01:00
meson-gx-mmc.c mmc: meson-gx: fix return value check of mmc_add_host() 2022-12-07 13:22:35 +01:00
meson-mx-sdhc-clkc.c mmc: meson-mx-sdhc: Drop unused MESON_SDHC_NUM_BUILTIN_CLKS macro 2021-12-20 11:19:01 +01:00
meson-mx-sdhc-mmc.c mmc: meson-mx-sdhc: Fix error check for dma_map_sg 2022-09-14 11:53:47 +02:00
meson-mx-sdhc.h
meson-mx-sdio.c mmc: meson-mx-sdio: add IRQ check 2021-12-21 13:22:34 +01:00
mmc_hsq.c mmc: hsq: Fix data stomping during mmc recovery 2022-09-27 12:38:29 +02:00
mmc_hsq.h
mmc_spi.c spi: make remove callback a void function 2022-02-09 13:00:45 +00:00
mmci.c mmc: mmci: fix return value check of mmc_add_host() 2022-12-07 13:22:35 +01:00
mmci.h
mmci_qcom_dml.c
mmci_stm32_sdmmc.c mmc: mmci: stm32: use a buffer for unaligned DMA requests 2022-04-26 14:05:18 +02:00
moxart-mmc.c mmc: moxart: fix return value check of mmc_add_host() 2022-12-07 13:22:34 +01:00
mtk-sd.c mmc: mtk-sd: fix two spelling mistakes in comment 2022-12-07 13:22:36 +01:00
mvsdio.c
mvsdio.h
mxcmmc.c mmc: mxcmmc: fix return value check of mmc_add_host() 2022-12-07 13:22:34 +01:00
mxs-mmc.c mmc: mxs-mmc: disable regulator on error and in the remove function 2021-10-19 13:02:58 +02:00
of_mmc_spi.c mmc: mmc_spi: parse speed mode options 2022-04-26 14:05:19 +02:00
omap.c mmc: omap: Make it CCF clk API compatible 2022-04-26 14:05:19 +02:00
omap_hsmmc.c mmc: omap_hsmmc: fix return value check of mmc_add_host() 2022-12-07 13:22:35 +01:00
owl-mmc.c
pxamci.c mmc: pxamci: fix return value check of mmc_add_host() 2022-12-07 13:22:34 +01:00
pxamci.h
renesas_sdhi.h mmc: renesas_sdhi: take DMA end interrupts into account 2022-12-07 13:22:36 +01:00
renesas_sdhi_core.c mmc: renesas_sdhi: improve naming of DMA struct 2022-12-07 13:22:36 +01:00
renesas_sdhi_internal_dmac.c mmc: renesas_sdhi: take DMA end interrupts into account 2022-12-07 13:22:36 +01:00
renesas_sdhi_sys_dmac.c mmc: tmio_mmc_core: Remove local_irq_{save,restore}() around k[un]map_atomic() 2022-12-07 13:22:33 +01:00
rtsx_pci_sdmmc.c mmc: rtsx_pci: fix return value check of mmc_add_host() 2022-12-07 13:22:34 +01:00
rtsx_usb_sdmmc.c mmc: rtsx_usb_sdmmc: fix return value check of mmc_add_host() 2022-12-07 13:22:34 +01:00
s3cmci.c mmc: s3cmci: move to use request_irq by IRQF_NO_AUTOEN flag 2021-06-14 13:57:34 +02:00
s3cmci.h
sdhci-acpi.c mmc: Remove duplicate words in comments 2022-12-07 13:22:34 +01:00
sdhci-bcm-kona.c mmc: Remove duplicate words in comments 2022-12-07 13:22:34 +01:00
sdhci-brcmstb.c mmc: sdhci-brcmstb: Fix SDHCI_RESET_ALL for CQHCI 2022-11-07 13:33:09 +01:00
sdhci-cadence.c
sdhci-cns3xxx.c
sdhci-cqhci.h mmc: cqhci: Provide helper for resetting both SDHCI and CQHCI 2022-11-07 13:28:47 +01:00
sdhci-dove.c
sdhci-esdhc-imx.c mmc: sdhci-esdhc-imx: reset the tuning logic before execute tuning 2022-12-07 13:22:33 +01:00
sdhci-esdhc-mcf.c
sdhci-esdhc.h
sdhci-iproc.c treewide: Replace GPLv2 boilerplate/reference with SPDX - gpl-2.0_30.RULE (part 2) 2022-06-10 14:51:35 +02:00
sdhci-milbeaut.c
sdhci-msm.c mmc: sdhci-*: Convert drivers to new sdhci_and_cqhci_reset() 2022-12-07 13:22:33 +01:00
sdhci-of-arasan.c mmc: sdhci-of-arasan: Add support for dynamic configuration 2022-12-07 13:22:33 +01:00
sdhci-of-aspeed-test.c mmc: sdhci-of-aspeed: test: Use kunit_test_suite() macro 2022-07-11 17:13:32 -06:00
sdhci-of-aspeed.c mmc: sdhci-of-aspeed: test: Use kunit_test_suite() macro 2022-07-11 17:13:32 -06:00
sdhci-of-at91.c mmc: sdhci-of-at91: fix set_uhs_signaling rewriting of MC1R 2022-07-12 12:42:37 +02:00
sdhci-of-dwcmshc.c mmc: sdhci-of-dwcmshc: Re-enable support for the BlueField-3 SoC 2022-08-15 19:31:04 +02:00
sdhci-of-esdhc.c mmc: sdhci-of-esdhc: Fixup use of of_find_compatible_node() 2022-07-12 12:25:39 +02:00
sdhci-of-hlwd.c
sdhci-of-sparx5.c
sdhci-omap.c mmc: Remove duplicate words in comments 2022-12-07 13:22:34 +01:00
sdhci-pci-arasan.c
sdhci-pci-core.c mmc: sdhci-pci: Set PROBE_PREFER_ASYNCHRONOUS 2022-12-07 13:22:34 +01:00
sdhci-pci-dwc-mshc.c
sdhci-pci-gli.c mmc: sdhci-*: Convert drivers to new sdhci_and_cqhci_reset() 2022-12-07 13:22:33 +01:00
sdhci-pci-o2micro.c mmc: sdhci-pci-o2micro: fix card detect fail issue caused by CD# debounce timeout 2022-11-16 13:58:55 +01:00
sdhci-pci.h mmc: sdhci-pci: Add PCI ID for Intel ADL 2021-12-14 21:35:25 +01:00
sdhci-pic32.c
sdhci-pltfm.c
sdhci-pltfm.h
sdhci-pxav2.c
sdhci-pxav3.c
sdhci-s3c.c mmc: sdhci-s3c: drop unneeded MODULE_ALIAS 2021-10-12 10:21:18 +02:00
sdhci-spear.c
sdhci-sprd.c mmc: sdhci-sprd: Fix no reset data and command after voltage switch 2022-12-01 11:28:39 +01:00
sdhci-st.c mmc: sdhci-st: Obviously always return success in remove callback 2022-07-12 12:25:38 +02:00
sdhci-tegra.c mmc: sdhci-tegra: Fix SDHCI_RESET_ALL for CQHCI 2022-11-07 13:33:38 +01:00
sdhci-xenon-phy.c
sdhci-xenon.c Revert "mmc: sdhci-xenon: fix annoying 1.8V regulator warning" 2022-04-04 12:17:46 +02:00
sdhci-xenon.h
sdhci.c mmc: sdhci: Replace kmap_atomic() with kmap_local_page() 2022-12-07 13:22:32 +01:00
sdhci.h mmc: Remove duplicate words in comments 2022-12-07 13:22:34 +01:00
sdhci_am654.c mmc: sdhci_am654: Use dev_err_probe() for mmc_of_parse() return code 2022-12-07 13:22:34 +01:00
sdhci_f_sdh30.c mmc: f-sdh30: Add quirks for broken timeout clock capability 2022-12-07 13:22:36 +01:00
sdhci_f_sdh30.h mmc: f-sdh30: Add support for non-removable media 2022-12-07 13:22:36 +01:00
sdricoh_cs.c
sh_mmcif.c mmc: sh_mmcif: move platform_data header to proper location 2022-04-26 14:05:21 +02:00
sunxi-mmc.c Merge branch 'fixes' into next 2022-05-04 11:52:07 +02:00
tifm_sd.c mmc: tifm_sd: Replace kmap_atomic() with kmap_local_page() 2022-12-07 13:22:32 +01:00
tmio_mmc.c mmc: tmio: avoid glitches when resetting 2022-07-12 12:31:32 +02:00
tmio_mmc.h mmc: tmio: add callback for dma irq 2022-12-07 13:22:36 +01:00
tmio_mmc_core.c mmc: tmio: add callback for dma irq 2022-12-07 13:22:36 +01:00
toshsd.c mmc: toshsd: fix return value check of mmc_add_host() 2022-12-07 13:22:34 +01:00
toshsd.h
uniphier-sd.c mmc: improve API to make clear hw_reset callback is for cards 2022-04-26 14:05:20 +02:00
usdhi6rol0.c mmc: usdhi6rol0: Implement card_busy function 2021-08-24 15:16:08 +02:00
ushc.c
via-sdmmc.c mmc: via-sdmmc: fix return value check of mmc_add_host() 2022-12-07 13:22:35 +01:00
vub300.c mmc: vub300: fix return value check of mmc_add_host() 2022-12-07 13:22:35 +01:00
wbsd.c mmc: wbsd: fix return value check of mmc_add_host() 2022-12-07 13:22:35 +01:00
wbsd.h
wmt-sdmmc.c mmc: wmt-sdmmc: fix return value check of mmc_add_host() 2022-12-07 13:22:35 +01:00