Thread (35 messages) 35 messages, 7 authors, 2015-12-24
STALE3828d

[PATCH 10/12] tty: amba-pl011: add support for 32-bit register access

From: Russell King - ARM Linux <hidden>
Date: 2015-11-16 17:52:17
Also in: linux-serial

On Mon, Nov 16, 2015 at 11:45:12AM -0600, Timur Tabi wrote:
Russell King wrote:
quoted
Add support for 32-bit register accesses to the AMBA PL011 UART.  This
is needed for ZTE UARTs, which require 32-bit accesses as opposed to
the more normal 16-bit accesses.

Signed-off-by: Russell King<redacted>
---
 drivers/tty/serial/amba-pl011.c | 15 +++++++++++++--
 1 file changed, 13 insertions(+), 2 deletions(-)
diff --git a/drivers/tty/serial/amba-pl011.c b/drivers/tty/serial/amba-pl011.c
index afa0de7d481f..3470a1e67bbc 100644
--- a/drivers/tty/serial/amba-pl011.c
+++ b/drivers/tty/serial/amba-pl011.c
@@ -93,6 +93,7 @@ static u16 pl011_std_offsets[REG_ARRAY_SIZE] = {
 struct vendor_data {
 	const u16		*reg_offset;
 	unsigned int		ifls;
+	bool			access_32b;
So no love for my suggestion to use port->iotype instead of this new field?

static void pl011_write(unsigned int val, const struct uart_amba_port *uap,
    unsigned int reg)
{
    void __iomem *addr = uap->port.membase + pl011_reg_to_offset(uap, reg);

    if (uap->port.iotype == UPIO_MEM32)
        writel(val, addr);
    else
        writew(val, addr);
}
Well, it looks a bit weird, because we use 16-bit accesses for other
values, and there isn't a UPIO_MEM16 type.  Although that could be
added, it's extending the scope of the patch to touching core files.

-- 
FTTC broadband for 0.8mile line: currently at 9.6Mbps down 400kbps up
according to speedtest.net.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help