tty/serial/8250: Make omap hardware workarounds local to 8250.h
Subsystems (3)
PATCH 1/1 tty/serial/8250: Make omap hardware workarounds local to 8250.h
This allows us to get rid of the ifdefs in 8250.c.
---
Would appreciate some minimal immutable branch with this commit that I can also pull in to my upcoming omap cleanup branch for v3.8 merge window as I'll be moving plat/serial.h for the ARM common zImage changes.
arch/arm/plat-omap/include/plat/serial.h +0 -9
@@ -109,15 +109,6 @@#define OMAP5UART4 OMAP4UART4#define ZOOM_UART 95/* Only on zoom2/3 */ -/* This is only used by 8250.c for omap1510 */ -#define is_omap_port (pt) ({int __ret = 0; \ - if ((pt)->port.mapbase == OMAP1_UART1_BASE || \ - (pt)->port.mapbase == OMAP1_UART2_BASE || \ - (pt)->port.mapbase == OMAP1_UART3_BASE) \ - __ret = 1; \ - __ret; \ - }) -#ifndef __ASSEMBLER__struct omap_board_data ;
drivers/tty/serial/8250/8250.c +3 -6
@@ -2349,16 +2349,14 @@ serial8250_do_set_termios(struct uart_port *port, struct ktermios *termios,serial_port_out (port,UART_EFR , efr); } -#ifdef CONFIG_ARCH_OMAP1 /* Workaround to enable 115200 baud on OMAP1510 internal ports */ -if (cpu_is_omap1510 () &&is_omap_port (up)) { +if (is_omap1510_8250 (up)) {if (baud ==115200 ) { quot =1 ;serial_port_out (port,UART_OMAP_OSC_12M_SEL ,1 ); }else serial_port_out (port,UART_OMAP_OSC_12M_SEL ,0 ); } -#endif /* * For NatSemi, switch to bank 2 not bank 1, to avoid resetting EXCR2,
@@ -2439,10 +2437,9 @@ static unsigned int serial8250_port_size(struct uart_8250_port *pt) {if (pt->port.iotype ==UPIO_AU )return 0x1000 ; -#ifdef CONFIG_ARCH_OMAP1 -if (is_omap_port (pt)) +if (is_omap1_8250 (pt))return 0x16 << pt->port.regshift; -#endif +return 8 << pt->port.regshift; }
drivers/tty/serial/8250/8250.h +36 -0
@@ -106,3 +106,39 @@ static inline int serial8250_pnp_init(void) { return 0; }static inline void serial8250_pnp_exit (void ) { }#endif +#ifdef CONFIG_ARCH_OMAP1 +static inline int is_omap1_8250 (struct uart_8250_port *pt) +{ +int res; + +switch (pt->port.mapbase) { +case OMAP1_UART1_BASE : +case OMAP1_UART2_BASE : +case OMAP1_UART3_BASE : + res =1 ; +break ; +default : + res =0 ; +break ; + } + +return res; +} + +static inline int is_omap1510_8250 (struct uart_8250_port *pt) +{ +if (!cpu_is_omap1510 ()) +return 0 ; + +return is_omap1_8250 (pt); +} +#else +static inline int is_omap1_8250 (struct uart_8250_port *pt) +{ +return 0 ; +} +static inline int is_omap1510_8250 (struct uart_8250_port *pt) +{ +return 0 ; +} +#endif
Greg Kroah-Hartman
maintainerQuoted 8 lines · Tony Lindgren
This allows us to get rid of the ifdefs in 8250.c.
Cc Greg Kroah-Hartman <[email protected]>Cc Alan Cox <[email protected]>Signed-off-by Tony Lindgren <[email protected]>
Quoted 7 lines
---
Would appreciate some minimal immutable branch with this commit that I can also pull in to my upcoming omap cleanup branch for v3.8 merge window as I'll be moving
plat/serial.hfor the ARM common zImage changes.
Please wait for 3.7-rc1 to come out before I can do that.
thanks,
greg k-h
Quoted 11 lines · Greg Kroah-Hartman
Quoted 10 lines · Tony Lindgren
This allows us to get rid of the ifdefs in 8250.c.
Cc Greg Kroah-Hartman <[email protected]>Cc Alan Cox <[email protected]>Signed-off-by Tony Lindgren <[email protected]>---
Quoted 7 lines
Quoted 5 lines
Would appreciate some minimal immutable branch with this commit that I can also pull in to my upcoming omap cleanup branch for v3.8 merge window as I'll be moving
plat/serial.hfor the ARM common zImage changes.Please wait for 3.7-rc1 to come out before I can do that.
OK thanks, rc1 is what I'm waiting for as well before I apply my series.
Regards,
Tony
Greg Kroah-Hartman
maintainerQuoted 5 lines · Tony Lindgren
This allows us to get rid of the ifdefs in 8250.c.
Cc Alan Cox <[email protected]>Signed-off-by Tony Lindgren <[email protected]>
Quoted 7 lines
---
Would appreciate some minimal immutable branch with this commit that I can also pull in to my upcoming omap cleanup branch for v3.8 merge window as I'll be moving
plat/serial.hfor the ARM common zImage changes.
This is now in my tty-next branch of the tty.git tree, if you want to pull from that.
thanks,
greg k-h