WSL2-Linux-Kernel/drivers/mmc/host
Andy Shevchenko 3ff34c00db mmc: mmc_spi: remove custom DMA mapped buffers
commit 84a6be7db9050dd2601c9870f65eab9a665d2d5d upstream.

There is no need to duplicate what SPI core or individual controller
drivers already do, i.e. mapping the buffers for DMA capable transfers.

Note, that the code, besides its redundancy, was buggy: strictly speaking
there is no guarantee, while it's true for those which can use this code
(see below), that the SPI host controller _is_ the device which does DMA.

Also see the Link tags below.

Additional notes. Currently only two SPI host controller drivers may use
premapped (by the user) DMA buffers:

  - drivers/spi/spi-au1550.c

  - drivers/spi/spi-fsl-spi.c

Both of them have DMA mapping support code. I don't expect that SPI host
controller code is worse than what has been done in mmc_spi. Hence I do
not expect any regressions here. Otherwise, I'm pretty much sure these
regressions have to be fixed in the respective drivers, and not here.

That said, remove all related pieces of DMA mapping code from mmc_spi.

Link: https://lore.kernel.org/linux-mmc/c73b9ba9-1699-2aff-e2fd-b4b4f292a3ca@raspberrypi.org/
Link: https://stackoverflow.com/questions/67620728/mmc-spi-issue-not-able-to-setup-mmc-sd-card-in-linux
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/r/20231207221901.3259962-1-andriy.shevchenko@linux.intel.com
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-02-23 08:54:26 +01:00
..
Kconfig mmc: sdhci_omap: Fix TI SoC dependencies 2024-01-25 14:52:45 -08:00
Makefile
alcor.c mmc: alcor: fix return value check of mmc_add_host() 2022-12-31 13:14:16 +01:00
atmel-mci.c mmc: atmel-mci: fix race between stop command and start of next command 2023-03-22 13:31:30 +01:00
au1xmmc.c mmc: au1xmmc: Fix an error handling path in au1xmmc_probe() 2022-10-26 12:34:55 +02:00
bcm2835.c mmc: bcm2835: fix deferred probing 2023-08-26 14:23:29 +02:00
cavium-octeon.c mmc: cavium-octeon: Add of_node_put() when breaking out of loop 2022-08-17 14:23:56 +02:00
cavium-thunderx.c mmc: cavium-thunderx: Add of_node_put() when breaking out of loop 2022-08-17 14:23:57 +02:00
cavium.c
cavium.h
cb710-mmc.c
cb710-mmc.h
cqhci-core.c mmc: cqhci: Fix task clearing in CQE error recovery 2023-12-08 08:48:01 +01:00
cqhci-crypto.c
cqhci-crypto.h
cqhci.h
davinci_mmc.c mmc: davinci_mmc: Handle error for clk_enable 2022-04-08 14:23:22 +02:00
dw_mmc-bluefield.c
dw_mmc-exynos.c mmc: dw_mmc: exynos: fix the finding clock sample value 2021-10-26 17:28:41 +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: Dont wait for DRTO on Write RSP error 2021-11-18 19:15:52 +01:00
dw_mmc.h
jz4740_mmc.c mmc: jz4740: Work around bug on JZ4760(B) 2023-02-22 12:57:06 +01:00
meson-gx-mmc.c mmc: meson-gx: Remove setting of CMD_CFG_ERROR 2023-11-28 16:56:30 +00:00
meson-mx-sdhc-clkc.c
meson-mx-sdhc-mmc.c mmc: meson-mx-sdhc: Fix initialization frozen issue 2024-01-15 18:51:23 +01:00
meson-mx-sdhc.h
meson-mx-sdio.c mmc: meson-mx-sdio: add IRQ check 2022-01-27 11:03:43 +01:00
mmc_hsq.c mmc: hsq: Fix data stomping during mmc recovery 2022-10-05 10:39:38 +02:00
mmc_hsq.h
mmc_spi.c mmc: mmc_spi: remove custom DMA mapped buffers 2024-02-23 08:54:26 +01:00
mmci.c mmc: mmci: Set PROBE_PREFER_ASYNCHRONOUS 2023-07-23 13:47:32 +02:00
mmci.h
mmci_qcom_dml.c
mmci_stm32_sdmmc.c mmc: mmci: stm32: correctly check all elements of sg list 2022-04-13 20:59:21 +02:00
moxart-mmc.c mmc: moxart: read scr register without changing byte order 2023-08-16 18:21:57 +02:00
mtk-sd.c mmc: mtk-sd: Use readl_poll_timeout_atomic in msdc_reset_hw 2023-10-25 11:59:02 +02:00
mvsdio.c mmc: mvsdio: fix deferred probing 2023-06-28 10:29:47 +02:00
mvsdio.h
mxcmmc.c mmc: mxcmmc: fix return value check of mmc_add_host() 2022-12-31 13:14:16 +01:00
mxs-mmc.c mmc: mxs-mmc: disable regulator on error and in the remove function 2021-11-18 19:16:34 +01:00
of_mmc_spi.c
omap.c mmc: omap: fix deferred probing 2023-06-28 10:29:47 +02:00
omap_hsmmc.c mmc: omap_hsmmc: fix deferred probing 2023-06-28 10:29:47 +02:00
owl-mmc.c mmc: owl: fix deferred probing 2023-06-28 10:29:47 +02:00
pxamci.c mmc: pxamci: fix return value check of mmc_add_host() 2022-12-31 13:14:16 +01:00
pxamci.h
renesas_sdhi.h
renesas_sdhi_core.c mmc: renesas_sdhi: register irqs before registering controller 2023-09-19 12:22:52 +02:00
renesas_sdhi_internal_dmac.c
renesas_sdhi_sys_dmac.c
rtsx_pci_sdmmc.c mmc: rtsx_pci: fix return value check of mmc_add_host() 2022-12-31 13:14:16 +01:00
rtsx_usb_sdmmc.c mmc: rtsx_usb_sdmmc: fix return value check of mmc_add_host() 2022-12-31 13:14:16 +01:00
s3cmci.c
s3cmci.h
sdhci-acpi.c mmc: sdhci-acpi: fix deferred probing 2023-06-28 10:29:47 +02:00
sdhci-bcm-kona.c
sdhci-brcmstb.c mmc: sdhci-brcmstb: Fix SDHCI_RESET_ALL for CQHCI 2022-12-02 17:41:08 +01:00
sdhci-cadence.c
sdhci-cns3xxx.c
sdhci-cqhci.h mmc: cqhci: Provide helper for resetting both SDHCI and CQHCI 2022-11-16 09:58:24 +01:00
sdhci-dove.c
sdhci-esdhc-imx.c mmc: sdhci-esdhc-imx: improve ESDHC_FLAG_ERR010450 2023-09-23 11:09:56 +02:00
sdhci-esdhc-mcf.c
sdhci-esdhc.h
sdhci-iproc.c
sdhci-milbeaut.c
sdhci-msm.c mmc: sdhci-msm: Disable broken 64-bit DMA on MSM8916 2023-06-28 10:29:43 +02:00
sdhci-of-arasan.c mmc: sdhci-of-arasan: Fix SDHCI_RESET_ALL for CQHCI 2022-11-16 09:58:24 +01:00
sdhci-of-aspeed-test.c
sdhci-of-aspeed.c
sdhci-of-at91.c mmc: sdhci-of-at91: fix set_uhs_signaling rewriting of MC1R 2022-08-17 14:23:50 +02:00
sdhci-of-dwcmshc.c mmc: sdhci-of-dwcmshc: Re-enable support for the BlueField-3 SoC 2022-09-05 10:30:09 +02:00
sdhci-of-esdhc.c mmc: sdhci-of-esdhc: fix quirk to ignore command inhibit for data 2023-05-11 23:00:23 +09:00
sdhci-of-hlwd.c
sdhci-of-sparx5.c
sdhci-omap.c mmc: sdhci-omap: Fix context restore 2021-11-18 19:16:31 +01:00
sdhci-pci-arasan.c
sdhci-pci-core.c mmc: sdhci-pci: Fix possible memory leak caused by missing pci_dev_put() 2022-11-26 09:24:48 +01:00
sdhci-pci-data.c
sdhci-pci-dwc-mshc.c
sdhci-pci-gli.c mmc: sdhci-pci-gli: GL9750: Mask the replay timer timeout of AER 2023-11-28 16:56:35 +00:00
sdhci-pci-o2micro.c mmc: sdhci-pci-o2micro: fix card detect fail issue caused by CD# debounce timeout 2022-11-26 09:24:48 +01:00
sdhci-pci.h mmc: sdhci-pci: Add PCI ID for Intel ADL 2022-01-16 09:12:43 +01:00
sdhci-pic32.c
sdhci-pltfm.c
sdhci-pltfm.h
sdhci-pxav2.c
sdhci-pxav3.c
sdhci-s3c.c
sdhci-spear.c
sdhci-sprd.c mmc: sdhci-sprd: Fix eMMC init failure after hw reset 2024-01-15 18:51:24 +01:00
sdhci-st.c
sdhci-tegra.c mmc: sdhci-tegra: Fix SDHCI_RESET_ALL for CQHCI 2022-11-16 09:58:24 +01:00
sdhci-xenon-phy.c
sdhci-xenon.c Revert "mmc: sdhci-xenon: fix annoying 1.8V regulator warning" 2022-04-13 20:59:21 +02:00
sdhci-xenon.h
sdhci.c mmc: sdhci: fix DMA configure compatibility issue when 64bit DMA mode is used. 2023-07-23 13:47:32 +02:00
sdhci.h mmc: sdhci: Fix voltage switch delay 2022-12-08 11:28:43 +01:00
sdhci_am654.c mmc: sdhci_am654: fix start loop index for TAP value parsing 2023-11-28 16:56:28 +00:00
sdhci_f_sdh30.c mmc: f-sdh30: fix order of function calls in sdhci_f_sdh30_remove 2023-08-26 14:23:38 +02:00
sdhci_f_sdh30.h
sdricoh_cs.c
sh_mmcif.c mmc: sh_mmcif: fix deferred probing 2023-06-28 10:29:47 +02:00
sunxi-mmc.c mmc: sunxi: fix deferred probing 2023-08-26 14:23:29 +02:00
tifm_sd.c
tmio_mmc.c mmc: tmio: avoid glitches when resetting 2022-08-25 11:40:36 +02:00
tmio_mmc.h mmc: tmio: avoid glitches when resetting 2022-08-25 11:40:36 +02:00
tmio_mmc_core.c mmc: tmio: avoid glitches when resetting 2022-08-25 11:40:36 +02:00
toshsd.c mmc: toshsd: fix return value check of mmc_add_host() 2022-12-31 13:14:17 +01:00
toshsd.h
uniphier-sd.c
usdhi6rol0.c mmc: usdhi60rol0: fix deferred probing 2023-06-28 10:29:47 +02:00
ushc.c
via-sdmmc.c mmc: via-sdmmc: fix return value check of mmc_add_host() 2022-12-31 13:14:17 +01:00
vub300.c mmc: vub300: fix an error code 2023-11-28 16:56:28 +00:00
wbsd.c mmc: wbsd: fix double mmc_free_host() in wbsd_init() 2023-08-26 14:23:37 +02:00
wbsd.h
wmt-sdmmc.c mmc: wmt-sdmmc: fix return value check of mmc_add_host() 2022-12-31 13:14:17 +01:00