linux/drivers/mmc/host
Shawn Lin 5b43df8b4c mmc: dw_mmc: Avoid accessing registers in runtime suspended state
cat /sys/kernel/debug/mmc0/regs will hang up the system since
it's in runtime suspended state, so the genpd and biu_clk is
off. This patch fixes this problem by calling pm_runtime_get_sync
to wake it up before reading the registers.

Fixes: e9ed8835e9 ("mmc: dw_mmc: add runtime PM callback")
Cc: <stable@vger.kernel.org>
Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
Reviewed-by: Jaehoon Chung <jh80.chung@samsung.com>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
2018-02-27 15:12:36 +01:00
..
android-goldfish.c mmc: android-goldfish: remove duplicate includes 2017-12-18 13:56:59 +01:00
atmel-mci.c mmc: Convert timers to use timer_setup() 2017-11-02 15:20:28 +01:00
au1xmmc.c
bcm2835.c mmc: bcm2835: Don't overwrite max frequency unconditionally 2018-02-14 11:30:10 +01:00
bfin_sdh.c mmc: bfin_sdh: remove the MMC_DATA_STREAM flag 2016-02-29 11:02:59 +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
cb710-mmc.h mmc: cb710: use to_platform_device() 2016-01-05 18:04:57 +01:00
cqhci.c mmc: cqhci: support for command queue enabled host 2017-12-11 12:44:34 +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: suppress error message on EPROBE_DEFER 2018-01-22 08:21:56 +01:00
dw_mmc-exynos.c mmc: dw_mmc: Fix out-of-bounds access for slot's caps 2018-02-27 15:12:25 +01:00
dw_mmc-exynos.h mmc: dw_mmc: exynos: Support eMMC's HS400 mode 2015-03-23 14:13:28 +01: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 public dw_mmc header file 2017-02-13 13:19:59 +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 out-of-bounds access for slot's caps 2018-02-27 15:12:25 +01: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: Avoid accessing registers in runtime suspended state 2018-02-27 15:12:36 +01:00
dw_mmc.h mmc: dw_mmc: Fix out-of-bounds access for slot's caps 2018-02-27 15:12:25 +01:00
jz4740_mmc.c mmc: Convert timers to use timer_setup() 2017-11-02 15:20:28 +01:00
Kconfig Kbuild updates for v4.16 (2nd) 2018-02-09 19:32:41 -08:00
Makefile mmc:host:sdhci-pci:Addition of Arasan PCI Controller with integrated phy. 2018-01-04 12:46:11 +01:00
meson-gx-mmc.c Revert "mmc: meson-gx: include tx phase in the tuning process" 2018-02-14 11:30:03 +01:00
meson-mx-sdio.c mmc: Convert timers to use timer_setup() 2017-11-02 15:20:28 +01:00
mmc_spi.c mmc: use new core function mmc_get_dma_dir 2017-04-24 21:41:52 +02:00
mmci_qcom_dml.c scripts/spelling.txt: add "intialization" pattern and fix typo instances 2017-02-27 18:43:47 -08:00
mmci_qcom_dml.h
mmci.c mmc: mmci: fix error return code in mmci_probe() 2018-01-24 13:51:07 +01:00
mmci.h mmc: mmci: Add support for setting pad type via pinctrl 2018-01-18 18:14:45 +01:00
moxart-mmc.c mmc: moxart: constify mmc_host_ops structures 2017-08-30 14:01:41 +02:00
mtk-sd.c mmc: mediatek: perfer to use rise edge latching for cmd line 2017-11-02 15:20:27 +01:00
mvsdio.c mmc: Convert timers to use timer_setup() 2017-11-02 15:20:28 +01:00
mvsdio.h
mxcmmc.c mmc: Convert timers to use timer_setup() 2017-11-02 15:20:28 +01:00
mxs-mmc.c mmc: mxs-mmc: Implement CMD23 support 2017-02-13 13:20:27 +01:00
of_mmc_spi.c mmc: of_mmc_spi: fix restricted cast warning of sparse 2017-08-30 14:01:45 +02:00
omap_hsmmc.c mmc: omap_hsmmc: catch all errors when getting regulators 2017-10-30 11:50:36 +01:00
omap.c mmc: Convert timers to use timer_setup() 2017-11-02 15:20:28 +01:00
pxamci.c mmc: Delete bounce buffer handling 2017-10-04 10:22:55 +02: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_core.c mmc: tmio: remove dma_ops from tmio_mmc_host_probe() argument 2018-01-18 09:08:56 +01:00
renesas_sdhi_internal_dmac.c mmc: tmio, renesas_sdhi: move Renesas-specific DMA data to renesas_sdhi.h 2017-12-19 08:50:04 +01:00
renesas_sdhi_sys_dmac.c mmc: tmio, renesas_sdhi: Remove unneeded NULL check 2018-01-11 15:51:01 +01:00
renesas_sdhi.h mmc: tmio,renesas_sdhi: move ssc_tappos to renesas_sdhi.h 2017-12-19 08:50:04 +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 misc: rtsx: Move Realtek Card Reader Driver to misc 2017-11-29 10:16:44 +00:00
s3cmci.c Merge branch 'fixes' into next 2018-01-04 12:44:21 +01:00
s3cmci.h mmc: s3cmci: Register cpufreq notifier only on S3C24xx 2016-07-25 10:34:46 +02:00
sdhci_f_sdh30.c mmc: sdhci_f_sdh30: add ACPI support 2018-01-11 15:50:53 +01:00
sdhci-acpi.c mmc: sdhci-acpi: Handle return value of platform_get_irq 2017-12-15 09:13:16 +01:00
sdhci-bcm-kona.c mmc: sdhci-bcm-kona: constify sdhci_pltfm_data and sdhci_ops structures 2017-08-30 14:01:52 +02:00
sdhci-brcmstb.c mmc: sdhci: enable/disable the clock in sdhci_pltfm_suspend/resume 2017-08-30 15:03:44 +02:00
sdhci-cadence.c mmc: sdhci-cadence: use bitfield access macros for cleanup 2017-10-30 11:50:32 +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 2018-01-15 13:53:10 +01:00
sdhci-esdhc.h mmc: sdhci-of-esdhc: support ESDHC_CAPABILITIES_1 accessing 2017-08-30 15:03:36 +02:00
sdhci-iproc.c mmc: sdhci-iproc: suppress spurious interrupt with Multiblock read 2017-05-22 18:18:04 +02:00
sdhci-msm.c mmc: sdhci-msm: Optionally wait for signal level changes 2017-11-23 14:39:26 +01:00
sdhci-of-arasan.c mmc: sdhci-of-arasan: Add CQHCI support for arasan,sdhci-5.1 2018-01-16 08:21:56 +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-esdhc.c mmc: sdhci-of-esdhc: fix the mmc error after sleep on ls1046ardb 2017-12-11 12:53:06 +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: make three functions static, fixes warnings 2017-10-02 08:18:11 +02: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-pci: Fix S0i3 for Intel BYT-based controllers 2018-02-27 10:03:48 +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-o2micro.c mmc: sdhci-pci: Tidy o2micro definitions 2017-10-30 11:50:41 +01:00
sdhci-pci.h mmc:host:sdhci-pci:Addition of Arasan PCI Controller with integrated phy. 2018-01-04 12:46:11 +01:00
sdhci-pic32.c mmc: sdhci: constify sdhci_pltfm_data structures 2017-08-30 14:01:51 +02:00
sdhci-pltfm.c mmc: sdhci-pltfm: export sdhci_pltfm_suspend/resume 2017-08-30 15:03:45 +02:00
sdhci-pltfm.h mmc: sdhci-pltfm: export sdhci_pltfm_suspend/resume 2017-08-30 15:03:45 +02:00
sdhci-pxav2.c mmc: sdhci-pxav2: switch to managed clk and sdhci_pltfm_unregister() 2017-08-30 15:03:44 +02:00
sdhci-pxav3.c mmc: sdhci: constify sdhci_pltfm_data structures 2017-08-30 14:01:51 +02:00
sdhci-s3c.c mmc: sdhci-s3c: Fix driver data for Exynos4 SoCs 2017-10-30 11:46:00 +01:00
sdhci-sirf.c mmc: sdhci: enable/disable the clock in sdhci_pltfm_suspend/resume 2017-08-30 15:03:44 +02:00
sdhci-spear.c mmc: sdhci-spear: Handle return value of platform_get_irq 2017-12-15 09:13:16 +01:00
sdhci-st.c mmc: sdhci-st: explicitly request exclusive reset control 2017-08-30 14:01:37 +02:00
sdhci-tegra.c mmc: tegra: Mark 64 bit dma broken on Tegra186 2017-10-30 11:40:07 +01:00
sdhci-xenon-phy.c mmc: sdhci-xenon: Support HS400 Enhanced Strobe feature 2017-08-30 15:03:43 +02:00
sdhci-xenon.c mmc: sdhci-xenon: wait 5ms after set 1.8V signal enable 2017-12-19 08:53:04 +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 mmc: sdhci: Implement an SDHCI-specific bounce buffer 2018-01-31 11:27:23 +01:00
sdhci.h mmc: sdhci: Implement an SDHCI-specific bounce buffer 2018-01-31 11:27:23 +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: sh_mmcif: remove redundant initialization of 'opc' 2018-01-18 09:08:11 +01:00
sunxi-mmc.c mmc: sunxi-mmc: Handle return value of platform_get_irq 2017-12-15 09:13:16 +01:00
tifm_sd.c mmc: Convert timers to use timer_setup() 2017-11-02 15:20:28 +01:00
tmio_mmc_core.c mmc: tmio: hide unused tmio_mmc_clk_disable/tmio_mmc_clk_enable functions 2018-01-22 08:20:36 +01:00
tmio_mmc.c mmc: tmio: remove dma_ops from tmio_mmc_host_probe() argument 2018-01-18 09:08:56 +01:00
tmio_mmc.h mmc: tmio: remove dma_ops from tmio_mmc_host_probe() argument 2018-01-18 09:08:56 +01:00
toshsd.c mmc: toshsd: constify mmc_host_ops structures 2017-08-30 14:01:42 +02:00
toshsd.h
usdhi6rol0.c mmc: usdhi6rol0: catch all errors when getting regulators 2017-10-30 11:50:37 +01:00
ushc.c mmc: ushc: fix NULL-deref at probe 2017-03-16 15:31:27 +01:00
via-sdmmc.c mmc: Convert timers to use timer_setup() 2017-11-02 15:20:28 +01:00
vub300.c mmc: vub300: Use common code in __download_offload_pseudocode() 2017-11-02 15:20:29 +01:00
wbsd.c mmc: Convert timers to use timer_setup() 2017-11-02 15:20:28 +01:00
wbsd.h
wmt-sdmmc.c mmc: wmt-sdmmc: Handle return value of clk_prepare_enable 2017-08-30 14:01:55 +02:00