linux_dsm_epyc7002/drivers/mmc/host
Masahiro Yamada d3dd5db0c1 mmc: tmio: simplify the DMA mode test
host->chan_{rx,tx} represents the DMA capability of the platform.
Even if DMA is supported, there are cases where we want to use PIO,
for example, data length is short enough as commit 5f52c35529
("mmc: tmio: use PIO for short transfers") mentioned.

Regarding the hardware control flow, we are interested in whether DMA
is currently enabled or not, instead of whether the platform has the
DMA capability.

Hence, the several conditionals in tmio_mmc_core.c end up with
checking host->chan_{rx,tx} and !host->force_pio. This is not nice.

Let's flip the flag host->force_pio into host->dma_on.

host->dma_on represents whether the DMA is currently enabled or not.
This flag is set false in the beginning of each command, then should
be set true by tmio_mmc_start_dma() when the DMA is turned on.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
Tested-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
2018-10-15 14:52:50 +02:00
..
android-goldfish.c mmc: android-goldfish: fix bad logic of sg_copy_{from,to}_buffer conversion 2018-08-21 16:06:17 +02:00
atmel-mci.c mmc: atmel-mci: fix bad logic of sg_copy_{from,to}_buffer conversion 2018-08-21 16:06:17 +02:00
au1xmmc.c mmc: au1xmmc: handle highmem pages 2018-05-29 12:24:26 +02:00
bcm2835.c
cavium-octeon.c
cavium-thunderx.c
cavium.c
cavium.h
cb710-mmc.c
cb710-mmc.h
cqhci.c
cqhci.h
davinci_mmc.c mmc: host: simplify getting .drvdata 2018-05-02 15:08:48 +02:00
dw_mmc-bluefield.c mmc: dw_mmc-bluefield: Add driver extension 2018-05-21 10:44:40 +02:00
dw_mmc-exynos.c mmc: dw_mmc-exynos: Add tuning for sdr and ddr timing for USH-I mode 2018-10-08 12:02:22 +02:00
dw_mmc-exynos.h
dw_mmc-hi3798cv200.c mmc: dw_mmc: hi3798cv200: add MMC_CAP_CMD23 cap 2018-10-08 11:40:43 +02:00
dw_mmc-k3.c mmc: dw_mmc: Fix out-of-bounds access for slot's caps 2018-02-27 15:12:25 +01:00
dw_mmc-pci.c mmc: dw_mmc: remove the deprecated "num-slots" 2018-03-15 09:27:11 +01:00
dw_mmc-pltfm.c
dw_mmc-pltfm.h
dw_mmc-rockchip.c mmc: dw_mmc: fix misleading comment in dw_mci_rk3288_set_ios 2018-05-02 15:08:38 +02:00
dw_mmc-zx.c mmc: dw_mmc: Fix out-of-bounds access for slot's caps 2018-02-27 15:12:25 +01:00
dw_mmc-zx.h
dw_mmc.c mmc: dw_mmc: fix card threshold control configuration 2018-07-03 10:57:16 +02:00
dw_mmc.h mmc: dw_mmc: add support for hi3798cv200 specific extensions of dw-mshc 2018-03-15 14:43:22 +01:00
jz4740_mmc.c mmc: jz4740: Add support for the JZ4725B 2018-10-08 11:40:43 +02:00
Kconfig mmc: renesas_sdhi: Add r8a77470 SDHI1 support 2018-10-15 14:39:17 +02:00
Makefile mmc: mmci: add stm32 sdmmc variant 2018-10-09 09:16:53 +02:00
meson-gx-mmc.c mmc: meson-gx: add device reset 2018-05-21 10:50:45 +02:00
meson-mx-sdio.c mmc: meson-mx-sdio: mark expected switch fall-through 2018-10-08 11:40:43 +02:00
mmc_spi.c
mmci_qcom_dml.c mmc: mmci: add dma_error callback 2018-10-09 09:13:03 +02:00
mmci_qcom_dml.h mmc: mmci: Add and implement a ->dma_setup() callback for qcom dml 2018-08-01 12:01:13 +02:00
mmci_stm32_sdmmc.c mmc: mmci: add stm32 sdmmc variant 2018-10-09 09:16:53 +02:00
mmci.c mmc: mmci: add stm32 sdmmc variant 2018-10-09 09:16:53 +02:00
mmci.h mmc: mmci: add stm32 sdmmc variant 2018-10-09 09:16:53 +02:00
moxart-mmc.c
mtk-sd.c mmc: mediatek: add bus_clk control 2018-10-08 12:53:24 +02:00
mvsdio.c mmc: mvsdio: Enable MMC_CAP_ERASE 2018-05-31 15:02:16 +02:00
mvsdio.h
mxcmmc.c mmc: mxcmmc: replace spin_lock_irqsave with spin_lock in ISR 2018-10-08 11:40:43 +02:00
mxs-mmc.c
of_mmc_spi.c
omap_hsmmc.c mmc: omap_hsmmc: Delete platform data GPIO CD and WP 2018-10-08 11:40:43 +02:00
omap.c
pxamci.c mmc: pxamci: provide a short-hand for &pdev->dev 2018-07-16 11:21:45 +02:00
pxamci.h
renesas_sdhi_core.c mmc: renesas_sdhi: skip SCC error check when retuning 2018-10-08 11:40:43 +02:00
renesas_sdhi_internal_dmac.c mmc: tmio: simplify the DMA mode test 2018-10-15 14:52:50 +02:00
renesas_sdhi_sys_dmac.c mmc: tmio: simplify the DMA mode test 2018-10-15 14:52:50 +02:00
renesas_sdhi.h mmc: use SPDX identifier for Renesas drivers 2018-10-08 11:40:43 +02:00
rtsx_pci_sdmmc.c
rtsx_usb_sdmmc.c mmc: rtsx_usb: Enable MMC_CAP_ERASE to allow erase/discard/trim requests 2018-05-08 09:43:27 +02:00
s3cmci.c
s3cmci.h
sdhci_f_sdh30.c
sdhci-acpi.c sdhci: acpi: add qcom sdhci host reset quirk fix 2018-10-08 11:40:43 +02:00
sdhci-bcm-kona.c mmc: sdhci-*: Don't emit error msg if sdhci_add_host() fails 2018-05-29 12:24:26 +02:00
sdhci-brcmstb.c
sdhci-cadence.c mmc: sdhci-cadence: fix logically and structurally dead code 2018-05-02 15:08:49 +02:00
sdhci-cns3xxx.c
sdhci-dove.c
sdhci-esdhc-imx.c mmc: sdhci-esdhc-imx: fix indent 2018-07-16 11:41:13 +02:00
sdhci-esdhc.h mmc: sdhci-of-esdhc: add erratum A008171 support 2018-10-08 11:40:43 +02:00
sdhci-iproc.c mmc: sdhci-iproc: Add ACPI support 2018-10-08 11:40:43 +02:00
sdhci-msm.c mmc: sdhci-msm: Remove redundant dev_err call in sdhci_msm_probe() 2018-07-16 11:21:45 +02:00
sdhci-of-arasan.c mmc: sdhci-of-arasan: Add Support for AM654 MMC and PHY 2018-10-09 08:59:26 +02:00
sdhci-of-at91.c
sdhci-of-dwcmshc.c mmc: sdhci-of-dwcmshc: solve 128MB DMA boundary limitation 2018-10-08 11:40:43 +02:00
sdhci-of-esdhc.c mmc: sdhci-of-esdhc: add erratum A008171 support 2018-10-08 11:40:43 +02:00
sdhci-of-hlwd.c
sdhci-omap.c treewide: devm_kzalloc() -> devm_kcalloc() 2018-06-12 16:19:22 -07:00
sdhci-pci-arasan.c
sdhci-pci-core.c mmc: sdhci-pci-dwc-mshc: synopsys dwc mshc support 2018-07-16 11:21:45 +02:00
sdhci-pci-data.c
sdhci-pci-dwc-mshc.c mmc: sdhci-pci-dwc-mshc: synopsys dwc mshc support 2018-07-16 11:21:45 +02:00
sdhci-pci-o2micro.c mmc: sdhci-pci-o2micro: Add quirk for O2 Micro dev 0x8620 rev 0x01 2018-10-08 11:40:43 +02:00
sdhci-pci.h mmc: sdhci-pci-dwc-mshc: synopsys dwc mshc support 2018-07-16 11:21:45 +02:00
sdhci-pic32.c mmc: sdhci-*: Don't emit error msg if sdhci_add_host() fails 2018-05-29 12:24:26 +02:00
sdhci-pltfm.c mmc: sdhci-pltfm: Convert DT properties to generic device properties 2018-10-08 11:40:43 +02:00
sdhci-pltfm.h mmc: sdhci-pltfm: Convert DT properties to generic device properties 2018-10-08 11:40:43 +02:00
sdhci-pxav2.c mmc: sdhci-*: Don't emit error msg if sdhci_add_host() fails 2018-05-29 12:24:26 +02:00
sdhci-pxav3.c mmc: sdhci: pxav3: Delete GPIO handling 2018-10-08 11:40:43 +02:00
sdhci-s3c.c mmc: sdhci-*: Don't emit error msg if sdhci_add_host() fails 2018-05-29 12:24:26 +02:00
sdhci-sirf.c mmc: sdhci: sirf: Use the slot GPIO descriptor 2018-10-08 11:40:43 +02:00
sdhci-spear.c mmc: sdhci: spear: Use the slot GPIO descriptor 2018-10-08 11:40:43 +02:00
sdhci-sprd.c mmc: sdhci-sprd: Add Spreadtrum's initial host controller 2018-10-08 11:40:43 +02:00
sdhci-st.c mmc: sdhci-*: Don't emit error msg if sdhci_add_host() fails 2018-05-29 12:24:26 +02:00
sdhci-tegra.c mmc: tegra: fix inconsistent IS_ERR and PTR_ERR 2018-10-08 11:40:43 +02:00
sdhci-xenon-phy.c mmc: Convert to using %pOFn instead of device_node.name 2018-10-08 11:40:43 +02:00
sdhci-xenon.c
sdhci-xenon.h
sdhci.c mmc: sdhci: fix __sdhci_adma_write_desc 2018-10-08 11:40:43 +02:00
sdhci.h mmc: sdhci: Add Auto CMD Auto Select support 2018-10-08 11:40:43 +02:00
sdricoh_cs.c
sh_mmcif.c mmc: use SPDX identifier for Renesas drivers 2018-10-08 11:40:43 +02:00
sunxi-mmc.c mmc: sunxi: Use new timing mode for A64 eMMC controller 2018-10-08 11:40:43 +02:00
tifm_sd.c mmc: tifm_sd: Mark expected switch fall-through 2018-10-08 11:40:43 +02:00
tmio_mmc_core.c mmc: tmio: simplify the DMA mode test 2018-10-15 14:52:50 +02:00
tmio_mmc.c mmc: tmio: remove TMIO_MMC_HAVE_HIGH_REG flag 2018-10-15 14:39:45 +02:00
tmio_mmc.h mmc: tmio: simplify the DMA mode test 2018-10-15 14:52:50 +02:00
toshsd.c
toshsd.h
uniphier-sd.c mmc: tmio: simplify the DMA mode test 2018-10-15 14:52:50 +02:00
usdhi6rol0.c mmc: use SPDX identifier for Renesas drivers 2018-10-08 11:40:43 +02:00
ushc.c mmc: ushc: handle highmem pages 2018-05-21 15:49:20 +02:00
via-sdmmc.c
vub300.c
wbsd.c mmc: wbsd: handle highmem pages 2018-05-21 15:49:21 +02:00
wbsd.h
wmt-sdmmc.c mmc: host: simplify getting .drvdata 2018-05-02 15:08:48 +02:00