mirror of
git://projects.qi-hardware.com/openwrt-xburst.git
synced 2025-04-21 12:27:27 +03:00
incomplete Gumstix support
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@10955 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
31
target/linux/pxa/patches-2.6.21/030-serial-divisor.patch
Normal file
31
target/linux/pxa/patches-2.6.21/030-serial-divisor.patch
Normal file
@@ -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 *
|
||||
Reference in New Issue
Block a user