1
0
Fork 0

spi: fsl-espi: fix ioread16/iowrite16 endianness

fsl_espi_read_reg16 / fsl_espi_write_reg16 are supposed to read / write
big endian values. Therefore ioread16be / iowrite16be have to be used.

Fixes: 	0582343284 ("eliminate need for linearization when writing to hardware")
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
zero-colors
Heiner Kallweit 2016-11-30 20:28:09 +01:00 committed by Mark Brown
parent d54ef0574a
commit 7e2ef00330
1 changed files with 2 additions and 2 deletions

View File

@ -124,7 +124,7 @@ static inline u32 fsl_espi_read_reg(struct fsl_espi *espi, int offset)
static inline u16 fsl_espi_read_reg16(struct fsl_espi *espi, int offset)
{
return ioread16(espi->reg_base + offset);
return ioread16be(espi->reg_base + offset);
}
static inline u8 fsl_espi_read_reg8(struct fsl_espi *espi, int offset)
@ -141,7 +141,7 @@ static inline void fsl_espi_write_reg(struct fsl_espi *espi, int offset,
static inline void fsl_espi_write_reg16(struct fsl_espi *espi, int offset,
u16 val)
{
iowrite16(val, espi->reg_base + offset);
iowrite16be(val, espi->reg_base + offset);
}
static inline void fsl_espi_write_reg8(struct fsl_espi *espi, int offset,