Revert "serial: Delete dead code for CIR serial ports"

This reverts commit 1104321a7b3bb670dc614ffa7958c553e7b3b836.

The code is not dead at all and breaks winbond-cir.

Serial: 8250/16550 driver, 32 ports, IRQ sharing enabled
00:02: ttyS0 at I/O 0x3f8 (irq = 4, base_baud = 115200) is a 16550A
00:03: ttyS1 at I/O 0x2f8 (irq = 3, base_baud = 115200) is a CIR port
lirc lirc0: lirc_dev: driver ir-lirc-codec (winbond-cir) registered at minor = 0
winbond-cir 00:03: Region 0x2f8-0x2ff already in use!
winbond-cir: probe of 00:03 failed with error -16

Signed-off-by: Sean Young <sean@mess.org>
Reviewed-by: Matthias Brugger <mbrugger@suse.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

authored by Sean Young and committed by Greg Kroah-Hartman 9527b82a 37ef38f3

Changed files
+17 -6
drivers
tty
serial
+17 -6
drivers/tty/serial/8250/8250_core.c
··· 1043 1043 if (up->dl_write) 1044 1044 uart->dl_write = up->dl_write; 1045 1045 1046 - if (serial8250_isa_config != NULL) 1047 - serial8250_isa_config(0, &uart->port, 1048 - &uart->capabilities); 1046 + if (uart->port.type != PORT_8250_CIR) { 1047 + if (serial8250_isa_config != NULL) 1048 + serial8250_isa_config(0, &uart->port, 1049 + &uart->capabilities); 1049 1050 1050 - ret = uart_add_one_port(&serial8250_reg, &uart->port); 1051 - if (ret == 0) 1052 - ret = uart->port.line; 1051 + ret = uart_add_one_port(&serial8250_reg, 1052 + &uart->port); 1053 + if (ret == 0) 1054 + ret = uart->port.line; 1055 + } else { 1056 + dev_info(uart->port.dev, 1057 + "skipping CIR port at 0x%lx / 0x%llx, IRQ %d\n", 1058 + uart->port.iobase, 1059 + (unsigned long long)uart->port.mapbase, 1060 + uart->port.irq); 1061 + 1062 + ret = 0; 1063 + } 1053 1064 } 1054 1065 mutex_unlock(&serial_mutex); 1055 1066