1
0
Fork 0
alistair23-linux/drivers/mmc/host
Will Deacon fb24ea52f7 drivers: Remove explicit invocations of mmiowb()
mmiowb() is now implied by spin_unlock() on architectures that require
it, so there is no reason to call it from driver code. This patch was
generated using coccinelle:

	@mmiowb@
	@@
	- mmiowb();

and invoked as:

$ for d in drivers include/linux/qed sound; do \
spatch --include-headers --sp-file mmiowb.cocci --dir $d --in-place; done

NOTE: mmiowb() has only ever guaranteed ordering in conjunction with
spin_unlock(). However, pairing each mmiowb() removal in this patch with
the corresponding call to spin_unlock() is not at all trivial, so there
is a small chance that this change may regress any drivers incorrectly
relying on mmiowb() to order MMIO writes between CPUs using lock-free
synchronisation. If you've ended up bisecting to this commit, you can
reintroduce the mmiowb() calls using wmb() instead, which should restore
the old behaviour on all architectures other than some esoteric ia64
systems.

Acked-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Will Deacon <will.deacon@arm.com>
2019-04-08 12:01:02 +01:00
..
Kconfig mmc: tegra: HW Command Queue Support for Tegra SDMMC 2019-02-25 08:40:58 +01:00
Makefile mmc: sdhci_am654: Add Initial Support for AM654 SDHCI driver 2018-12-17 08:26:24 +01:00
alcor.c drivers: Remove explicit invocations of mmiowb() 2019-04-08 12:01:02 +01: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: enable 8 bits buswidth support 2019-02-25 08:40:58 +01:00
au1xmmc.c mmc: au1xmmc: handle highmem pages 2018-05-29 12:24:26 +02:00
bcm2835.c mmc: bcm2835: Deduplicate reset of driver data on remove 2019-02-25 08:40:58 +01:00
cavium-octeon.c mmc: cavium-octeon: Convert to use module_platform_driver 2017-08-30 15:03:38 +02:00
cavium-thunderx.c mmc: cavium: Fix use-after-free in of_platform_device_destroy 2017-09-08 15:38:22 +02:00
cavium.c mmc: cavium: catch all errors when getting regulators 2017-10-30 11:50:33 +01:00
cavium.h mmc: cavium: Add scatter-gather DMA support 2017-04-24 21:42:10 +02:00
cb710-mmc.c mmc: cb710: fix indentation issue in if block 2019-02-25 08:40:58 +01:00
cb710-mmc.h mmc: cb710: use to_platform_device() 2016-01-05 18:04:57 +01:00
cqhci.c mmc: cqhci: Fix a tiny potential memory leak on error condition 2019-02-27 15:06:45 +01:00
cqhci.h mmc: cqhci: Ensure macro parameters are wrapped in parentheses 2017-12-11 13:11:21 +01:00
davinci_mmc.c mmc: davinci: remove extraneous __init annotation 2019-03-18 11:02:30 +01:00
dw_mmc-bluefield.c mmc: dw_mmc-bluefield: : Fix the license information 2019-01-22 08:46:20 +01: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 mmc: dw_mmc: exynos: Support eMMC's HS400 mode 2015-03-23 14:13:28 +01:00
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 mmc: dw_mmc: Remove the public dw_mmc header file 2017-02-13 13:19:59 +01:00
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 License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
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: Remove platform data and use standard APIs 2019-02-25 08:40:58 +01:00
meson-gx-mmc.c mmc: meson-gx: fix interrupt name 2019-02-13 08:41:15 +01:00
meson-mx-sdio.c mmc: meson-mx-sdio: check devm_kasprintf for failure 2018-12-17 08:26:24 +01:00
mmc_spi.c Merge branch 'fixes' into next 2019-02-28 09:16:18 +01:00
mmci.c mmc: mmci: Send a CMD12 to clear the DPSM at errors 2019-02-25 08:40:58 +01:00
mmci.h mmc: mmci: Send a CMD12 to clear the DPSM at errors 2019-02-25 08:40:58 +01:00
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
moxart-mmc.c mmc: moxart: constify mmc_host_ops structures 2017-08-30 14:01:41 +02:00
mtk-sd.c mmc: mediatek: fix incorrect register setting of hs400_cmd_int_delay 2019-01-28 12:49:28 +01:00
mvsdio.c mmc: mvsdio: Enable MMC_CAP_ERASE 2018-05-31 15:02:16 +02:00
mvsdio.h
mxcmmc.c mmc: mxcmmc: "Revert mmc: mxcmmc: handle highmem pages" 2019-03-21 11:00:46 +01:00
mxs-mmc.c mmc: mxs-mmc: Drop unused includes 2019-02-25 08:40:58 +01:00
of_mmc_spi.c mmc: of_mmc_spi: Convert to mmc_of_parse_voltage() 2019-02-25 15:20:58 +01:00
omap.c mmc: omap: fix the maximum timeout setting 2019-02-25 08:40:58 +01:00
omap_hsmmc.c Merge branch 'fixes' into next 2018-12-17 09:00:52 +01:00
pxamci.c mmc: pxamci: fix enum type confusion 2019-03-18 11:00:41 +01:00
pxamci.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
renesas_sdhi.h mmc: renesas_sdhi: Change HW adjustment register according to speed mode 2019-02-25 14:45:59 +01:00
renesas_sdhi_core.c mmc: renesas_sdhi: limit block count to 16 bit for old revisions 2019-03-21 11:41:46 +01:00
renesas_sdhi_internal_dmac.c mmc: renesas_sdhi: Change HW adjustment register according to speed mode 2019-02-25 14:45:59 +01:00
renesas_sdhi_sys_dmac.c mmc: tmio: fix access width of Block Count Register 2019-02-26 10:01:49 +01:00
rtsx_pci_sdmmc.c misc: rtsx: Move Realtek Card Reader Driver to misc 2017-11-29 10:16:44 +00:00
rtsx_usb_sdmmc.c mmc: rtsx_usb_sdmmc: Re-work card detection/removal support 2018-12-17 08:26:24 +01:00
s3cmci.c mmc: slot-gpio: Remove override_active_level on WP 2019-02-25 08:40:58 +01:00
s3cmci.h mmc: s3cmci: Register cpufreq notifier only on S3C24xx 2016-07-25 10:34:46 +02:00
sdhci-acpi.c mmc: sdhci-acpi: Disable LED control for Intel BYT-based controllers 2018-12-17 08:26:24 +01:00
sdhci-bcm-kona.c mmc: sdhci-bcm-kona: Drop unused includes 2019-02-25 08:40:58 +01:00
sdhci-brcmstb.c mmc: sdhci-brcmstb: handle mmc_of_parse() errors during probe 2019-02-25 08:40:58 +01:00
sdhci-cadence.c mmc: sdhci-cadence: include <linux/bits.h> instead of <linux/bitops.h> 2018-12-17 08:26:24 +01:00
sdhci-cns3xxx.c mmc: sdhci-pltfm: Drop define for SDHCI_PLTFM_PMOPS 2016-07-29 11:29:04 +02:00
sdhci-dove.c mmc: sdhci-pltfm: Drop define for SDHCI_PLTFM_PMOPS 2016-07-29 11:29:04 +02:00
sdhci-esdhc-imx.c Merge branch 'fixes' into next 2019-02-28 12:19:51 +01:00
sdhci-esdhc.h mmc: sdhci-of-esdhc: workaround for unreliable pulse width detection 2018-12-17 08:26:24 +01:00
sdhci-iproc.c mmc: sdhci-iproc: handle mmc_of_parse() errors during probe 2019-01-14 14:14:27 +01:00
sdhci-msm.c mmc: sdhci-msm: avoid unused function warning 2018-12-17 08:26:24 +01:00
sdhci-of-arasan.c mmc: sdhci_am654: Add Initial Support for AM654 SDHCI driver 2018-12-17 08:26:24 +01:00
sdhci-of-at91.c mmc: sdhci-of-at91: make function sdhci_at91_set_uhs_signaling static 2017-10-30 11:46:01 +01:00
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: Fix timeout checks 2018-12-17 08:26:24 +01:00
sdhci-of-hlwd.c mmc: sdhci-pltfm: Drop define for SDHCI_PLTFM_PMOPS 2016-07-29 11:29:04 +02:00
sdhci-omap.c mmc: sdhci-omap: Set caps2 to indicate no physical write protect pin 2019-03-21 11:19:06 +01:00
sdhci-pci-arasan.c mmc:host:sdhci-pci:Addition of Arasan PCI Controller with integrated phy. 2018-01-04 12:46:11 +01:00
sdhci-pci-core.c mmc: sdhci: Moving sdhci_o2 into sdhci-pci-o2micro.c 2019-02-25 08:40:58 +01:00
sdhci-pci-data.c mmc: sdhci-pci: Use ACPI DSM to get driver strength for some Intel devices 2017-04-24 21:41:28 +02:00
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: Remove unneeded quirk2 flag of O2 SD host controller 2019-02-25 08:40:58 +01:00
sdhci-pci.h mmc: sdhci: Moving sdhci_o2 into sdhci-pci-o2micro.c 2019-02-25 08:40:58 +01: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-pxav2: Drop unused include 2019-02-25 08:40:58 +01: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: sdhci-tegra: drop ->get_ro() implementation 2019-02-25 08:40:58 +01:00
sdhci-xenon-phy.c mmc: sdhci-xenon: Fixup already marked switch fall-through 2019-02-25 08:40:58 +01:00
sdhci-xenon.c mmc: sdhci-xenon: Fix timeout checks 2018-12-17 08:26:24 +01:00
sdhci-xenon.h mmc: sdhci-xenon: Fix clock resource by adding an optional bus clock 2017-10-04 10:50:36 +02:00
sdhci.c drivers: Remove explicit invocations of mmiowb() 2019-04-08 12:01:02 +01:00
sdhci.h mmc: sdhci: Add ADMA3 DMA support for V4 enabled host 2019-02-25 08:40:58 +01:00
sdhci_am654.c mmc: sdhci_am654: Make symbol 'sdhci_am654_ops' static 2019-02-25 08:40:58 +01:00
sdhci_f_sdh30.c mmc: sdhci_f_sdh30: add ACPI support 2018-01-11 15:50:53 +01:00
sdricoh_cs.c mmc: sdricoh_cs: constify mmc_host_ops structures 2017-08-30 14:01:44 +02:00
sh_mmcif.c mmc: use SPDX identifier for Renesas drivers 2018-10-08 11:40:43 +02:00
sunxi-mmc.c mmc: sunxi-mmc: Drop unused includes 2019-02-25 08:40:58 +01:00
tifm_sd.c drivers: Remove explicit invocations of mmiowb() 2019-04-08 12:01:02 +01: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: fix access width of Block Count Register 2019-02-26 10:01:49 +01:00
tmio_mmc_core.c Merge branch 'fixes' into next 2019-02-28 09:16:18 +01:00
toshsd.c mmc: toshsd: constify mmc_host_ops structures 2017-08-30 14:01:42 +02:00
toshsd.h mmc: add Toshiba PCI SD controller driver 2014-11-26 14:30:58 +01:00
uniphier-sd.c mmc: uniphier-sd: avoid using broken DMA RX channel 2018-10-15 14:53:21 +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 drivers: Remove explicit invocations of mmiowb() 2019-04-08 12:01:02 +01:00
vub300.c mmc: vub300: Use common code in __download_offload_pseudocode() 2017-11-02 15:20:29 +01:00
wbsd.c mmc: wbsd: handle highmem pages 2018-05-21 15:49:21 +02:00
wbsd.h
wmt-sdmmc.c mmc: wmt-sdmmc: Drop unused include 2019-02-25 08:40:58 +01:00