linux/drivers/mmc/card
Taras Kondratiuk e18fa5ad02 mmc: block: fix packed command header endianness
[ Upstream commit f68381a70b ]

The code that fills packed command header assumes that CPU runs in
little-endian mode. Hence the header is malformed in big-endian mode
and causes MMC data transfer errors:

[  563.200828] mmcblk0: error -110 transferring data, sector 2048, nr 8, cmd response 0x900, card status 0xc40
[  563.219647] mmcblk0: packed cmd failed, nr 2, sectors 16, failure index: -1

Convert header data to LE.

Signed-off-by: Taras Kondratiuk <takondra@cisco.com>
Fixes: ce39f9d17c ("mmc: support packed write command for eMMC4.5 devices")
Cc: <stable@vger.kernel.org>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
History 2016-08-07 21:58:51 -04:00
..
block.c mmc: block: fix packed command header endianness 2016-08-07 21:58:51 -04:00
Kconfig tty: Added a CONFIG_TTY option to allow removal of TTY 2013-01-18 16:15:27 -08:00
Makefile mmc: Makefile: Fix EXTRA_CFLAGS assignment 2010-10-23 21:11:15 +08:00
mmc_test.c mmc: mmc_test: replace strict_strtol() with kstrtol_from_user() 2013-08-24 23:19:05 -04:00
queue.c mmc: card: Don't access RPMB partitions for normal read/write 2015-06-09 13:43:38 -04:00
queue.h mmc: card: Don't access RPMB partitions for normal read/write 2015-06-09 13:43:38 -04:00
sdio_uart.c mmc: Convert pr_warning to pr_warn 2014-09-24 10:13:09 +02:00