summaryrefslogtreecommitdiffstats
path: root/serial-460800.patch
diff options
context:
space:
mode:
Diffstat (limited to 'serial-460800.patch')
-rw-r--r--serial-460800.patch23
1 files changed, 12 insertions, 11 deletions
diff --git a/serial-460800.patch b/serial-460800.patch
index 2abea1e4c..92b24c56e 100644
--- a/serial-460800.patch
+++ b/serial-460800.patch
@@ -1,11 +1,12 @@
Bugzilla: N/A
Upstream-status: Fedora mustard but I have no idea why.
-diff --git a/drivers/serial/8250.c b/drivers/serial/8250.c
-index 2209620..659c1bb 100644
+
+diff --git a/drivers/tty/serial/8250/8250_core.c b/drivers/tty/serial/8250/8250_core.c
+index 1d42dba6121d..30a5fde26949 100644
--- a/drivers/tty/serial/8250/8250_core.c
+++ b/drivers/tty/serial/8250/8250_core.c
-@@ -7,6 +7,9 @@
+@@ -5,6 +5,9 @@
*
* Copyright (C) 2001 Russell King.
*
@@ -15,7 +16,7 @@ index 2209620..659c1bb 100644
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
-@@ -2227,6 +2230,14 @@ static unsigned int serial8250_get_divisor(struct uart_port *port, unsigned int
+@@ -2246,6 +2249,14 @@ static unsigned int serial8250_get_divisor(struct uart_port *port, unsigned int
else if ((port->flags & UPF_MAGIC_MULTIPLIER) &&
baud == (port->uartclk/8))
quot = 0x8002;
@@ -30,16 +31,16 @@ index 2209620..659c1bb 100644
else
quot = uart_get_divisor(port, baud);
-@@ -2240,7 +2251,7 @@ serial8250_set_termios(struct uart_port *port, struct ktermios *termios,
- container_of(port, struct uart_8250_port, port);
- unsigned char cval, fcr = 0;
+@@ -2259,7 +2270,7 @@ serial8250_do_set_termios(struct uart_port *port, struct ktermios *termios,
+ struct uart_8250_port *up = up_to_u8250p(port);
+ unsigned char cval;
unsigned long flags;
- unsigned int baud, quot;
+ unsigned int baud, quot, max_baud;
- int fifo_bug = 0;
switch (termios->c_cflag & CSIZE) {
-@@ -2272,9 +2283,10 @@ serial8250_set_termios(struct uart_port *port, struct ktermios *termios,
+ case CS5:
+@@ -2294,9 +2305,10 @@ serial8250_do_set_termios(struct uart_port *port, struct ktermios *termios,
/*
* Ask the core to calculate the divisor for us.
*/
@@ -51,8 +52,8 @@ index 2209620..659c1bb 100644
quot = serial8250_get_divisor(port, baud);
/*
-@@ -2311,6 +2323,19 @@ serial8250_set_termios(struct uart_port *port, struct ktermios *termios,
- spin_lock_irqsave(&up->port.lock, flags);
+@@ -2336,6 +2348,19 @@ serial8250_do_set_termios(struct uart_port *port, struct ktermios *termios,
+ spin_lock_irqsave(&port->lock, flags);
/*
+ * 16C950 supports additional prescaler ratios between 1:16 and 1:4