Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

serial: 8250: Add IrDA to UART capabilities

Add an IrDA UART capability flag and change the type of
uart_8250_port.capabilities to be u32 rather than unsigned short to
accommodate the additional flag.

Signed-off-by: Ed Blake <ed.blake@imgtec.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

authored by

Ed Blake and committed by
Greg Kroah-Hartman
98838d95 5fe86674

+6 -5
+1 -1
arch/x86/platform/ce4100/ce4100.c
··· 89 89 } 90 90 91 91 static void ce4100_serial_fixup(int port, struct uart_port *up, 92 - unsigned short *capabilites) 92 + u32 *capabilites) 93 93 { 94 94 #ifdef CONFIG_EARLY_PRINTK 95 95 /*
+1
drivers/tty/serial/8250/8250.h
··· 80 80 #define UART_CAP_RTOIE (1 << 13) /* UART needs IER bit 4 set (Xscale, Tegra) */ 81 81 #define UART_CAP_HFIFO (1 << 14) /* UART has a "hidden" FIFO */ 82 82 #define UART_CAP_RPM (1 << 15) /* Runtime PM is active while idle */ 83 + #define UART_CAP_IRDA (1 << 16) /* UART supports IrDA line discipline */ 83 84 84 85 #define UART_BUG_QUOT (1 << 0) /* UART has buggy quot LSB */ 85 86 #define UART_BUG_TXEN (1 << 1) /* UART has buggy TX IIR status */
+2 -2
drivers/tty/serial/8250/8250_core.c
··· 425 425 EXPORT_SYMBOL_GPL(serial8250_get_port); 426 426 427 427 static void (*serial8250_isa_config)(int port, struct uart_port *up, 428 - unsigned short *capabilities); 428 + u32 *capabilities); 429 429 430 430 void serial8250_set_isa_configurator( 431 - void (*v)(int port, struct uart_port *up, unsigned short *capabilities)) 431 + void (*v)(int port, struct uart_port *up, u32 *capabilities)) 432 432 { 433 433 serial8250_isa_config = v; 434 434 }
+2 -2
include/linux/serial_8250.h
··· 94 94 struct uart_port port; 95 95 struct timer_list timer; /* "no irq" timer */ 96 96 struct list_head list; /* ports on this IRQ */ 97 - unsigned short capabilities; /* port capabilities */ 97 + u32 capabilities; /* port capabilities */ 98 98 unsigned short bugs; /* port bugs */ 99 99 bool fifo_bug; /* min RX trigger if enabled */ 100 100 unsigned int tx_loadsz; /* transmit fifo load size */ ··· 168 168 169 169 extern void serial8250_set_isa_configurator(void (*v) 170 170 (int port, struct uart_port *up, 171 - unsigned short *capabilities)); 171 + u32 *capabilities)); 172 172 173 173 #endif