All of lore.kernel.org
 help / color / mirror / Atom feed
From: Gabriel Somlo <gsomlo@gmail.com>
To: linux-kernel@vger.kernel.org
Cc: linux-serial@vger.kernel.org, gregkh@linuxfoundation.org,
	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, ilpo.jarvinen@linux.intel.com
Subject: [PATCH v4 11/14] serial: liteuart: move function definitions
Date: Wed, 16 Nov 2022 09:49:05 -0500	[thread overview]
Message-ID: <20221116144908.234154-12-gsomlo@gmail.com> (raw)
In-Reply-To: <20221116144908.234154-1-gsomlo@gmail.com>

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>
Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
---
 drivers/tty/serial/liteuart.c | 82 +++++++++++++++++------------------
 1 file changed, 41 insertions(+), 41 deletions(-)

diff --git a/drivers/tty/serial/liteuart.c b/drivers/tty/serial/liteuart.c
index 76f8a09b82cd..8a6e176be08e 100644
--- a/drivers/tty/serial/liteuart.c
+++ b/drivers/tty/serial/liteuart.c
@@ -68,6 +68,47 @@ static struct uart_driver liteuart_driver = {
 #endif
 };
 
+static void liteuart_putchar(struct uart_port *port, unsigned char ch)
+{
+	while (litex_read8(port->membase + OFF_TXFULL))
+		cpu_relax();
+
+	litex_write8(port->membase + OFF_RXTX, ch);
+}
+
+static void liteuart_stop_tx(struct uart_port *port)
+{
+}
+
+static void liteuart_start_tx(struct uart_port *port)
+{
+	struct circ_buf *xmit = &port->state->xmit;
+	unsigned char ch;
+
+	if (unlikely(port->x_char)) {
+		litex_write8(port->membase + OFF_RXTX, port->x_char);
+		port->icount.tx++;
+		port->x_char = 0;
+	} else if (!uart_circ_empty(xmit)) {
+		while (xmit->head != xmit->tail) {
+			ch = xmit->buf[xmit->tail];
+			uart_xmit_advance(port, 1);
+			liteuart_putchar(port, ch);
+		}
+	}
+
+	if (uart_circ_chars_pending(xmit) < WAKEUP_CHARS)
+		uart_write_wakeup(port);
+}
+
+static void liteuart_stop_rx(struct uart_port *port)
+{
+	struct liteuart_port *uart = to_liteuart_port(port);
+
+	/* just delete timer */
+	del_timer(&uart->timer);
+}
+
 static void liteuart_rx_chars(struct uart_port *port)
 {
 	unsigned char __iomem *membase = port->membase;
@@ -98,14 +139,6 @@ static void liteuart_timer(struct timer_list *t)
 	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))
-		cpu_relax();
-
-	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 */
@@ -125,39 +158,6 @@ 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)
-{
-}
-
-static void liteuart_start_tx(struct uart_port *port)
-{
-	struct circ_buf *xmit = &port->state->xmit;
-	unsigned char ch;
-
-	if (unlikely(port->x_char)) {
-		litex_write8(port->membase + OFF_RXTX, port->x_char);
-		port->icount.tx++;
-		port->x_char = 0;
-	} else if (!uart_circ_empty(xmit)) {
-		while (xmit->head != xmit->tail) {
-			ch = xmit->buf[xmit->tail];
-			uart_xmit_advance(port, 1);
-			liteuart_putchar(port, ch);
-		}
-	}
-
-	if (uart_circ_chars_pending(xmit) < WAKEUP_CHARS)
-		uart_write_wakeup(port);
-}
-
-static void liteuart_stop_rx(struct uart_port *port)
-{
-	struct liteuart_port *uart = to_liteuart_port(port);
-
-	/* just delete timer */
-	del_timer(&uart->timer);
-}
-
 static int liteuart_startup(struct uart_port *port)
 {
 	struct liteuart_port *uart = to_liteuart_port(port);
-- 
2.38.1


  parent reply	other threads:[~2022-11-16 14:49 UTC|newest]

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

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=20221116144908.234154-12-gsomlo@gmail.com \
    --to=gsomlo@gmail.com \
    --cc=david.abdurachmanov@gmail.com \
    --cc=florent@enjoy-digital.fr \
    --cc=geert@linux-m68k.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=ilpo.jarvinen@linux.intel.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.