1
0
mirror of https://github.com/sjlongland/adv950.git synced 2025-09-13 18:53:15 +10:00

adv950_base: Call serial_core functions.

This commit is contained in:
Stuart Longland 2017-03-05 17:43:46 +10:00
parent fb809f752c
commit d230e784fe
Signed by: stuartl
GPG Key ID: 4DFA191410BDE3B7

View File

@ -1603,7 +1603,7 @@ static void transmit_chars(struct uart_adv950_port *up)
} }
if (uart_circ_chars_pending(xmit) < WAKEUP_CHARS) if (uart_circ_chars_pending(xmit) < WAKEUP_CHARS)
adv950_uart_write_wakeup(&up->port); uart_write_wakeup(&up->port);
DEBUG_INTR("THRE..."); DEBUG_INTR("THRE...");
@ -2904,7 +2904,7 @@ static void __init adv950_register_ports(struct uart_driver *drv)
up->mcr_mask = ~ALPHA_KLUDGE_MCR; up->mcr_mask = ~ALPHA_KLUDGE_MCR;
up->mcr_force = ALPHA_KLUDGE_MCR; up->mcr_force = ALPHA_KLUDGE_MCR;
adv950_uart_add_one_port(drv, &up->port); uart_add_one_port(drv, &up->port);
} }
} }
@ -2972,7 +2972,7 @@ int __init early_serial_setup(struct uart_port *port)
*/ */
void adv950_suspend_port(int line) void adv950_suspend_port(int line)
{ {
adv950_uart_suspend_port(&adv950_reg, &adv950_ports[line].port); uart_suspend_port(&adv950_reg, &adv950_ports[line].port);
} }
/** /**
@ -2994,7 +2994,7 @@ void adv950_resume_port(int line)
serial_outp(up, UART_LCR, 0); serial_outp(up, UART_LCR, 0);
up->port.uartclk = 921600*16; up->port.uartclk = 921600*16;
} }
adv950_uart_resume_port(&adv950_reg, &up->port); uart_resume_port(&adv950_reg, &up->port);
} }
@ -3020,7 +3020,7 @@ static struct uart_adv950_port *adv950_find_match_or_unused(struct uart_port *po
* First, find a port entry which matches. * First, find a port entry which matches.
*/ */
for (i = 0; i < nr_uarts; i++) for (i = 0; i < nr_uarts; i++)
if (adv950_uart_match_port(&adv950_ports[i].port, port)) if (uart_match_port(&adv950_ports[i].port, port))
return &adv950_ports[i]; return &adv950_ports[i];
/* /*
@ -3059,8 +3059,6 @@ static struct uart_adv950_port *adv950_find_match_or_unused(struct uart_port *po
* *
* On success the port is ready to use and the line number is returned. * On success the port is ready to use and the line number is returned.
*/ */
extern void adv950_uart_configure_port(struct uart_driver *drv, struct uart_state *state,
struct uart_port *port);
int adv950_uart_register_port(struct uart_port *port) int adv950_uart_register_port(struct uart_port *port)
{ {
struct uart_adv950_port *uart; struct uart_adv950_port *uart;
@ -3073,7 +3071,6 @@ int adv950_uart_register_port(struct uart_port *port)
uart = adv950_find_match_or_unused(port); uart = adv950_find_match_or_unused(port);
if (uart) { if (uart) {
uart->port.iobase = port->iobase; uart->port.iobase = port->iobase;
uart->port.membase = port->membase; uart->port.membase = port->membase;
uart->port.irq = port->irq; uart->port.irq = port->irq;
@ -3105,7 +3102,7 @@ int adv950_uart_register_port(struct uart_port *port)
uart->port.set_termios = port->set_termios; uart->port.set_termios = port->set_termios;
if (port->pm) if (port->pm)
uart->port.pm = port->pm; uart->port.pm = port->pm;
adv950_uart_configure_port(&adv950_reg, uart->port.state, &uart->port); uart_add_one_port(&adv950_reg, &uart->port);
//if (ret == 0) //if (ret == 0)
ret = uart->port.line; ret = uart->port.line;
} }
@ -3127,13 +3124,13 @@ void adv950_uart_unregister_port(int line)
struct uart_adv950_port *uart = &adv950_ports[line]; struct uart_adv950_port *uart = &adv950_ports[line];
mutex_lock(&serial_mutex); mutex_lock(&serial_mutex);
adv950_uart_remove_one_port(&adv950_reg, &uart->port); uart_remove_one_port(&adv950_reg, &uart->port);
if (adv950_isa_devs) { if (adv950_isa_devs) {
uart->port.flags &= ~UPF_BOOT_AUTOCONF; uart->port.flags &= ~UPF_BOOT_AUTOCONF;
uart->port.type = PORT_UNKNOWN; uart->port.type = PORT_UNKNOWN;
uart->port.dev = &adv950_isa_devs->dev; uart->port.dev = &adv950_isa_devs->dev;
uart->capabilities = uart_config[uart->port.type].flags; uart->capabilities = uart_config[uart->port.type].flags;
adv950_uart_add_one_port(&adv950_reg, &uart->port); uart_add_one_port(&adv950_reg, &uart->port);
} else { } else {
uart->port.dev = NULL; uart->port.dev = NULL;
} }
@ -3174,7 +3171,7 @@ void __exit adv950_uart_exit(void)
{ {
state = ((struct uart_driver*)(&adv950_reg))->state + ((struct uart_port *)(&adv950_ports[i].port))->line; state = ((struct uart_driver*)(&adv950_reg))->state + ((struct uart_port *)(&adv950_ports[i].port))->line;
if (state->uart_port != NULL) if (state->uart_port != NULL)
adv950_uart_remove_one_port(&adv950_reg, &adv950_ports[i].port); uart_remove_one_port(&adv950_reg, &adv950_ports[i].port);
} }
uart_unregister_driver(&adv950_reg); uart_unregister_driver(&adv950_reg);