mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2025-01-18 19:16:20 +07:00
serial: Introduce UPSTAT_SYNC_FIFO for synchronised FIFOs
This change adds a flag to indicate that a UART is has an external means of synchronising its FIFO, without needing CTSRTS or XON/XOFF. This allows us to use the throttle/unthrottle callbacks, without having to claim other methods of flow control. Signed-off-by: Jeremy Kerr <jk@ozlabs.org> Tested-by: Eddie James <eajames@linux.vnet.ibm.com> Tested-by: Joel Stanley <joel@jms.id.au> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
d6810a82c7
commit
c5f78b1fe4
@ -674,8 +674,8 @@ static void uart_send_xchar(struct tty_struct *tty, char ch)
|
||||
static void uart_throttle(struct tty_struct *tty)
|
||||
{
|
||||
struct uart_state *state = tty->driver_data;
|
||||
upstat_t mask = UPSTAT_SYNC_FIFO;
|
||||
struct uart_port *port;
|
||||
upstat_t mask = 0;
|
||||
|
||||
port = uart_port_ref(state);
|
||||
if (!port)
|
||||
@ -703,8 +703,8 @@ static void uart_throttle(struct tty_struct *tty)
|
||||
static void uart_unthrottle(struct tty_struct *tty)
|
||||
{
|
||||
struct uart_state *state = tty->driver_data;
|
||||
upstat_t mask = UPSTAT_SYNC_FIFO;
|
||||
struct uart_port *port;
|
||||
upstat_t mask = 0;
|
||||
|
||||
port = uart_port_ref(state);
|
||||
if (!port)
|
||||
|
@ -233,6 +233,7 @@ struct uart_port {
|
||||
#define UPSTAT_AUTORTS ((__force upstat_t) (1 << 2))
|
||||
#define UPSTAT_AUTOCTS ((__force upstat_t) (1 << 3))
|
||||
#define UPSTAT_AUTOXOFF ((__force upstat_t) (1 << 4))
|
||||
#define UPSTAT_SYNC_FIFO ((__force upstat_t) (1 << 5))
|
||||
|
||||
int hw_stopped; /* sw-assisted CTS flow state */
|
||||
unsigned int mctrl; /* current modem ctrl settings */
|
||||
|
Loading…
Reference in New Issue
Block a user