]> git.baikalelectronics.ru Git - kernel.git/commit
mmc: dw_mmc: fix fifo ordering in big endian
authorBen Dooks <ben.dooks@codethink.co.uk>
Wed, 25 Mar 2015 11:27:52 +0000 (11:27 +0000)
committerUlf Hansson <ulf.hansson@linaro.org>
Thu, 9 Apr 2015 07:08:15 +0000 (09:08 +0200)
commitf901edb6475db9e622ad5408c7ca76ca2375a1a0
tree6de305bc6530a70b743c2a9262c88628ff36da8f
parent29a90c0c67dd4f2b0c606fa28a92b0d06dc65360
mmc: dw_mmc: fix fifo ordering in big endian

The dw_mmc driver changes to make the IO accesors endian agnostic did not
take into account the fifo accesses do not need to be swapped. To fix this
add a mmci_fifo_read/write wrapper to allow these to be passed through the
IO without being swapped.

Since these are now specific functions, it would be easier just to store
the pointer to the fifo registers in the host block instead of the offset
to them. So change the host->data_offset to host->fifo_reg (which also
means we catch all the places this is read or written).

Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
drivers/mmc/host/dw_mmc.c
drivers/mmc/host/dw_mmc.h
include/linux/mmc/dw_mmc.h