diff options
Diffstat (limited to 'drivers/serial/8250.c')
-rw-r--r-- | drivers/serial/8250.c | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/drivers/serial/8250.c b/drivers/serial/8250.c index 303272af386e..8e28750a4058 100644 --- a/drivers/serial/8250.c +++ b/drivers/serial/8250.c | |||
@@ -2752,12 +2752,23 @@ static struct uart_driver serial8250_reg = { | |||
2752 | */ | 2752 | */ |
2753 | int __init early_serial_setup(struct uart_port *port) | 2753 | int __init early_serial_setup(struct uart_port *port) |
2754 | { | 2754 | { |
2755 | struct uart_port *p; | ||
2756 | |||
2755 | if (port->line >= ARRAY_SIZE(serial8250_ports)) | 2757 | if (port->line >= ARRAY_SIZE(serial8250_ports)) |
2756 | return -ENODEV; | 2758 | return -ENODEV; |
2757 | 2759 | ||
2758 | serial8250_isa_init_ports(); | 2760 | serial8250_isa_init_ports(); |
2759 | serial8250_ports[port->line].port = *port; | 2761 | p = &serial8250_ports[port->line].port; |
2760 | serial8250_ports[port->line].port.ops = &serial8250_pops; | 2762 | p->iobase = port->iobase; |
2763 | p->membase = port->membase; | ||
2764 | p->irq = port->irq; | ||
2765 | p->uartclk = port->uartclk; | ||
2766 | p->fifosize = port->fifosize; | ||
2767 | p->regshift = port->regshift; | ||
2768 | p->iotype = port->iotype; | ||
2769 | p->flags = port->flags; | ||
2770 | p->mapbase = port->mapbase; | ||
2771 | p->private_data = port->private_data; | ||
2761 | return 0; | 2772 | return 0; |
2762 | } | 2773 | } |
2763 | 2774 | ||