All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Ilpo Järvinen" <ilpo.jarvinen@linux.intel.com>
To: Gabriel Somlo <gsomlo@gmail.com>
Cc: LKML <linux-kernel@vger.kernel.org>,
	linux-serial <linux-serial@vger.kernel.org>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Jiri Slaby <jirislaby@kernel.org>,
	kgugala@antmicro.com, mholenko@antmicro.com, joel@jms.id.au,
	david.abdurachmanov@gmail.com, florent@enjoy-digital.fr,
	geert@linux-m68k.org
Subject: Re: [PATCH v3 11/14] serial: liteuart: move function definitions
Date: Tue, 15 Nov 2022 17:48:01 +0200 (EET)	[thread overview]
Message-ID: <4acd99f5-86eb-e0c8-a9ca-a4f5c7e07393@linux.intel.com> (raw)
In-Reply-To: <20221112212125.448824-12-gsomlo@gmail.com>

[-- Attachment #1: Type: text/plain, Size: 4213 bytes --]

On Sat, 12 Nov 2022, Gabriel Somlo wrote:

> Move definitions for liteuart_[stop|start]_tx(), liteuart_stop_rx(),
> and liteuart_putchar() to a more convenient location in preparation
> for adding IRQ support. This patch contains no functional changes.
> 
> Signed-off-by: Gabriel Somlo <gsomlo@gmail.com>
> ---
>  drivers/tty/serial/liteuart.c | 98 +++++++++++++++++------------------
>  1 file changed, 49 insertions(+), 49 deletions(-)
> 
> diff --git a/drivers/tty/serial/liteuart.c b/drivers/tty/serial/liteuart.c
> index 172ac190ba2f..cf1ce597b45e 100644
> --- a/drivers/tty/serial/liteuart.c
> +++ b/drivers/tty/serial/liteuart.c
> @@ -67,36 +67,6 @@ static struct uart_driver liteuart_driver = {
>  #endif
>  };
>  
> -static void liteuart_rx_chars(struct uart_port *port)
> -{
> -	unsigned char __iomem *membase = port->membase;
> -	unsigned int status, ch;
> -
> -	while ((status = !litex_read8(membase + OFF_RXEMPTY)) == 1) {
> -		ch = litex_read8(membase + OFF_RXTX);
> -		port->icount.rx++;
> -
> -		/* necessary for RXEMPTY to refresh its value */
> -		litex_write8(membase + OFF_EV_PENDING, EV_RX);
> -
> -		/* no overflow bits in status */
> -		if (!(uart_handle_sysrq_char(port, ch)))
> -			uart_insert_char(port, status, 0, ch, TTY_NORMAL);
> -	}
> -
> -	tty_flip_buffer_push(&port->state->port);
> -}
> -
> -static void liteuart_timer(struct timer_list *t)
> -{
> -	struct liteuart_port *uart = from_timer(uart, t, timer);
> -	struct uart_port *port = &uart->port;
> -
> -	liteuart_rx_chars(port);
> -
> -	mod_timer(&uart->timer, jiffies + uart_poll_timeout(port));
> -}
> -
>  static void liteuart_putchar(struct uart_port *port, unsigned char ch)
>  {
>  	while (litex_read8(port->membase + OFF_TXFULL))
> @@ -105,25 +75,6 @@ static void liteuart_putchar(struct uart_port *port, unsigned char ch)
>  	litex_write8(port->membase + OFF_RXTX, ch);
>  }
>  
> -static unsigned int liteuart_tx_empty(struct uart_port *port)
> -{
> -	/* not really tx empty, just checking if tx is not full */
> -	if (!litex_read8(port->membase + OFF_TXFULL))
> -		return TIOCSER_TEMT;
> -
> -	return 0;
> -}
> -
> -static void liteuart_set_mctrl(struct uart_port *port, unsigned int mctrl)
> -{
> -	/* modem control register is not present in LiteUART */
> -}
> -
> -static unsigned int liteuart_get_mctrl(struct uart_port *port)
> -{
> -	return TIOCM_CTS | TIOCM_DSR | TIOCM_CAR;
> -}
> -
>  static void liteuart_stop_tx(struct uart_port *port)
>  {
>  	/* not used in LiteUART, but called unconditionally from serial_core */
> @@ -159,6 +110,55 @@ static void liteuart_stop_rx(struct uart_port *port)
>  	del_timer(&uart->timer);
>  }
>  
> +static void liteuart_rx_chars(struct uart_port *port)
> +{
> +	unsigned char __iomem *membase = port->membase;
> +	unsigned int status, ch;
> +
> +	while ((status = !litex_read8(membase + OFF_RXEMPTY)) == 1) {
> +		ch = litex_read8(membase + OFF_RXTX);
> +		port->icount.rx++;
> +
> +		/* necessary for RXEMPTY to refresh its value */
> +		litex_write8(membase + OFF_EV_PENDING, EV_RX);
> +
> +		/* no overflow bits in status */
> +		if (!(uart_handle_sysrq_char(port, ch)))
> +			uart_insert_char(port, status, 0, ch, TTY_NORMAL);
> +	}
> +
> +	tty_flip_buffer_push(&port->state->port);
> +}
> +
> +static void liteuart_timer(struct timer_list *t)
> +{
> +	struct liteuart_port *uart = from_timer(uart, t, timer);
> +	struct uart_port *port = &uart->port;
> +
> +	liteuart_rx_chars(port);
> +
> +	mod_timer(&uart->timer, jiffies + uart_poll_timeout(port));
> +}
> +
> +static unsigned int liteuart_tx_empty(struct uart_port *port)
> +{
> +	/* not really tx empty, just checking if tx is not full */
> +	if (!litex_read8(port->membase + OFF_TXFULL))
> +		return TIOCSER_TEMT;
> +
> +	return 0;
> +}
> +
> +static void liteuart_set_mctrl(struct uart_port *port, unsigned int mctrl)
> +{
> +	/* modem control register is not present in LiteUART */
> +}
> +
> +static unsigned int liteuart_get_mctrl(struct uart_port *port)
> +{
> +	return TIOCM_CTS | TIOCM_DSR | TIOCM_CAR;
> +}
> +
>  static int liteuart_startup(struct uart_port *port)
>  {
>  	struct liteuart_port *uart = to_liteuart_port(port);
> 

Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>

-- 
 i.

  reply	other threads:[~2022-11-15 15:48 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-11-12 21:21 [PATCH v3 00/14] serial: liteuart: add IRQ support Gabriel Somlo
2022-11-12 21:21 ` [PATCH v3 01/14] serial: liteuart: use KBUILD_MODNAME as driver name Gabriel Somlo
2022-11-12 21:21 ` [PATCH v3 02/14] serial: liteuart: use bit number macros Gabriel Somlo
2022-11-15 15:33   ` Ilpo Järvinen
2022-11-15 15:51     ` Gabriel L. Somlo
2022-11-12 21:21 ` [PATCH v3 03/14] serial: liteuart: remove unused uart_ops stubs Gabriel Somlo
2022-11-15 15:37   ` Ilpo Järvinen
2022-11-12 21:21 ` [PATCH v3 04/14] serial: liteuart: don't set unused port fields Gabriel Somlo
2022-11-12 21:21 ` [PATCH v3 05/14] serial: liteuart: minor style fix in liteuart_init() Gabriel Somlo
2022-11-15 15:40   ` Ilpo Järvinen
2022-11-12 21:21 ` [PATCH v3 06/14] serial: liteuart: move tty_flip_buffer_push() out of rx loop Gabriel Somlo
2022-11-15 15:38   ` Ilpo Järvinen
2022-11-12 21:21 ` [PATCH v3 07/14] serial: liteuart: rx loop should only ack rx events Gabriel Somlo
2022-11-12 21:21 ` [PATCH v3 08/14] serial: liteuart: simplify passing of uart_insert_char() flag Gabriel Somlo
2022-11-15 15:43   ` Ilpo Järvinen
2022-11-12 21:21 ` [PATCH v3 09/14] serial: liteuart: fix rx loop variable types Gabriel Somlo
2022-11-15 15:46   ` Ilpo Järvinen
2022-11-12 21:21 ` [PATCH v3 10/14] serial: liteuart: separate rx loop from poll timer Gabriel Somlo
2022-11-15 15:44   ` Ilpo Järvinen
2022-11-12 21:21 ` [PATCH v3 11/14] serial: liteuart: move function definitions Gabriel Somlo
2022-11-15 15:48   ` Ilpo Järvinen [this message]
2022-11-12 21:21 ` [PATCH v3 12/14] serial: liteuart: add IRQ support for the RX path Gabriel Somlo
2022-11-15 16:00   ` Ilpo Järvinen
2022-11-15 16:14     ` Gabriel L. Somlo
2022-11-15 16:21       ` Ilpo Järvinen
2022-11-15 16:26         ` Gabriel L. Somlo
2022-11-12 21:21 ` [PATCH v3 13/14] serial: liteuart: add IRQ support for the TX path Gabriel Somlo
2022-11-13 12:06   ` Gabriel L. Somlo
2022-11-15 16:14   ` Ilpo Järvinen
2022-11-15 17:13     ` Gabriel L. Somlo
2022-11-15 17:30       ` Ilpo Järvinen
2022-11-15 18:21         ` Gabriel L. Somlo
2022-11-16  0:16         ` Gabriel L. Somlo
2022-11-16 11:26           ` Ilpo Järvinen
2022-11-12 21:21 ` [PATCH v3 14/14] serial: liteuart: move polling putchar() function Gabriel Somlo
2022-11-15 16:16   ` Ilpo Järvinen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4acd99f5-86eb-e0c8-a9ca-a4f5c7e07393@linux.intel.com \
    --to=ilpo.jarvinen@linux.intel.com \
    --cc=david.abdurachmanov@gmail.com \
    --cc=florent@enjoy-digital.fr \
    --cc=geert@linux-m68k.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=gsomlo@gmail.com \
    --cc=jirislaby@kernel.org \
    --cc=joel@jms.id.au \
    --cc=kgugala@antmicro.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-serial@vger.kernel.org \
    --cc=mholenko@antmicro.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.