[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAHhAz+iPbNjeHH72Omi7VCUVL_cOUnQjrqbyJKQstUSL6J1hCw@mail.gmail.com>
Date: Thu, 3 May 2018 20:08:48 +0530
From: Muni Sekhar <munisekharrms@...il.com>
To: linux-serial <linux-serial@...r.kernel.org>,
linux-kernel@...r.kernel.org,
kernelnewbies <kernelnewbies@...nelnewbies.org>
Subject: serial: start_tx & buffer handling
Hi All,
I’m trying to understand how user mode buffer is written to low level
serial hardware registers.
For this I read the kernel code and I came to know that from user mode
write() API lands into kernel’s tty_write() ("drivers/tty/tty_io.c")
and then it calls a uart_write() ("drivers/tty/serial/serial_core.c").
In uart_write(), the buffer is copied to circ_buf and then it calls
low level serial hardware driver’s start_tx() (struct uart_ops
.start_tx). But here I could not find how the buffer kept in circ_buf
is copied to serial port’s TX_FIFO registers?
Can someone take a moment to explain me on this?
--
Thanks,
Sekhar
Powered by blists - more mailing lists