mirror-linux/drivers/mmc/core
Ulf Hansson 66c915d09b mmc: core: Disable card detect during shutdown
It's seems prone to problems by allowing card detect and its corresponding
mmc_rescan() work to run, during platform shutdown. For example, we may end
up turning off the power while initializing a card, which potentially could
damage it.

To avoid this scenario, let's add ->shutdown_pre() callback for the mmc host
class device and then turn of the card detect from there.

Reported-by: Al Cooper <alcooperx@gmail.com>
Suggested-by: Adrian Hunter <adrian.hunter@intel.com>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/r/20211203141555.105351-1-ulf.hansson@linaro.org
2021-12-20 11:09:15 +01:00
..
Kconfig mmc: pwrseq: add wilc1000_sdio dependency for pwrseq_sd8787 2021-08-24 16:59:38 +02:00
Makefile mmc: core: Add basic support for inline encryption 2021-02-01 12:02:33 +01:00
block.c MMC core: 2021-11-01 18:55:12 -07:00
block.h
bus.c bus: Make remove callback return void 2021-07-21 11:53:42 +02:00
bus.h
card.h
core.c mmc: core: Disable card detect during shutdown 2021-12-20 11:09:15 +01:00
core.h mmc: core: Disable card detect during shutdown 2021-12-20 11:09:15 +01:00
crypto.c blk-crypto: rename blk_keyslot_manager to blk_crypto_profile 2021-10-21 10:49:32 -06:00
crypto.h mmc: core: Add basic support for inline encryption 2021-02-01 12:02:33 +01:00
debugfs.c mmc: debugfs: add description for module parameter 2021-06-14 13:57:43 +02:00
host.c mmc: core: Disable card detect during shutdown 2021-12-20 11:09:15 +01:00
host.h mmc: host: factor out clearing the retune state 2021-08-24 10:15:28 +02:00
mmc.c mmc: core: Add host specific tuning support for eMMC HS400 mode 2021-10-12 10:21:18 +02:00
mmc_ops.c mmc: core: Issue HPI in case the BKOPS timed out 2021-08-24 16:59:39 +02:00
mmc_ops.h mmc: core: Add host specific tuning support for eMMC HS400 mode 2021-10-12 10:21:18 +02:00
mmc_test.c include/linux/mm.h: move nr_free_buffer_pages from swap.h to mm.h 2021-11-06 13:30:43 -07:00
pwrseq.c
pwrseq.h
pwrseq_emmc.c
pwrseq_sd8787.c mmc: pwrseq: sd8787: fix compilation warning 2021-08-25 11:11:16 +02:00
pwrseq_simple.c
queue.c mmc: queue: Remove unused parameters(request_queue) 2021-08-25 11:14:42 +02:00
queue.h mmc: switch to blk_mq_alloc_disk 2021-06-30 15:34:04 -06:00
quirks.h
regulator.c
sd.c block: move struct request to blk-mq.h 2021-10-18 06:17:02 -06:00
sd.h
sd_ops.c mmc: core: Drop open coding in mmc_sd_switch() 2021-06-14 13:57:36 +02:00
sd_ops.h
sdio.c mmc: core: Use pm_runtime_resume_and_get() to replace open coding 2021-06-14 13:57:41 +02:00
sdio_bus.c bus: Make remove callback return void 2021-07-21 11:53:42 +02:00
sdio_bus.h
sdio_cis.c mmc: sdio: Print contents of unknown CIS tuples 2021-08-24 10:15:33 +02:00
sdio_cis.h
sdio_io.c
sdio_irq.c
sdio_ops.c
sdio_ops.h
sdio_uart.c tty: drop put_tty_driver 2021-07-27 12:17:21 +02:00
slot-gpio.c mmc: slot-gpio: Update default label when no con_id provided 2021-10-12 10:21:20 +02:00
slot-gpio.h