linux/drivers/mmc/core
Dirk Behme dbe7dc6b9b mmc: core: Disable HPI for certain Micron (Numonyx) eMMC cards
Certain Micron eMMC v4.5 cards might get broken when HPI feature is used
and hence this patch disables the HPI feature for such buggy cards.

In U-Boot, these cards are reported as

Manufacturer: Micron (ID: 0xFE)
OEM: 0x4E
Name: MMC32G
Revision: 19 (0x13)
Serial: 959241022  Manufact. date: 8/2015 (0x82)  CRC: 0x00
Tran Speed: 52000000
Rd Block Len: 512
MMC version 4.5
High Capacity: Yes
Capacity: 29.1 GiB
Boot Partition Size: 16 MiB
Bus Width: 8-bit

According to JEDEC JEP106 manufacturer 0xFE is Numonyx, which was bought by
Micron.

Signed-off-by: Dirk Behme <dirk.behme@de.bosch.com>
Signed-off-by: Mark Craske <Mark_Craske@mentor.com>
Cc: <stable@vger.kernel.org> # 4.8+
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
2018-03-15 10:50:59 +01:00
..
Kconfig mmc: core: Delete bounce buffer Kconfig option 2017-06-20 10:30:17 +02:00
Makefile License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
block.c mmc: block: fix updating ext_csd caches on ioctl call 2018-03-15 10:31:38 +01:00
block.h mmc: block: Remove code no longer needed after the switch to blk-mq 2017-12-11 13:02:22 +01:00
bus.c mmc: core: Remove code no longer needed after the switch to blk-mq 2017-12-11 13:05:58 +01:00
bus.h mmc: core: Move public functions from card.h to private headers 2017-02-13 13:20:24 +01:00
card.h mmc: core: Disable HPI for certain Micron (Numonyx) eMMC cards 2018-03-15 10:50:59 +01:00
core.c mmc: avoid removing non-removable hosts during suspend 2017-12-18 13:56:59 +01:00
core.h mmc: core: Remove code no longer needed after the switch to blk-mq 2017-12-11 13:05:58 +01:00
debugfs.c mmc: block: Ensure that debugfs files are removed 2017-11-23 14:39:13 +01:00
host.c mmc: core: Remove option not to use blk-mq 2017-12-11 12:55:02 +01:00
host.h mmc: core: Remove code no longer needed after the switch to blk-mq 2017-12-11 13:05:58 +01:00
mmc.c mmc: core: properly init drv_type 2017-12-05 17:14:00 +01:00
mmc_ops.c mmc: core: Avoid hanging to claim host for mmc via some nested calls 2018-02-27 15:12:37 +01:00
mmc_ops.h mmc: core: Re-factor code for sending CID 2017-06-20 10:30:45 +02:00
mmc_test.c mmc: mmc_test: Ensure command queue is disabled for testing 2017-12-11 12:51:29 +01:00
pwrseq.c mmc: pwrseq: Add reset callback to the struct mmc_pwrseq_ops 2017-06-20 10:30:09 +02:00
pwrseq.h mmc: pwrseq: Add reset callback to the struct mmc_pwrseq_ops 2017-06-20 10:30:09 +02:00
pwrseq_emmc.c mmc: core: Don't do eMMC HW reset when resuming the eMMC card 2017-06-20 10:30:10 +02:00
pwrseq_sd8787.c mmc: pwrseq: add support for Marvell SD8787 chip 2017-02-13 13:20:33 +01:00
pwrseq_simple.c mmc: pwrseq_simple: Parse DTS for the power-off-delay-us property 2017-05-23 14:17:36 +02:00
queue.c mmc: block: Remove code no longer needed after the switch to blk-mq 2017-12-11 13:02:22 +01:00
queue.h mmc: block: Remove code no longer needed after the switch to blk-mq 2017-12-11 13:02:22 +01:00
quirks.h mmc: core: Disable HPI for certain Micron (Numonyx) eMMC cards 2018-03-15 10:50:59 +01:00
sd.c mmc: core: prepend 0x to OCR entry in sysfs 2017-11-29 10:46:53 +01:00
sd.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
sd_ops.c mmc: core: add proper be32 annotation 2017-04-24 21:42:19 +02:00
sd_ops.h mmc: core: add proper be32 annotation 2017-04-24 21:42:19 +02:00
sdio.c mmc: sdio: Keep card runtime resumed while adding function devices 2017-06-20 10:30:39 +02:00
sdio_bus.c mmc: sdio: fix alignment issue in struct sdio_func 2017-04-18 19:18:07 +02:00
sdio_bus.h mmc: core: First step in cleaning up private mmc header files 2017-02-13 13:20:20 +01:00
sdio_cis.c mmc: core: remove BUG_ONs from sdio 2016-12-05 10:31:08 +01:00
sdio_cis.h mmc: core: First step in cleaning up private mmc header files 2017-02-13 13:20:20 +01:00
sdio_io.c mmc: core: simplify return code 2017-04-24 21:41:24 +02:00
sdio_irq.c mmc: core: Introduce host claiming by context 2017-10-30 11:45:49 +01:00
sdio_ops.c mmc: sdio: improve mmc_io_rw_extended 2017-04-24 21:41:42 +02:00
sdio_ops.h mmc: sdio: Add API to manage SDIO IRQs from a workqueue 2017-06-20 10:30:11 +02:00
sdio_uart.c mmc: block: Move files to core 2016-12-12 16:30:05 +01:00
slot-gpio.c mmc: slot-gpio: add a helper to check capability of GPIO WP detection 2018-01-18 09:08:56 +01:00
slot-gpio.h mmc: core: First step in cleaning up private mmc header files 2017-02-13 13:20:20 +01:00