diff options
author | Christoph Fritz <chf.fritz@googlemail.com> | 2017-12-09 23:47:55 +0100 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2017-12-20 10:10:19 +0100 |
commit | 318cea7d8d801cfa70f5b3a3a991425cd502b574 (patch) | |
tree | 8838f6bca93530dacaf8a9c7c907c4a06cd71b44 /fs/ceph | |
parent | d78a5506cf0ea112124c1ffa5c0aae09b579d96d (diff) | |
download | linux-stable-318cea7d8d801cfa70f5b3a3a991425cd502b574.tar.gz linux-stable-318cea7d8d801cfa70f5b3a3a991425cd502b574.tar.bz2 linux-stable-318cea7d8d801cfa70f5b3a3a991425cd502b574.zip |
mmc: core: apply NO_CMD23 quirk to some specific cards
commit 91516a2a4734614d62ee3ed921f8f88acc67c000 upstream.
To get an usdhc Apacer and some ATP SD cards work reliable, CMD23 needs
to be disabled. This has been tested on i.MX6 (sdhci-esdhc) and rk3288
(dw_mmc-rockchip).
Without this patch on i.MX6 (sdhci-esdhc):
$ dd if=/dev/urandom of=/mnt/test bs=1M count=10 conv=fsync
| <mmc0: starting CMD23 arg 00000400 flags 00000015>
| mmc0: starting CMD25 arg 00a71f00 flags 000000b5
| mmc0: blksz 512 blocks 1024 flags 00000100 tsac 3000 ms nsac 0
| mmc0: CMD12 arg 00000000 flags 0000049d
| sdhci [sdhci_irq()]: *** mmc0 got interrupt: 0x00000001
| mmc0: Timeout waiting for hardware interrupt.
Without this patch on rk3288 (dw_mmc-rockchip):
| mmc1: Card stuck in programming state! mmcblk1 card_busy_detect
| dwmmc_rockchip ff0c0000.dwmmc: Busy; trying anyway
| mmc_host mmc1: Bus speed (slot 0) = 400000Hz (slot req 400000Hz,
| actual 400000HZ div = 0)
| mmc1: card never left busy state
| mmc1: tried to reset card, got error -110
| blk_update_request: I/O error, dev mmcblk1, sector 139778
| Buffer I/O error on dev mmcblk1p1, logical block 131586, lost async
| page write
Signed-off-by: Christoph Fritz <chf.fritz@googlemail.com>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'fs/ceph')
0 files changed, 0 insertions, 0 deletions