From: Wander Lairson Costa <wander@redhat.com>
To: "Greg Kroah-Hartman" <gregkh@linuxfoundation.org>,
"Jiri Slaby" <jirislaby@kernel.org>,
"Wander Lairson Costa" <wander@redhat.com>,
"Johan Hovold" <johan@kernel.org>,
"Maciej W. Rozycki" <macro@orcam.me.uk>,
"Lukas Wunner" <lukas@wunner.de>, "Pali Rohár" <pali@kernel.org>,
linux-serial@vger.kernel.org (open list:SERIAL DRIVERS),
linux-kernel@vger.kernel.org (open list)
Cc: rostedt@goodmis.org, senozhatsky@chromium.org,
andre.goddard@gmail.com, sudipm.mukherjee@gmail.com,
andy.shevchenko@gmail.com, David.Laight@aculab.com,
jonathanh@nvidia.com, phil@raspberrypi.com
Subject: [PATCH v4 3/5] serial/8250: Use tx_loadsz as the transmitter fifo size
Date: Wed, 16 Mar 2022 11:36:42 -0300 [thread overview]
Message-ID: <20220316143646.13301-4-wander@redhat.com> (raw)
In-Reply-To: <20220316143646.13301-1-wander@redhat.com>
Using port_fifosize as the fifo size to transmit data to the serial
console causes data loss in some controllers. Use the correct tx_loadsz
field.
Thanks to Jon Hunter for reporting the issue.
Reported-by: Jon Hunter <jonathanh@nvidia.com>
Tested-by: Jon Hunter <jonathanh@nvidia.com>
Fixes: 5021d709b31b ("tty: serial: Use fifo in 8250 console driver")
Signed-off-by: Wander Lairson Costa <wander@redhat.com>
---
drivers/tty/serial/8250/8250_port.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/tty/serial/8250/8250_port.c b/drivers/tty/serial/8250/8250_port.c
index 9f3fa9fe2a4e..d3a93e5d55f7 100644
--- a/drivers/tty/serial/8250/8250_port.c
+++ b/drivers/tty/serial/8250/8250_port.c
@@ -3343,7 +3343,7 @@ static void serial8250_console_fifo_write(struct uart_8250_port *up,
{
int i;
const char *end = s + count;
- unsigned int fifosize = up->port.fifosize;
+ unsigned int fifosize = up->tx_loadsz;
bool cr_sent = false;
while (s != end) {
@@ -3409,7 +3409,7 @@ void serial8250_console_write(struct uart_8250_port *up, const char *s,
}
use_fifo = (up->capabilities & UART_CAP_FIFO) &&
- port->fifosize > 1 &&
+ up->tx_loadsz > 1 &&
(up->fcr & UART_FCR_ENABLE_FIFO) &&
/*
* After we put a data in the fifo, the controller will send
--
2.35.1
next prev parent reply other threads:[~2022-03-16 14:37 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-03-16 14:36 [PATCH v4 0/5] tty/8250: Use fifo in 8250 console driver Wander Lairson Costa
2022-03-16 14:36 ` [PATCH v4 1/5] serial/8250: " Wander Lairson Costa
2022-03-16 15:27 ` David Laight
2022-03-17 12:27 ` Wander Costa
2022-03-16 14:36 ` [PATCH v4 2/5] serial/8250: Use the cache value of the FCR register Wander Lairson Costa
2022-03-17 8:29 ` Ilpo Järvinen
2022-03-17 12:03 ` Wander Costa
2022-03-16 14:36 ` Wander Lairson Costa [this message]
2022-03-16 14:36 ` [PATCH v4 4/5] serial/8250: exclude BCM283x from console_fifo_write Wander Lairson Costa
2022-03-16 14:36 ` [PATCH v4 5/5] serial/8250: Only use fifo after the port is initialized in console_write Wander Lairson Costa
2022-03-17 7:06 ` Jiri Slaby
2022-03-17 12:22 ` Wander Costa
2022-03-17 8:43 ` Ilpo Järvinen
2022-03-17 12:23 ` Wander Costa
2022-03-16 16:13 ` [PATCH v4 0/5] tty/8250: Use fifo in 8250 console driver Andy Shevchenko
2022-03-16 16:14 ` Andy Shevchenko
2022-03-16 16:37 ` Wander Costa
2022-03-17 15:47 ` Steven Rostedt
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=20220316143646.13301-4-wander@redhat.com \
--to=wander@redhat.com \
--cc=David.Laight@aculab.com \
--cc=andre.goddard@gmail.com \
--cc=andy.shevchenko@gmail.com \
--cc=gregkh@linuxfoundation.org \
--cc=jirislaby@kernel.org \
--cc=johan@kernel.org \
--cc=jonathanh@nvidia.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-serial@vger.kernel.org \
--cc=lukas@wunner.de \
--cc=macro@orcam.me.uk \
--cc=pali@kernel.org \
--cc=phil@raspberrypi.com \
--cc=rostedt@goodmis.org \
--cc=senozhatsky@chromium.org \
--cc=sudipm.mukherjee@gmail.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.