提交 37a6c7d0 编写于 作者: A Atsushi Nemoto 提交者: Linus Torvalds

serial_txx9: Use UPF_FIXED_PORT

The UPF_FIXED_PORT flags was introduced in 2.6.22 and it can be used
instead of the driver specific verify_port routine.
Signed-off-by: NAtsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
上级 b3b708fa
......@@ -33,7 +33,7 @@
#include <asm/io.h>
static char *serial_version = "1.10";
static char *serial_version = "1.11";
static char *serial_name = "TX39/49 Serial driver";
#define PASS_LIMIT 256
......@@ -64,8 +64,6 @@ static char *serial_name = "TX39/49 Serial driver";
*/
#define UART_NR CONFIG_SERIAL_TXX9_NR_UARTS
#define HIGH_BITS_OFFSET ((sizeof(long)-sizeof(int))*8)
struct uart_txx9_port {
struct uart_port port;
/* No additional info for now */
......@@ -752,21 +750,6 @@ static void serial_txx9_config_port(struct uart_port *port, int uflags)
serial_txx9_initialize(port);
}
static int
serial_txx9_verify_port(struct uart_port *port, struct serial_struct *ser)
{
unsigned long new_port = ser->port;
if (HIGH_BITS_OFFSET)
new_port += (unsigned long)ser->port_high << HIGH_BITS_OFFSET;
if (ser->type != port->type ||
ser->irq != port->irq ||
ser->io_type != port->iotype ||
new_port != port->iobase ||
(unsigned long)ser->iomem_base != port->mapbase)
return -EINVAL;
return 0;
}
static const char *
serial_txx9_type(struct uart_port *port)
{
......@@ -790,7 +773,6 @@ static struct uart_ops serial_txx9_pops = {
.release_port = serial_txx9_release_port,
.request_port = serial_txx9_request_port,
.config_port = serial_txx9_config_port,
.verify_port = serial_txx9_verify_port,
};
static struct uart_txx9_port serial_txx9_ports[UART_NR];
......@@ -946,7 +928,8 @@ int __init early_serial_txx9_setup(struct uart_port *port)
serial_txx9_ports[port->line].port = *port;
serial_txx9_ports[port->line].port.ops = &serial_txx9_pops;
serial_txx9_ports[port->line].port.flags |= UPF_BOOT_AUTOCONF;
serial_txx9_ports[port->line].port.flags |=
UPF_BOOT_AUTOCONF | UPF_FIXED_PORT;
return 0;
}
......@@ -991,7 +974,8 @@ static int __devinit serial_txx9_register_port(struct uart_port *port)
uart->port.irq = port->irq;
uart->port.uartclk = port->uartclk;
uart->port.iotype = port->iotype;
uart->port.flags = port->flags | UPF_BOOT_AUTOCONF;
uart->port.flags = port->flags
| UPF_BOOT_AUTOCONF | UPF_FIXED_PORT;
uart->port.mapbase = port->mapbase;
if (port->dev)
uart->port.dev = port->dev;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册