On Mon, Feb 15, 2021 at 09:17:07PM +0900, Hector Martin wrote:
* Split out s3c24xx_serial_tx_chars from s3c24xx_serial_tx_irq,
where only the latter acquires the port lock.
I miss here information why you do all this.
* For S3C64xx, return IRQ_NONE if no flag bits were set, so the
interrupt core can detect IRQ storms. Note that both IRQ handlers
always return IRQ_HANDLED anyway, so 'or' logic isn't necessary here,
if either handler ran we are always going to return IRQ_HANDLED.
It looks like separate patch. Your patches should do only one thing at
once. The fact that you have here three bullet points is a warning
sign. This is even more important if you do some refactorings and
cleanups which should not affect functionality. Hiding there changes
which could affect functionality is a no-go.
* Rename s3c24xx_serial_rx_chars to s3c24xx_serial_rx_irq for
consistency with the above. All it does now is call two other
functions anyway.
Separate patch for trivial renaming.
Signed-off-by: Hector Martin <marcan@xxxxxxxxx>
---
drivers/tty/serial/samsung_tty.c | 41 +++++++++++++++++++-------------
1 file changed, 24 insertions(+), 17 deletions(-)
diff --git a/drivers/tty/serial/samsung_tty.c b/drivers/tty/serial/samsung_tty.c
index 21955be680a4..821cd0e4f870 100644
--- a/drivers/tty/serial/samsung_tty.c
+++ b/drivers/tty/serial/samsung_tty.c
@@ -151,6 +151,9 @@ struct s3c24xx_uart_port {
#endif
};
+static void s3c24xx_serial_start_next_tx(struct s3c24xx_uart_port *ourport);
+static void s3c24xx_serial_tx_chars(struct s3c24xx_uart_port *ourport);
+
/* conversion functions */
#define s3c24xx_dev_to_port(__dev) dev_get_drvdata(__dev)
@@ -316,8 +319,6 @@ static void s3c24xx_serial_stop_tx(struct uart_port *port)
ourport->tx_mode = 0;
}
-static void s3c24xx_serial_start_next_tx(struct s3c24xx_uart_port *ourport);
-
Why moving this? Why adding s3c24xx_serial_tx_chars() forward
declaration?