* [PATCH 2/4] tty: serial: altera_jtaguart: remove unused altera_jtaguart::sigs
2022-11-15 7:17 [PATCH 1/4] tty: serial: altera_jtaguart: remove flag from altera_jtaguart_rx_chars() Jiri Slaby (SUSE)
@ 2022-11-15 7:17 ` Jiri Slaby (SUSE)
2022-11-15 14:57 ` Tobias Klauser
2022-11-15 7:17 ` [PATCH 3/4] tty: serial: altera_jtaguart: use uart_port::read_status_mask Jiri Slaby (SUSE)
` (2 subsequent siblings)
3 siblings, 1 reply; 8+ messages in thread
From: Jiri Slaby (SUSE) @ 2022-11-15 7:17 UTC (permalink / raw)
To: gregkh; +Cc: linux-serial, linux-kernel, Jiri Slaby (SUSE), Tobias Klauser
Nothing uses struct altera_jtaguart::sigs. Remove it.
Cc: Tobias Klauser <tklauser@distanz.ch>
Signed-off-by: Jiri Slaby (SUSE) <jirislaby@kernel.org>
---
drivers/tty/serial/altera_jtaguart.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/drivers/tty/serial/altera_jtaguart.c b/drivers/tty/serial/altera_jtaguart.c
index 8d1729711584..b83eade64b22 100644
--- a/drivers/tty/serial/altera_jtaguart.c
+++ b/drivers/tty/serial/altera_jtaguart.c
@@ -55,7 +55,6 @@
*/
struct altera_jtaguart {
struct uart_port port;
- unsigned int sigs; /* Local copy of line sigs */
unsigned long imr; /* Local IMR mirror */
};
--
2.38.1
^ permalink raw reply [flat|nested] 8+ messages in thread* [PATCH 3/4] tty: serial: altera_jtaguart: use uart_port::read_status_mask
2022-11-15 7:17 [PATCH 1/4] tty: serial: altera_jtaguart: remove flag from altera_jtaguart_rx_chars() Jiri Slaby (SUSE)
2022-11-15 7:17 ` [PATCH 2/4] tty: serial: altera_jtaguart: remove unused altera_jtaguart::sigs Jiri Slaby (SUSE)
@ 2022-11-15 7:17 ` Jiri Slaby (SUSE)
2022-11-15 14:58 ` Tobias Klauser
2022-11-15 7:17 ` [PATCH 4/4] tty: serial: altera_jtaguart: remove struct altera_jtaguart Jiri Slaby (SUSE)
2022-11-15 14:56 ` [PATCH 1/4] tty: serial: altera_jtaguart: remove flag from altera_jtaguart_rx_chars() Tobias Klauser
3 siblings, 1 reply; 8+ messages in thread
From: Jiri Slaby (SUSE) @ 2022-11-15 7:17 UTC (permalink / raw)
To: gregkh; +Cc: linux-serial, linux-kernel, Jiri Slaby (SUSE), Tobias Klauser
Instead of self-defined struct altera_jtaguart::imr, use preexisting
uart_port::read_status_mask.
Note that imr was ulong. But there is no reason for that, its values are
uints. And readl/writel's are used to read it/write to it.
Cc: Tobias Klauser <tklauser@distanz.ch>
Signed-off-by: Jiri Slaby (SUSE) <jirislaby@kernel.org>
---
drivers/tty/serial/altera_jtaguart.c | 41 +++++++++++-----------------
1 file changed, 16 insertions(+), 25 deletions(-)
diff --git a/drivers/tty/serial/altera_jtaguart.c b/drivers/tty/serial/altera_jtaguart.c
index b83eade64b22..6808abd27785 100644
--- a/drivers/tty/serial/altera_jtaguart.c
+++ b/drivers/tty/serial/altera_jtaguart.c
@@ -55,7 +55,6 @@
*/
struct altera_jtaguart {
struct uart_port port;
- unsigned long imr; /* Local IMR mirror */
};
static unsigned int altera_jtaguart_tx_space(struct uart_port *port, u32 *ctlp)
@@ -84,29 +83,23 @@ static void altera_jtaguart_set_mctrl(struct uart_port *port, unsigned int sigs)
static void altera_jtaguart_start_tx(struct uart_port *port)
{
- struct altera_jtaguart *pp =
- container_of(port, struct altera_jtaguart, port);
-
- pp->imr |= ALTERA_JTAGUART_CONTROL_WE_MSK;
- writel(pp->imr, port->membase + ALTERA_JTAGUART_CONTROL_REG);
+ port->read_status_mask |= ALTERA_JTAGUART_CONTROL_WE_MSK;
+ writel(port->read_status_mask,
+ port->membase + ALTERA_JTAGUART_CONTROL_REG);
}
static void altera_jtaguart_stop_tx(struct uart_port *port)
{
- struct altera_jtaguart *pp =
- container_of(port, struct altera_jtaguart, port);
-
- pp->imr &= ~ALTERA_JTAGUART_CONTROL_WE_MSK;
- writel(pp->imr, port->membase + ALTERA_JTAGUART_CONTROL_REG);
+ port->read_status_mask &= ~ALTERA_JTAGUART_CONTROL_WE_MSK;
+ writel(port->read_status_mask,
+ port->membase + ALTERA_JTAGUART_CONTROL_REG);
}
static void altera_jtaguart_stop_rx(struct uart_port *port)
{
- struct altera_jtaguart *pp =
- container_of(port, struct altera_jtaguart, port);
-
- pp->imr &= ~ALTERA_JTAGUART_CONTROL_RE_MSK;
- writel(pp->imr, port->membase + ALTERA_JTAGUART_CONTROL_REG);
+ port->read_status_mask &= ~ALTERA_JTAGUART_CONTROL_RE_MSK;
+ writel(port->read_status_mask,
+ port->membase + ALTERA_JTAGUART_CONTROL_REG);
}
static void altera_jtaguart_break_ctl(struct uart_port *port, int break_state)
@@ -163,7 +156,7 @@ static irqreturn_t altera_jtaguart_interrupt(int irq, void *data)
unsigned int isr;
isr = (readl(port->membase + ALTERA_JTAGUART_CONTROL_REG) >>
- ALTERA_JTAGUART_CONTROL_RI_OFF) & pp->imr;
+ ALTERA_JTAGUART_CONTROL_RI_OFF) & port->read_status_mask;
spin_lock(&port->lock);
@@ -187,8 +180,6 @@ static void altera_jtaguart_config_port(struct uart_port *port, int flags)
static int altera_jtaguart_startup(struct uart_port *port)
{
- struct altera_jtaguart *pp =
- container_of(port, struct altera_jtaguart, port);
unsigned long flags;
int ret;
@@ -203,8 +194,9 @@ static int altera_jtaguart_startup(struct uart_port *port)
spin_lock_irqsave(&port->lock, flags);
/* Enable RX interrupts now */
- pp->imr = ALTERA_JTAGUART_CONTROL_RE_MSK;
- writel(pp->imr, port->membase + ALTERA_JTAGUART_CONTROL_REG);
+ port->read_status_mask = ALTERA_JTAGUART_CONTROL_RE_MSK;
+ writel(port->read_status_mask,
+ port->membase + ALTERA_JTAGUART_CONTROL_REG);
spin_unlock_irqrestore(&port->lock, flags);
@@ -213,15 +205,14 @@ static int altera_jtaguart_startup(struct uart_port *port)
static void altera_jtaguart_shutdown(struct uart_port *port)
{
- struct altera_jtaguart *pp =
- container_of(port, struct altera_jtaguart, port);
unsigned long flags;
spin_lock_irqsave(&port->lock, flags);
/* Disable all interrupts now */
- pp->imr = 0;
- writel(pp->imr, port->membase + ALTERA_JTAGUART_CONTROL_REG);
+ port->read_status_mask = 0;
+ writel(port->read_status_mask,
+ port->membase + ALTERA_JTAGUART_CONTROL_REG);
spin_unlock_irqrestore(&port->lock, flags);
--
2.38.1
^ permalink raw reply [flat|nested] 8+ messages in thread* Re: [PATCH 3/4] tty: serial: altera_jtaguart: use uart_port::read_status_mask
2022-11-15 7:17 ` [PATCH 3/4] tty: serial: altera_jtaguart: use uart_port::read_status_mask Jiri Slaby (SUSE)
@ 2022-11-15 14:58 ` Tobias Klauser
0 siblings, 0 replies; 8+ messages in thread
From: Tobias Klauser @ 2022-11-15 14:58 UTC (permalink / raw)
To: Jiri Slaby (SUSE); +Cc: gregkh, linux-serial, linux-kernel
On 2022-11-15 at 08:17:23 +0100, Jiri Slaby (SUSE) <jirislaby@kernel.org> wrote:
> Instead of self-defined struct altera_jtaguart::imr, use preexisting
> uart_port::read_status_mask.
>
> Note that imr was ulong. But there is no reason for that, its values are
> uints. And readl/writel's are used to read it/write to it.
>
> Cc: Tobias Klauser <tklauser@distanz.ch>
> Signed-off-by: Jiri Slaby (SUSE) <jirislaby@kernel.org>
Reviewed-by: Tobias Klauser <tklauser@distanz.ch>
Thanks
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH 4/4] tty: serial: altera_jtaguart: remove struct altera_jtaguart
2022-11-15 7:17 [PATCH 1/4] tty: serial: altera_jtaguart: remove flag from altera_jtaguart_rx_chars() Jiri Slaby (SUSE)
2022-11-15 7:17 ` [PATCH 2/4] tty: serial: altera_jtaguart: remove unused altera_jtaguart::sigs Jiri Slaby (SUSE)
2022-11-15 7:17 ` [PATCH 3/4] tty: serial: altera_jtaguart: use uart_port::read_status_mask Jiri Slaby (SUSE)
@ 2022-11-15 7:17 ` Jiri Slaby (SUSE)
2022-11-15 14:59 ` Tobias Klauser
2022-11-15 14:56 ` [PATCH 1/4] tty: serial: altera_jtaguart: remove flag from altera_jtaguart_rx_chars() Tobias Klauser
3 siblings, 1 reply; 8+ messages in thread
From: Jiri Slaby (SUSE) @ 2022-11-15 7:17 UTC (permalink / raw)
To: gregkh; +Cc: linux-serial, linux-kernel, Jiri Slaby (SUSE), Tobias Klauser
It contains only struct uart_port, so no need for another structure.
Remove it and convert the rest to use struct uart_port directly.
Cc: Tobias Klauser <tklauser@distanz.ch>
Signed-off-by: Jiri Slaby (SUSE) <jirislaby@kernel.org>
---
drivers/tty/serial/altera_jtaguart.c | 29 +++++++++-------------------
1 file changed, 9 insertions(+), 20 deletions(-)
diff --git a/drivers/tty/serial/altera_jtaguart.c b/drivers/tty/serial/altera_jtaguart.c
index 6808abd27785..9f843d1cee40 100644
--- a/drivers/tty/serial/altera_jtaguart.c
+++ b/drivers/tty/serial/altera_jtaguart.c
@@ -50,13 +50,6 @@
#define ALTERA_JTAGUART_CONTROL_AC_MSK 0x00000400
#define ALTERA_JTAGUART_CONTROL_WSPACE_MSK 0xFFFF0000
-/*
- * Local per-uart structure.
- */
-struct altera_jtaguart {
- struct uart_port port;
-};
-
static unsigned int altera_jtaguart_tx_space(struct uart_port *port, u32 *ctlp)
{
u32 ctl = readl(port->membase + ALTERA_JTAGUART_CONTROL_REG);
@@ -115,9 +108,8 @@ static void altera_jtaguart_set_termios(struct uart_port *port,
tty_termios_copy_hw(termios, old);
}
-static void altera_jtaguart_rx_chars(struct altera_jtaguart *pp)
+static void altera_jtaguart_rx_chars(struct uart_port *port)
{
- struct uart_port *port = &pp->port;
unsigned char ch;
unsigned long status;
@@ -134,9 +126,8 @@ static void altera_jtaguart_rx_chars(struct altera_jtaguart *pp)
tty_flip_buffer_push(&port->state->port);
}
-static void altera_jtaguart_tx_chars(struct altera_jtaguart *pp)
+static void altera_jtaguart_tx_chars(struct uart_port *port)
{
- struct uart_port *port = &pp->port;
unsigned int count;
u8 ch;
@@ -151,8 +142,6 @@ static void altera_jtaguart_tx_chars(struct altera_jtaguart *pp)
static irqreturn_t altera_jtaguart_interrupt(int irq, void *data)
{
struct uart_port *port = data;
- struct altera_jtaguart *pp =
- container_of(port, struct altera_jtaguart, port);
unsigned int isr;
isr = (readl(port->membase + ALTERA_JTAGUART_CONTROL_REG) >>
@@ -161,9 +150,9 @@ static irqreturn_t altera_jtaguart_interrupt(int irq, void *data)
spin_lock(&port->lock);
if (isr & ALTERA_JTAGUART_CONTROL_RE_MSK)
- altera_jtaguart_rx_chars(pp);
+ altera_jtaguart_rx_chars(port);
if (isr & ALTERA_JTAGUART_CONTROL_WE_MSK)
- altera_jtaguart_tx_chars(pp);
+ altera_jtaguart_tx_chars(port);
spin_unlock(&port->lock);
@@ -265,7 +254,7 @@ static const struct uart_ops altera_jtaguart_ops = {
};
#define ALTERA_JTAGUART_MAXPORTS 1
-static struct altera_jtaguart altera_jtaguart_ports[ALTERA_JTAGUART_MAXPORTS];
+static struct uart_port altera_jtaguart_ports[ALTERA_JTAGUART_MAXPORTS];
#if defined(CONFIG_SERIAL_ALTERA_JTAGUART_CONSOLE)
@@ -308,7 +297,7 @@ static void altera_jtaguart_console_putc(struct uart_port *port, unsigned char c
static void altera_jtaguart_console_write(struct console *co, const char *s,
unsigned int count)
{
- struct uart_port *port = &(altera_jtaguart_ports + co->index)->port;
+ struct uart_port *port = &altera_jtaguart_ports[co->index];
uart_console_write(port, s, count, altera_jtaguart_console_putc);
}
@@ -320,7 +309,7 @@ static int __init altera_jtaguart_console_setup(struct console *co,
if (co->index < 0 || co->index >= ALTERA_JTAGUART_MAXPORTS)
return -EINVAL;
- port = &altera_jtaguart_ports[co->index].port;
+ port = &altera_jtaguart_ports[co->index];
if (port->membase == NULL)
return -ENODEV;
return 0;
@@ -400,7 +389,7 @@ static int altera_jtaguart_probe(struct platform_device *pdev)
if (i >= ALTERA_JTAGUART_MAXPORTS)
return -EINVAL;
- port = &altera_jtaguart_ports[i].port;
+ port = &altera_jtaguart_ports[i];
res_mem = platform_get_resource(pdev, IORESOURCE_MEM, 0);
if (res_mem)
@@ -444,7 +433,7 @@ static int altera_jtaguart_remove(struct platform_device *pdev)
if (i == -1)
i = 0;
- port = &altera_jtaguart_ports[i].port;
+ port = &altera_jtaguart_ports[i];
uart_remove_one_port(&altera_jtaguart_driver, port);
iounmap(port->membase);
--
2.38.1
^ permalink raw reply [flat|nested] 8+ messages in thread* Re: [PATCH 1/4] tty: serial: altera_jtaguart: remove flag from altera_jtaguart_rx_chars()
2022-11-15 7:17 [PATCH 1/4] tty: serial: altera_jtaguart: remove flag from altera_jtaguart_rx_chars() Jiri Slaby (SUSE)
` (2 preceding siblings ...)
2022-11-15 7:17 ` [PATCH 4/4] tty: serial: altera_jtaguart: remove struct altera_jtaguart Jiri Slaby (SUSE)
@ 2022-11-15 14:56 ` Tobias Klauser
3 siblings, 0 replies; 8+ messages in thread
From: Tobias Klauser @ 2022-11-15 14:56 UTC (permalink / raw)
To: Jiri Slaby (SUSE); +Cc: gregkh, linux-serial, linux-kernel
On 2022-11-15 at 08:17:21 +0100, Jiri Slaby (SUSE) <jirislaby@kernel.org> wrote:
> TTY_NORMAL is the only value it contains, so remove the variable and use
> the constant instead.
>
> Cc: Tobias Klauser <tklauser@distanz.ch>
> Signed-off-by: Jiri Slaby (SUSE) <jirislaby@kernel.org>
Reviewed-by: Tobias Klauser <tklauser@distanz.ch>
Thanks
^ permalink raw reply [flat|nested] 8+ messages in thread