mvsdio: fix handling of partial word at the end of PIO transfer
authorNicolas Pitre <nico@cam.org>
Sun, 19 Jul 2009 00:34:37 +0000 (20:34 -0400)
committerLinus Torvalds <torvalds@linux-foundation.org>
Mon, 20 Jul 2009 23:46:34 +0000 (16:46 -0700)
commit6cdbf734493d6e8f5afc6f539b82897772809d43
tree4d1678ef1712c91990146d6e0beb33109901beea
parent0ecf24ef49d4f46ff5d6af357c3b9ec8d798160d
mvsdio: fix handling of partial word at the end of PIO transfer

Standard data flow for MMC/SD/SDIO cards requires that the mvsdio
controller be set for big endian operation.  This is causing problems
with buffers which length is not a multiple of 4 bytes as the last
partial word doesn't get shifted all the way and stored properly in
memory.  Let's compensate for this.

Signed-off-by: Nicolas Pitre <nico@marvell.com>
CC: stable@kernel.org
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
drivers/mmc/host/mvsdio.c