aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/tty/serial/msm_serial.h
diff options
context:
space:
mode:
authorStephen Boyd <sboyd@codeaurora.org>2014-06-30 14:54:01 -0700
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2014-07-10 16:10:42 -0700
commit68252424a7c757ce0a534696e22e1770408bc01d (patch)
tree9258881ca0da38a901e21f432a6e4f1685428c56 /drivers/tty/serial/msm_serial.h
parentserial: txx9: remove duplicate TXX9_SIFCR_TDIL_MASK define (diff)
downloadlinux-dev-68252424a7c757ce0a534696e22e1770408bc01d.tar.xz
linux-dev-68252424a7c757ce0a534696e22e1770408bc01d.zip
tty: serial: msm: Support big-endian CPUs
To support big-endian CPUs use the string versions of the io read/write macros on the TX/RX fifos and the non-raw variants of the readl/writel macros throughout. This way we don't byteswap the characters coming from the fifos but we properly deal with the little-endian nature of the serial hardware while controlling it. Signed-off-by: Stephen Boyd <sboyd@codeaurora.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/tty/serial/msm_serial.h')
-rw-r--r--drivers/tty/serial/msm_serial.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/tty/serial/msm_serial.h b/drivers/tty/serial/msm_serial.h
index d98d45efdf86..73d3abe71e79 100644
--- a/drivers/tty/serial/msm_serial.h
+++ b/drivers/tty/serial/msm_serial.h
@@ -126,13 +126,13 @@
static inline
void msm_write(struct uart_port *port, unsigned int val, unsigned int off)
{
- __raw_writel(val, port->membase + off);
+ writel_relaxed(val, port->membase + off);
}
static inline
unsigned int msm_read(struct uart_port *port, unsigned int off)
{
- return __raw_readl(port->membase + off);
+ return readl_relaxed(port->membase + off);
}
/*