]> git.karo-electronics.de Git - karo-tx-linux.git/commit
serial: sirf: move to writel for TXFIFO instead of writeb
authorBarry Song <Baohua.Song@csr.com>
Mon, 5 May 2014 00:05:51 +0000 (08:05 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 28 May 2014 19:22:43 +0000 (12:22 -0700)
commit205c384f73e56d6b7d309b883a2064cd07ab5427
tree4752b3b84ee37e82a438b2be8591d7ff4ba3f0eb
parent717e1cb22f01ddeaaeddc126fed43f975c920d97
serial: sirf: move to writel for TXFIFO instead of writeb

All SiRFSoC UART registers are in 32-bits. If we use writeb for
TXFIFO, actually all of 32-bits are still written, for TXTIFO,
only low 8-bits are valid, so in prima2&atlas6, this causes no
problem.
But in the new atlas7, using writeb to write UART registers will
cause an imprecise data abort as HW does check the "wrong" writeb.
So move to writel and this also makes the code consistent with
sirfsoc_uart_pio_tx_chars() in which we use writel.

Signed-off-by: Barry Song <Baohua.Song@csr.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/tty/serial/sirfsoc_uart.c
drivers/tty/serial/sirfsoc_uart.h