diff options
author | Michael Lauer <mickey@vanille-media.de> | 2007-08-23 11:47:15 +0000 |
---|---|---|
committer | Michael Lauer <mickey@vanille-media.de> | 2007-08-23 11:47:15 +0000 |
commit | f1d0d79f48ab191a1ed0b5065e39046e1d95fef4 (patch) | |
tree | 860036a8554d604726a256d7408c711df834b7cb /packages/linux/linux-2.6.21/serial-divisor.patch | |
parent | 2534c12ac4c879178132751e51db09c6e4f22cf9 (diff) | |
parent | 958b8822656bed6e5526f9441fea36570787f9c7 (diff) |
merge of '88dd6a801655485b76bb6d591c1f763d51ff47b8'
and 'ea2a23cae4f4d939a07f699c39b603c4c2559ad1'
Diffstat (limited to 'packages/linux/linux-2.6.21/serial-divisor.patch')
-rw-r--r-- | packages/linux/linux-2.6.21/serial-divisor.patch | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/packages/linux/linux-2.6.21/serial-divisor.patch b/packages/linux/linux-2.6.21/serial-divisor.patch new file mode 100644 index 0000000000..efce5a51ef --- /dev/null +++ b/packages/linux/linux-2.6.21/serial-divisor.patch @@ -0,0 +1,31 @@ +Index: linux-2.6.21gum/drivers/serial/pxa.c +=================================================================== +--- linux-2.6.21gum.orig/drivers/serial/pxa.c ++++ linux-2.6.21gum/drivers/serial/pxa.c +@@ -41,6 +41,7 @@ + #include <linux/platform_device.h> + #include <linux/tty.h> + #include <linux/tty_flip.h> ++#include <linux/serial.h> + #include <linux/serial_core.h> + + #include <asm/io.h> +@@ -577,8 +578,16 @@ static void serial_pxa_config_port(struc + static int + serial_pxa_verify_port(struct uart_port *port, struct serial_struct *ser) + { +- /* we don't want the core code to modify any port params */ +- return -EINVAL; ++ struct uart_pxa_port *up = (struct uart_pxa_port *)port; ++ int ret = 0; ++ ++ if (up->port.uartclk / 16 != ser->baud_base) ++ ret = -EINVAL; ++ else if (((up->port.line & 1) == 0) && ser->baud_base > 230400) /* Max baud rate for STUART and FFUART */ ++ ret = -EINVAL; ++ else if (((up->port.line & 1) != 0) && ser->baud_base > 921600) /* Max baud rate for HWUART and BTUART */ ++ ret = -EINVAL; ++ return ret; + } + + static const char * |