diff options
author | Linus Torvalds <torvalds@g5.osdl.org> | 2006-01-31 14:31:54 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-01-31 14:31:54 -0500 |
commit | d195ea4b1456192abe780fd773778cbe9f6d77ea (patch) | |
tree | 25ea330c4fced145290f6f5cfb1b06a1cf8402c0 | |
parent | bb4bc81a234c66e8d8a4475110fa2d7988a34671 (diff) | |
parent | df7559d3440ff759ff6e1371ff722bb3a73a3639 (diff) |
Merge master.kernel.org:/home/rmk/linux-2.6-serial
-rw-r--r-- | drivers/misc/ibmasm/uart.c | 2 | ||||
-rw-r--r-- | drivers/serial/21285.c | 2 | ||||
-rw-r--r-- | drivers/serial/8250.c | 19 | ||||
-rw-r--r-- | drivers/serial/Kconfig | 2 | ||||
-rw-r--r-- | drivers/serial/amba-pl010.c | 4 | ||||
-rw-r--r-- | drivers/serial/clps711x.c | 4 | ||||
-rw-r--r-- | drivers/serial/imx.c | 4 | ||||
-rw-r--r-- | drivers/serial/sa1100.c | 6 | ||||
-rw-r--r-- | drivers/serial/serial_core.c | 16 | ||||
-rw-r--r-- | drivers/serial/serial_lh7a40x.c | 6 | ||||
-rw-r--r-- | drivers/serial/sh-sci.c | 96 | ||||
-rw-r--r-- | drivers/serial/sunsu.c | 14 | ||||
-rw-r--r-- | include/linux/serial_8250.h | 2 | ||||
-rw-r--r-- | include/linux/serial_core.h | 72 |
14 files changed, 123 insertions, 126 deletions
diff --git a/drivers/misc/ibmasm/uart.c b/drivers/misc/ibmasm/uart.c index 7e98434cfa37..9783caf49696 100644 --- a/drivers/misc/ibmasm/uart.c +++ b/drivers/misc/ibmasm/uart.c | |||
@@ -50,7 +50,7 @@ void ibmasm_register_uart(struct service_processor *sp) | |||
50 | memset(&uport, 0, sizeof(struct uart_port)); | 50 | memset(&uport, 0, sizeof(struct uart_port)); |
51 | uport.irq = sp->irq; | 51 | uport.irq = sp->irq; |
52 | uport.uartclk = 3686400; | 52 | uport.uartclk = 3686400; |
53 | uport.flags = UPF_AUTOPROBE | UPF_SHARE_IRQ; | 53 | uport.flags = UPF_SHARE_IRQ; |
54 | uport.iotype = UPIO_MEM; | 54 | uport.iotype = UPIO_MEM; |
55 | uport.membase = iomem_base; | 55 | uport.membase = iomem_base; |
56 | 56 | ||
diff --git a/drivers/serial/21285.c b/drivers/serial/21285.c index 221999bcf8fe..7aef7518b0d1 100644 --- a/drivers/serial/21285.c +++ b/drivers/serial/21285.c | |||
@@ -366,7 +366,7 @@ static struct uart_port serial21285_port = { | |||
366 | .irq = NO_IRQ, | 366 | .irq = NO_IRQ, |
367 | .fifosize = 16, | 367 | .fifosize = 16, |
368 | .ops = &serial21285_ops, | 368 | .ops = &serial21285_ops, |
369 | .flags = ASYNC_BOOT_AUTOCONF, | 369 | .flags = UPF_BOOT_AUTOCONF, |
370 | }; | 370 | }; |
371 | 371 | ||
372 | static void serial21285_setup_ports(void) | 372 | static void serial21285_setup_ports(void) |
diff --git a/drivers/serial/8250.c b/drivers/serial/8250.c index bc36edff2058..179c1f065e60 100644 --- a/drivers/serial/8250.c +++ b/drivers/serial/8250.c | |||
@@ -31,7 +31,6 @@ | |||
31 | #include <linux/init.h> | 31 | #include <linux/init.h> |
32 | #include <linux/console.h> | 32 | #include <linux/console.h> |
33 | #include <linux/sysrq.h> | 33 | #include <linux/sysrq.h> |
34 | #include <linux/mca.h> | ||
35 | #include <linux/delay.h> | 34 | #include <linux/delay.h> |
36 | #include <linux/platform_device.h> | 35 | #include <linux/platform_device.h> |
37 | #include <linux/tty.h> | 36 | #include <linux/tty.h> |
@@ -2027,12 +2026,6 @@ static void serial8250_config_port(struct uart_port *port, int flags) | |||
2027 | int ret; | 2026 | int ret; |
2028 | 2027 | ||
2029 | /* | 2028 | /* |
2030 | * Don't probe for MCA ports on non-MCA machines. | ||
2031 | */ | ||
2032 | if (up->port.flags & UPF_BOOT_ONLYMCA && !MCA_bus) | ||
2033 | return; | ||
2034 | |||
2035 | /* | ||
2036 | * Find the region that we can probe for. This in turn | 2029 | * Find the region that we can probe for. This in turn |
2037 | * tells us whether we can probe for the type of port. | 2030 | * tells us whether we can probe for the type of port. |
2038 | */ | 2031 | */ |
@@ -2164,7 +2157,7 @@ serial8250_register_ports(struct uart_driver *drv, struct device *dev) | |||
2164 | /* | 2157 | /* |
2165 | * Wait for transmitter & holding register to empty | 2158 | * Wait for transmitter & holding register to empty |
2166 | */ | 2159 | */ |
2167 | static inline void wait_for_xmitr(struct uart_8250_port *up) | 2160 | static inline void wait_for_xmitr(struct uart_8250_port *up, int bits) |
2168 | { | 2161 | { |
2169 | unsigned int status, tmout = 10000; | 2162 | unsigned int status, tmout = 10000; |
2170 | 2163 | ||
@@ -2178,7 +2171,7 @@ static inline void wait_for_xmitr(struct uart_8250_port *up) | |||
2178 | if (--tmout == 0) | 2171 | if (--tmout == 0) |
2179 | break; | 2172 | break; |
2180 | udelay(1); | 2173 | udelay(1); |
2181 | } while ((status & BOTH_EMPTY) != BOTH_EMPTY); | 2174 | } while ((status & bits) != bits); |
2182 | 2175 | ||
2183 | /* Wait up to 1s for flow control if necessary */ | 2176 | /* Wait up to 1s for flow control if necessary */ |
2184 | if (up->port.flags & UPF_CONS_FLOW) { | 2177 | if (up->port.flags & UPF_CONS_FLOW) { |
@@ -2218,7 +2211,7 @@ serial8250_console_write(struct console *co, const char *s, unsigned int count) | |||
2218 | * Now, do each character | 2211 | * Now, do each character |
2219 | */ | 2212 | */ |
2220 | for (i = 0; i < count; i++, s++) { | 2213 | for (i = 0; i < count; i++, s++) { |
2221 | wait_for_xmitr(up); | 2214 | wait_for_xmitr(up, UART_LSR_THRE); |
2222 | 2215 | ||
2223 | /* | 2216 | /* |
2224 | * Send the character out. | 2217 | * Send the character out. |
@@ -2226,7 +2219,7 @@ serial8250_console_write(struct console *co, const char *s, unsigned int count) | |||
2226 | */ | 2219 | */ |
2227 | serial_out(up, UART_TX, *s); | 2220 | serial_out(up, UART_TX, *s); |
2228 | if (*s == 10) { | 2221 | if (*s == 10) { |
2229 | wait_for_xmitr(up); | 2222 | wait_for_xmitr(up, UART_LSR_THRE); |
2230 | serial_out(up, UART_TX, 13); | 2223 | serial_out(up, UART_TX, 13); |
2231 | } | 2224 | } |
2232 | } | 2225 | } |
@@ -2235,8 +2228,8 @@ serial8250_console_write(struct console *co, const char *s, unsigned int count) | |||
2235 | * Finally, wait for transmitter to become empty | 2228 | * Finally, wait for transmitter to become empty |
2236 | * and restore the IER | 2229 | * and restore the IER |
2237 | */ | 2230 | */ |
2238 | wait_for_xmitr(up); | 2231 | wait_for_xmitr(up, BOTH_EMPTY); |
2239 | serial_out(up, UART_IER, ier); | 2232 | serial_out(up, UART_IER, ier | UART_IER_THRI); |
2240 | } | 2233 | } |
2241 | 2234 | ||
2242 | static int serial8250_console_setup(struct console *co, char *options) | 2235 | static int serial8250_console_setup(struct console *co, char *options) |
diff --git a/drivers/serial/Kconfig b/drivers/serial/Kconfig index 9fd1925de361..0d38f0f2ae29 100644 --- a/drivers/serial/Kconfig +++ b/drivers/serial/Kconfig | |||
@@ -23,7 +23,7 @@ config SERIAL_8250 | |||
23 | work.) | 23 | work.) |
24 | 24 | ||
25 | To compile this driver as a module, choose M here: the | 25 | To compile this driver as a module, choose M here: the |
26 | module will be called serial. | 26 | module will be called 8250. |
27 | [WARNING: Do not compile this driver as a module if you are using | 27 | [WARNING: Do not compile this driver as a module if you are using |
28 | non-standard serial ports, since the configuration information will | 28 | non-standard serial ports, since the configuration information will |
29 | be lost when the driver is unloaded. This limitation may be lifted | 29 | be lost when the driver is unloaded. This limitation may be lifted |
diff --git a/drivers/serial/amba-pl010.c b/drivers/serial/amba-pl010.c index 3490022e9fdc..429de2723a1c 100644 --- a/drivers/serial/amba-pl010.c +++ b/drivers/serial/amba-pl010.c | |||
@@ -566,7 +566,7 @@ static struct uart_amba_port amba_ports[UART_NR] = { | |||
566 | .uartclk = 14745600, | 566 | .uartclk = 14745600, |
567 | .fifosize = 16, | 567 | .fifosize = 16, |
568 | .ops = &amba_pl010_pops, | 568 | .ops = &amba_pl010_pops, |
569 | .flags = ASYNC_BOOT_AUTOCONF, | 569 | .flags = UPF_BOOT_AUTOCONF, |
570 | .line = 0, | 570 | .line = 0, |
571 | }, | 571 | }, |
572 | .dtr_mask = 1 << 5, | 572 | .dtr_mask = 1 << 5, |
@@ -581,7 +581,7 @@ static struct uart_amba_port amba_ports[UART_NR] = { | |||
581 | .uartclk = 14745600, | 581 | .uartclk = 14745600, |
582 | .fifosize = 16, | 582 | .fifosize = 16, |
583 | .ops = &amba_pl010_pops, | 583 | .ops = &amba_pl010_pops, |
584 | .flags = ASYNC_BOOT_AUTOCONF, | 584 | .flags = UPF_BOOT_AUTOCONF, |
585 | .line = 1, | 585 | .line = 1, |
586 | }, | 586 | }, |
587 | .dtr_mask = 1 << 7, | 587 | .dtr_mask = 1 << 7, |
diff --git a/drivers/serial/clps711x.c b/drivers/serial/clps711x.c index 8ef999481f93..ce7b2e4ecd17 100644 --- a/drivers/serial/clps711x.c +++ b/drivers/serial/clps711x.c | |||
@@ -410,7 +410,7 @@ static struct uart_port clps711x_ports[UART_NR] = { | |||
410 | .fifosize = 16, | 410 | .fifosize = 16, |
411 | .ops = &clps711x_pops, | 411 | .ops = &clps711x_pops, |
412 | .line = 0, | 412 | .line = 0, |
413 | .flags = ASYNC_BOOT_AUTOCONF, | 413 | .flags = UPF_BOOT_AUTOCONF, |
414 | }, | 414 | }, |
415 | { | 415 | { |
416 | .iobase = SYSCON2, | 416 | .iobase = SYSCON2, |
@@ -419,7 +419,7 @@ static struct uart_port clps711x_ports[UART_NR] = { | |||
419 | .fifosize = 16, | 419 | .fifosize = 16, |
420 | .ops = &clps711x_pops, | 420 | .ops = &clps711x_pops, |
421 | .line = 1, | 421 | .line = 1, |
422 | .flags = ASYNC_BOOT_AUTOCONF, | 422 | .flags = UPF_BOOT_AUTOCONF, |
423 | } | 423 | } |
424 | }; | 424 | }; |
425 | 425 | ||
diff --git a/drivers/serial/imx.c b/drivers/serial/imx.c index fa3bbd6c751f..858048efe1ed 100644 --- a/drivers/serial/imx.c +++ b/drivers/serial/imx.c | |||
@@ -674,7 +674,7 @@ static struct imx_port imx_ports[] = { | |||
674 | .irq = UART1_MINT_RX, | 674 | .irq = UART1_MINT_RX, |
675 | .uartclk = 16000000, | 675 | .uartclk = 16000000, |
676 | .fifosize = 8, | 676 | .fifosize = 8, |
677 | .flags = ASYNC_BOOT_AUTOCONF, | 677 | .flags = UPF_BOOT_AUTOCONF, |
678 | .ops = &imx_pops, | 678 | .ops = &imx_pops, |
679 | .line = 0, | 679 | .line = 0, |
680 | }, | 680 | }, |
@@ -690,7 +690,7 @@ static struct imx_port imx_ports[] = { | |||
690 | .irq = UART2_MINT_RX, | 690 | .irq = UART2_MINT_RX, |
691 | .uartclk = 16000000, | 691 | .uartclk = 16000000, |
692 | .fifosize = 8, | 692 | .fifosize = 8, |
693 | .flags = ASYNC_BOOT_AUTOCONF, | 693 | .flags = UPF_BOOT_AUTOCONF, |
694 | .ops = &imx_pops, | 694 | .ops = &imx_pops, |
695 | .line = 1, | 695 | .line = 1, |
696 | }, | 696 | }, |
diff --git a/drivers/serial/sa1100.c b/drivers/serial/sa1100.c index 1bd93168f504..ff7b60b4de37 100644 --- a/drivers/serial/sa1100.c +++ b/drivers/serial/sa1100.c | |||
@@ -665,21 +665,21 @@ void __init sa1100_register_uart(int idx, int port) | |||
665 | sa1100_ports[idx].port.membase = (void __iomem *)&Ser1UTCR0; | 665 | sa1100_ports[idx].port.membase = (void __iomem *)&Ser1UTCR0; |
666 | sa1100_ports[idx].port.mapbase = _Ser1UTCR0; | 666 | sa1100_ports[idx].port.mapbase = _Ser1UTCR0; |
667 | sa1100_ports[idx].port.irq = IRQ_Ser1UART; | 667 | sa1100_ports[idx].port.irq = IRQ_Ser1UART; |
668 | sa1100_ports[idx].port.flags = ASYNC_BOOT_AUTOCONF; | 668 | sa1100_ports[idx].port.flags = UPF_BOOT_AUTOCONF; |
669 | break; | 669 | break; |
670 | 670 | ||
671 | case 2: | 671 | case 2: |
672 | sa1100_ports[idx].port.membase = (void __iomem *)&Ser2UTCR0; | 672 | sa1100_ports[idx].port.membase = (void __iomem *)&Ser2UTCR0; |
673 | sa1100_ports[idx].port.mapbase = _Ser2UTCR0; | 673 | sa1100_ports[idx].port.mapbase = _Ser2UTCR0; |
674 | sa1100_ports[idx].port.irq = IRQ_Ser2ICP; | 674 | sa1100_ports[idx].port.irq = IRQ_Ser2ICP; |
675 | sa1100_ports[idx].port.flags = ASYNC_BOOT_AUTOCONF; | 675 | sa1100_ports[idx].port.flags = UPF_BOOT_AUTOCONF; |
676 | break; | 676 | break; |
677 | 677 | ||
678 | case 3: | 678 | case 3: |
679 | sa1100_ports[idx].port.membase = (void __iomem *)&Ser3UTCR0; | 679 | sa1100_ports[idx].port.membase = (void __iomem *)&Ser3UTCR0; |
680 | sa1100_ports[idx].port.mapbase = _Ser3UTCR0; | 680 | sa1100_ports[idx].port.mapbase = _Ser3UTCR0; |
681 | sa1100_ports[idx].port.irq = IRQ_Ser3UART; | 681 | sa1100_ports[idx].port.irq = IRQ_Ser3UART; |
682 | sa1100_ports[idx].port.flags = ASYNC_BOOT_AUTOCONF; | 682 | sa1100_ports[idx].port.flags = UPF_BOOT_AUTOCONF; |
683 | break; | 683 | break; |
684 | 684 | ||
685 | default: | 685 | default: |
diff --git a/drivers/serial/serial_core.c b/drivers/serial/serial_core.c index 943770470b9d..0717abfdae06 100644 --- a/drivers/serial/serial_core.c +++ b/drivers/serial/serial_core.c | |||
@@ -332,7 +332,7 @@ uart_get_baud_rate(struct uart_port *port, struct termios *termios, | |||
332 | struct termios *old, unsigned int min, unsigned int max) | 332 | struct termios *old, unsigned int min, unsigned int max) |
333 | { | 333 | { |
334 | unsigned int try, baud, altbaud = 38400; | 334 | unsigned int try, baud, altbaud = 38400; |
335 | unsigned int flags = port->flags & UPF_SPD_MASK; | 335 | upf_t flags = port->flags & UPF_SPD_MASK; |
336 | 336 | ||
337 | if (flags == UPF_SPD_HI) | 337 | if (flags == UPF_SPD_HI) |
338 | altbaud = 57600; | 338 | altbaud = 57600; |
@@ -615,8 +615,9 @@ static int uart_set_info(struct uart_state *state, | |||
615 | struct serial_struct new_serial; | 615 | struct serial_struct new_serial; |
616 | struct uart_port *port = state->port; | 616 | struct uart_port *port = state->port; |
617 | unsigned long new_port; | 617 | unsigned long new_port; |
618 | unsigned int change_irq, change_port, old_flags, closing_wait; | 618 | unsigned int change_irq, change_port, closing_wait; |
619 | unsigned int old_custom_divisor, close_delay; | 619 | unsigned int old_custom_divisor, close_delay; |
620 | upf_t old_flags, new_flags; | ||
620 | int retval = 0; | 621 | int retval = 0; |
621 | 622 | ||
622 | if (copy_from_user(&new_serial, newinfo, sizeof(new_serial))) | 623 | if (copy_from_user(&new_serial, newinfo, sizeof(new_serial))) |
@@ -655,6 +656,7 @@ static int uart_set_info(struct uart_state *state, | |||
655 | new_serial.type != port->type; | 656 | new_serial.type != port->type; |
656 | 657 | ||
657 | old_flags = port->flags; | 658 | old_flags = port->flags; |
659 | new_flags = new_serial.flags; | ||
658 | old_custom_divisor = port->custom_divisor; | 660 | old_custom_divisor = port->custom_divisor; |
659 | 661 | ||
660 | if (!capable(CAP_SYS_ADMIN)) { | 662 | if (!capable(CAP_SYS_ADMIN)) { |
@@ -664,10 +666,10 @@ static int uart_set_info(struct uart_state *state, | |||
664 | (close_delay != state->close_delay) || | 666 | (close_delay != state->close_delay) || |
665 | (closing_wait != state->closing_wait) || | 667 | (closing_wait != state->closing_wait) || |
666 | (new_serial.xmit_fifo_size != port->fifosize) || | 668 | (new_serial.xmit_fifo_size != port->fifosize) || |
667 | (((new_serial.flags ^ old_flags) & ~UPF_USR_MASK) != 0)) | 669 | (((new_flags ^ old_flags) & ~UPF_USR_MASK) != 0)) |
668 | goto exit; | 670 | goto exit; |
669 | port->flags = ((port->flags & ~UPF_USR_MASK) | | 671 | port->flags = ((port->flags & ~UPF_USR_MASK) | |
670 | (new_serial.flags & UPF_USR_MASK)); | 672 | (new_flags & UPF_USR_MASK)); |
671 | port->custom_divisor = new_serial.custom_divisor; | 673 | port->custom_divisor = new_serial.custom_divisor; |
672 | goto check_and_exit; | 674 | goto check_and_exit; |
673 | } | 675 | } |
@@ -764,7 +766,7 @@ static int uart_set_info(struct uart_state *state, | |||
764 | port->irq = new_serial.irq; | 766 | port->irq = new_serial.irq; |
765 | port->uartclk = new_serial.baud_base * 16; | 767 | port->uartclk = new_serial.baud_base * 16; |
766 | port->flags = (port->flags & ~UPF_CHANGE_MASK) | | 768 | port->flags = (port->flags & ~UPF_CHANGE_MASK) | |
767 | (new_serial.flags & UPF_CHANGE_MASK); | 769 | (new_flags & UPF_CHANGE_MASK); |
768 | port->custom_divisor = new_serial.custom_divisor; | 770 | port->custom_divisor = new_serial.custom_divisor; |
769 | state->close_delay = close_delay; | 771 | state->close_delay = close_delay; |
770 | state->closing_wait = closing_wait; | 772 | state->closing_wait = closing_wait; |
@@ -1870,7 +1872,7 @@ int uart_suspend_port(struct uart_driver *drv, struct uart_port *port) | |||
1870 | mutex_lock(&state->mutex); | 1872 | mutex_lock(&state->mutex); |
1871 | 1873 | ||
1872 | if (state->info && state->info->flags & UIF_INITIALIZED) { | 1874 | if (state->info && state->info->flags & UIF_INITIALIZED) { |
1873 | struct uart_ops *ops = port->ops; | 1875 | const struct uart_ops *ops = port->ops; |
1874 | 1876 | ||
1875 | spin_lock_irq(&port->lock); | 1877 | spin_lock_irq(&port->lock); |
1876 | ops->stop_tx(port); | 1878 | ops->stop_tx(port); |
@@ -1932,7 +1934,7 @@ int uart_resume_port(struct uart_driver *drv, struct uart_port *port) | |||
1932 | } | 1934 | } |
1933 | 1935 | ||
1934 | if (state->info && state->info->flags & UIF_INITIALIZED) { | 1936 | if (state->info && state->info->flags & UIF_INITIALIZED) { |
1935 | struct uart_ops *ops = port->ops; | 1937 | const struct uart_ops *ops = port->ops; |
1936 | int ret; | 1938 | int ret; |
1937 | 1939 | ||
1938 | ops->set_mctrl(port, 0); | 1940 | ops->set_mctrl(port, 0); |
diff --git a/drivers/serial/serial_lh7a40x.c b/drivers/serial/serial_lh7a40x.c index d4a1f0e798c1..d0490f67f597 100644 --- a/drivers/serial/serial_lh7a40x.c +++ b/drivers/serial/serial_lh7a40x.c | |||
@@ -506,7 +506,7 @@ static struct uart_port_lh7a40x lh7a40x_ports[DEV_NR] = { | |||
506 | .uartclk = 14745600/2, | 506 | .uartclk = 14745600/2, |
507 | .fifosize = 16, | 507 | .fifosize = 16, |
508 | .ops = &lh7a40x_uart_ops, | 508 | .ops = &lh7a40x_uart_ops, |
509 | .flags = ASYNC_BOOT_AUTOCONF, | 509 | .flags = UPF_BOOT_AUTOCONF, |
510 | .line = 0, | 510 | .line = 0, |
511 | }, | 511 | }, |
512 | }, | 512 | }, |
@@ -519,7 +519,7 @@ static struct uart_port_lh7a40x lh7a40x_ports[DEV_NR] = { | |||
519 | .uartclk = 14745600/2, | 519 | .uartclk = 14745600/2, |
520 | .fifosize = 16, | 520 | .fifosize = 16, |
521 | .ops = &lh7a40x_uart_ops, | 521 | .ops = &lh7a40x_uart_ops, |
522 | .flags = ASYNC_BOOT_AUTOCONF, | 522 | .flags = UPF_BOOT_AUTOCONF, |
523 | .line = 1, | 523 | .line = 1, |
524 | }, | 524 | }, |
525 | }, | 525 | }, |
@@ -532,7 +532,7 @@ static struct uart_port_lh7a40x lh7a40x_ports[DEV_NR] = { | |||
532 | .uartclk = 14745600/2, | 532 | .uartclk = 14745600/2, |
533 | .fifosize = 16, | 533 | .fifosize = 16, |
534 | .ops = &lh7a40x_uart_ops, | 534 | .ops = &lh7a40x_uart_ops, |
535 | .flags = ASYNC_BOOT_AUTOCONF, | 535 | .flags = UPF_BOOT_AUTOCONF, |
536 | .line = 2, | 536 | .line = 2, |
537 | }, | 537 | }, |
538 | }, | 538 | }, |
diff --git a/drivers/serial/sh-sci.c b/drivers/serial/sh-sci.c index a9e070759628..0111206327ca 100644 --- a/drivers/serial/sh-sci.c +++ b/drivers/serial/sh-sci.c | |||
@@ -1113,10 +1113,10 @@ static struct sci_port sci_ports[SCI_NPORTS] = { | |||
1113 | .port = { | 1113 | .port = { |
1114 | .membase = (void *)0xfffffe80, | 1114 | .membase = (void *)0xfffffe80, |
1115 | .mapbase = 0xfffffe80, | 1115 | .mapbase = 0xfffffe80, |
1116 | .iotype = SERIAL_IO_MEM, | 1116 | .iotype = UPIO_MEM, |
1117 | .irq = 25, | 1117 | .irq = 25, |
1118 | .ops = &sci_uart_ops, | 1118 | .ops = &sci_uart_ops, |
1119 | .flags = ASYNC_BOOT_AUTOCONF, | 1119 | .flags = UPF_BOOT_AUTOCONF, |
1120 | .line = 0, | 1120 | .line = 0, |
1121 | }, | 1121 | }, |
1122 | .type = PORT_SCI, | 1122 | .type = PORT_SCI, |
@@ -1128,10 +1128,10 @@ static struct sci_port sci_ports[SCI_NPORTS] = { | |||
1128 | .port = { | 1128 | .port = { |
1129 | .membase = (void *)SCIF0, | 1129 | .membase = (void *)SCIF0, |
1130 | .mapbase = SCIF0, | 1130 | .mapbase = SCIF0, |
1131 | .iotype = SERIAL_IO_MEM, | 1131 | .iotype = UPIO_MEM, |
1132 | .irq = 55, | 1132 | .irq = 55, |
1133 | .ops = &sci_uart_ops, | 1133 | .ops = &sci_uart_ops, |
1134 | .flags = ASYNC_BOOT_AUTOCONF, | 1134 | .flags = UPF_BOOT_AUTOCONF, |
1135 | .line = 0, | 1135 | .line = 0, |
1136 | }, | 1136 | }, |
1137 | .type = PORT_SCIF, | 1137 | .type = PORT_SCIF, |
@@ -1142,10 +1142,10 @@ static struct sci_port sci_ports[SCI_NPORTS] = { | |||
1142 | .port = { | 1142 | .port = { |
1143 | .membase = (void *)SCIF2, | 1143 | .membase = (void *)SCIF2, |
1144 | .mapbase = SCIF2, | 1144 | .mapbase = SCIF2, |
1145 | .iotype = SERIAL_IO_MEM, | 1145 | .iotype = UPIO_MEM, |
1146 | .irq = 59, | 1146 | .irq = 59, |
1147 | .ops = &sci_uart_ops, | 1147 | .ops = &sci_uart_ops, |
1148 | .flags = ASYNC_BOOT_AUTOCONF, | 1148 | .flags = UPF_BOOT_AUTOCONF, |
1149 | .line = 1, | 1149 | .line = 1, |
1150 | }, | 1150 | }, |
1151 | .type = PORT_SCIF, | 1151 | .type = PORT_SCIF, |
@@ -1157,10 +1157,10 @@ static struct sci_port sci_ports[SCI_NPORTS] = { | |||
1157 | .port = { | 1157 | .port = { |
1158 | .membase = (void *)0xfffffe80, | 1158 | .membase = (void *)0xfffffe80, |
1159 | .mapbase = 0xfffffe80, | 1159 | .mapbase = 0xfffffe80, |
1160 | .iotype = SERIAL_IO_MEM, | 1160 | .iotype = UPIO_MEM, |
1161 | .irq = 25, | 1161 | .irq = 25, |
1162 | .ops = &sci_uart_ops, | 1162 | .ops = &sci_uart_ops, |
1163 | .flags = ASYNC_BOOT_AUTOCONF, | 1163 | .flags = UPF_BOOT_AUTOCONF, |
1164 | .line = 0, | 1164 | .line = 0, |
1165 | }, | 1165 | }, |
1166 | .type = PORT_SCI, | 1166 | .type = PORT_SCI, |
@@ -1171,10 +1171,10 @@ static struct sci_port sci_ports[SCI_NPORTS] = { | |||
1171 | .port = { | 1171 | .port = { |
1172 | .membase = (void *)0xa4000150, | 1172 | .membase = (void *)0xa4000150, |
1173 | .mapbase = 0xa4000150, | 1173 | .mapbase = 0xa4000150, |
1174 | .iotype = SERIAL_IO_MEM, | 1174 | .iotype = UPIO_MEM, |
1175 | .irq = 59, | 1175 | .irq = 59, |
1176 | .ops = &sci_uart_ops, | 1176 | .ops = &sci_uart_ops, |
1177 | .flags = ASYNC_BOOT_AUTOCONF, | 1177 | .flags = UPF_BOOT_AUTOCONF, |
1178 | .line = 1, | 1178 | .line = 1, |
1179 | }, | 1179 | }, |
1180 | .type = PORT_SCIF, | 1180 | .type = PORT_SCIF, |
@@ -1185,10 +1185,10 @@ static struct sci_port sci_ports[SCI_NPORTS] = { | |||
1185 | .port = { | 1185 | .port = { |
1186 | .membase = (void *)0xa4000140, | 1186 | .membase = (void *)0xa4000140, |
1187 | .mapbase = 0xa4000140, | 1187 | .mapbase = 0xa4000140, |
1188 | .iotype = SERIAL_IO_MEM, | 1188 | .iotype = UPIO_MEM, |
1189 | .irq = 55, | 1189 | .irq = 55, |
1190 | .ops = &sci_uart_ops, | 1190 | .ops = &sci_uart_ops, |
1191 | .flags = ASYNC_BOOT_AUTOCONF, | 1191 | .flags = UPF_BOOT_AUTOCONF, |
1192 | .line = 2, | 1192 | .line = 2, |
1193 | }, | 1193 | }, |
1194 | .type = PORT_IRDA, | 1194 | .type = PORT_IRDA, |
@@ -1200,10 +1200,10 @@ static struct sci_port sci_ports[SCI_NPORTS] = { | |||
1200 | .port = { | 1200 | .port = { |
1201 | .membase = (void *)0xA4430000, | 1201 | .membase = (void *)0xA4430000, |
1202 | .mapbase = 0xA4430000, | 1202 | .mapbase = 0xA4430000, |
1203 | .iotype = SERIAL_IO_MEM, | 1203 | .iotype = UPIO_MEM, |
1204 | .irq = 25, | 1204 | .irq = 25, |
1205 | .ops = &sci_uart_ops, | 1205 | .ops = &sci_uart_ops, |
1206 | .flags = ASYNC_BOOT_AUTOCONF, | 1206 | .flags = UPF_BOOT_AUTOCONF, |
1207 | .line = 0, | 1207 | .line = 0, |
1208 | }, | 1208 | }, |
1209 | .type = PORT_SCIF, | 1209 | .type = PORT_SCIF, |
@@ -1215,10 +1215,10 @@ static struct sci_port sci_ports[SCI_NPORTS] = { | |||
1215 | .port = { | 1215 | .port = { |
1216 | .membase = (void *)0xffe00000, | 1216 | .membase = (void *)0xffe00000, |
1217 | .mapbase = 0xffe00000, | 1217 | .mapbase = 0xffe00000, |
1218 | .iotype = SERIAL_IO_MEM, | 1218 | .iotype = UPIO_MEM, |
1219 | .irq = 25, | 1219 | .irq = 25, |
1220 | .ops = &sci_uart_ops, | 1220 | .ops = &sci_uart_ops, |
1221 | .flags = ASYNC_BOOT_AUTOCONF, | 1221 | .flags = UPF_BOOT_AUTOCONF, |
1222 | .line = 0, | 1222 | .line = 0, |
1223 | }, | 1223 | }, |
1224 | .type = PORT_SCIF, | 1224 | .type = PORT_SCIF, |
@@ -1230,10 +1230,10 @@ static struct sci_port sci_ports[SCI_NPORTS] = { | |||
1230 | .port = { | 1230 | .port = { |
1231 | .membase = (void *)0xffe80000, | 1231 | .membase = (void *)0xffe80000, |
1232 | .mapbase = 0xffe80000, | 1232 | .mapbase = 0xffe80000, |
1233 | .iotype = SERIAL_IO_MEM, | 1233 | .iotype = UPIO_MEM, |
1234 | .irq = 43, | 1234 | .irq = 43, |
1235 | .ops = &sci_uart_ops, | 1235 | .ops = &sci_uart_ops, |
1236 | .flags = ASYNC_BOOT_AUTOCONF, | 1236 | .flags = UPF_BOOT_AUTOCONF, |
1237 | .line = 0, | 1237 | .line = 0, |
1238 | }, | 1238 | }, |
1239 | .type = PORT_SCIF, | 1239 | .type = PORT_SCIF, |
@@ -1245,10 +1245,10 @@ static struct sci_port sci_ports[SCI_NPORTS] = { | |||
1245 | .port = { | 1245 | .port = { |
1246 | .membase = (void *)0xffe00000, | 1246 | .membase = (void *)0xffe00000, |
1247 | .mapbase = 0xffe00000, | 1247 | .mapbase = 0xffe00000, |
1248 | .iotype = SERIAL_IO_MEM, | 1248 | .iotype = UPIO_MEM, |
1249 | .irq = 25, | 1249 | .irq = 25, |
1250 | .ops = &sci_uart_ops, | 1250 | .ops = &sci_uart_ops, |
1251 | .flags = ASYNC_BOOT_AUTOCONF, | 1251 | .flags = UPF_BOOT_AUTOCONF, |
1252 | .line = 0, | 1252 | .line = 0, |
1253 | }, | 1253 | }, |
1254 | .type = PORT_SCI, | 1254 | .type = PORT_SCI, |
@@ -1259,10 +1259,10 @@ static struct sci_port sci_ports[SCI_NPORTS] = { | |||
1259 | .port = { | 1259 | .port = { |
1260 | .membase = (void *)0xffe80000, | 1260 | .membase = (void *)0xffe80000, |
1261 | .mapbase = 0xffe80000, | 1261 | .mapbase = 0xffe80000, |
1262 | .iotype = SERIAL_IO_MEM, | 1262 | .iotype = UPIO_MEM, |
1263 | .irq = 43, | 1263 | .irq = 43, |
1264 | .ops = &sci_uart_ops, | 1264 | .ops = &sci_uart_ops, |
1265 | .flags = ASYNC_BOOT_AUTOCONF, | 1265 | .flags = UPF_BOOT_AUTOCONF, |
1266 | .line = 1, | 1266 | .line = 1, |
1267 | }, | 1267 | }, |
1268 | .type = PORT_SCIF, | 1268 | .type = PORT_SCIF, |
@@ -1274,10 +1274,10 @@ static struct sci_port sci_ports[SCI_NPORTS] = { | |||
1274 | .port = { | 1274 | .port = { |
1275 | .membase = (void *)0xfe600000, | 1275 | .membase = (void *)0xfe600000, |
1276 | .mapbase = 0xfe600000, | 1276 | .mapbase = 0xfe600000, |
1277 | .iotype = SERIAL_IO_MEM, | 1277 | .iotype = UPIO_MEM, |
1278 | .irq = 55, | 1278 | .irq = 55, |
1279 | .ops = &sci_uart_ops, | 1279 | .ops = &sci_uart_ops, |
1280 | .flags = ASYNC_BOOT_AUTOCONF, | 1280 | .flags = UPF_BOOT_AUTOCONF, |
1281 | .line = 0, | 1281 | .line = 0, |
1282 | }, | 1282 | }, |
1283 | .type = PORT_SCIF, | 1283 | .type = PORT_SCIF, |
@@ -1288,10 +1288,10 @@ static struct sci_port sci_ports[SCI_NPORTS] = { | |||
1288 | .port = { | 1288 | .port = { |
1289 | .membase = (void *)0xfe610000, | 1289 | .membase = (void *)0xfe610000, |
1290 | .mapbase = 0xfe610000, | 1290 | .mapbase = 0xfe610000, |
1291 | .iotype = SERIAL_IO_MEM, | 1291 | .iotype = UPIO_MEM, |
1292 | .irq = 75, | 1292 | .irq = 75, |
1293 | .ops = &sci_uart_ops, | 1293 | .ops = &sci_uart_ops, |
1294 | .flags = ASYNC_BOOT_AUTOCONF, | 1294 | .flags = UPF_BOOT_AUTOCONF, |
1295 | .line = 1, | 1295 | .line = 1, |
1296 | }, | 1296 | }, |
1297 | .type = PORT_SCIF, | 1297 | .type = PORT_SCIF, |
@@ -1302,10 +1302,10 @@ static struct sci_port sci_ports[SCI_NPORTS] = { | |||
1302 | .port = { | 1302 | .port = { |
1303 | .membase = (void *)0xfe620000, | 1303 | .membase = (void *)0xfe620000, |
1304 | .mapbase = 0xfe620000, | 1304 | .mapbase = 0xfe620000, |
1305 | .iotype = SERIAL_IO_MEM, | 1305 | .iotype = UPIO_MEM, |
1306 | .irq = 79, | 1306 | .irq = 79, |
1307 | .ops = &sci_uart_ops, | 1307 | .ops = &sci_uart_ops, |
1308 | .flags = ASYNC_BOOT_AUTOCONF, | 1308 | .flags = UPF_BOOT_AUTOCONF, |
1309 | .line = 2, | 1309 | .line = 2, |
1310 | }, | 1310 | }, |
1311 | .type = PORT_SCIF, | 1311 | .type = PORT_SCIF, |
@@ -1317,10 +1317,10 @@ static struct sci_port sci_ports[SCI_NPORTS] = { | |||
1317 | .port = { | 1317 | .port = { |
1318 | .membase = (void *)0xffe80000, | 1318 | .membase = (void *)0xffe80000, |
1319 | .mapbase = 0xffe80000, | 1319 | .mapbase = 0xffe80000, |
1320 | .iotype = SERIAL_IO_MEM, | 1320 | .iotype = UPIO_MEM, |
1321 | .irq = 43, | 1321 | .irq = 43, |
1322 | .ops = &sci_uart_ops, | 1322 | .ops = &sci_uart_ops, |
1323 | .flags = ASYNC_BOOT_AUTOCONF, | 1323 | .flags = UPF_BOOT_AUTOCONF, |
1324 | .line = 0, | 1324 | .line = 0, |
1325 | }, | 1325 | }, |
1326 | .type = PORT_SCIF, | 1326 | .type = PORT_SCIF, |
@@ -1332,10 +1332,10 @@ static struct sci_port sci_ports[SCI_NPORTS] = { | |||
1332 | .port = { | 1332 | .port = { |
1333 | .membase = (void *)0xffe00000, | 1333 | .membase = (void *)0xffe00000, |
1334 | .mapbase = 0xffe00000, | 1334 | .mapbase = 0xffe00000, |
1335 | .iotype = SERIAL_IO_MEM, | 1335 | .iotype = UPIO_MEM, |
1336 | .irq = 26, | 1336 | .irq = 26, |
1337 | .ops = &sci_uart_ops, | 1337 | .ops = &sci_uart_ops, |
1338 | .flags = ASYNC_BOOT_AUTOCONF, | 1338 | .flags = UPF_BOOT_AUTOCONF, |
1339 | .line = 0, | 1339 | .line = 0, |
1340 | }, | 1340 | }, |
1341 | .type = PORT_SCIF, | 1341 | .type = PORT_SCIF, |
@@ -1346,10 +1346,10 @@ static struct sci_port sci_ports[SCI_NPORTS] = { | |||
1346 | .port = { | 1346 | .port = { |
1347 | .membase = (void *)0xffe80000, | 1347 | .membase = (void *)0xffe80000, |
1348 | .mapbase = 0xffe80000, | 1348 | .mapbase = 0xffe80000, |
1349 | .iotype = SERIAL_IO_MEM, | 1349 | .iotype = UPIO_MEM, |
1350 | .irq = 43, | 1350 | .irq = 43, |
1351 | .ops = &sci_uart_ops, | 1351 | .ops = &sci_uart_ops, |
1352 | .flags = ASYNC_BOOT_AUTOCONF, | 1352 | .flags = UPF_BOOT_AUTOCONF, |
1353 | .line = 1, | 1353 | .line = 1, |
1354 | }, | 1354 | }, |
1355 | .type = PORT_SCIF, | 1355 | .type = PORT_SCIF, |
@@ -1359,10 +1359,10 @@ static struct sci_port sci_ports[SCI_NPORTS] = { | |||
1359 | #elif defined(CONFIG_CPU_SUBTYPE_SH5_101) || defined(CONFIG_CPU_SUBTYPE_SH5_103) | 1359 | #elif defined(CONFIG_CPU_SUBTYPE_SH5_101) || defined(CONFIG_CPU_SUBTYPE_SH5_103) |
1360 | { | 1360 | { |
1361 | .port = { | 1361 | .port = { |
1362 | .iotype = SERIAL_IO_MEM, | 1362 | .iotype = UPIO_MEM, |
1363 | .irq = 42, | 1363 | .irq = 42, |
1364 | .ops = &sci_uart_ops, | 1364 | .ops = &sci_uart_ops, |
1365 | .flags = ASYNC_BOOT_AUTOCONF, | 1365 | .flags = UPF_BOOT_AUTOCONF, |
1366 | .line = 0, | 1366 | .line = 0, |
1367 | }, | 1367 | }, |
1368 | .type = PORT_SCIF, | 1368 | .type = PORT_SCIF, |
@@ -1374,10 +1374,10 @@ static struct sci_port sci_ports[SCI_NPORTS] = { | |||
1374 | .port = { | 1374 | .port = { |
1375 | .membase = (void *)0x00ffffb0, | 1375 | .membase = (void *)0x00ffffb0, |
1376 | .mapbase = 0x00ffffb0, | 1376 | .mapbase = 0x00ffffb0, |
1377 | .iotype = SERIAL_IO_MEM, | 1377 | .iotype = UPIO_MEM, |
1378 | .irq = 54, | 1378 | .irq = 54, |
1379 | .ops = &sci_uart_ops, | 1379 | .ops = &sci_uart_ops, |
1380 | .flags = ASYNC_BOOT_AUTOCONF, | 1380 | .flags = UPF_BOOT_AUTOCONF, |
1381 | .line = 0, | 1381 | .line = 0, |
1382 | }, | 1382 | }, |
1383 | .type = PORT_SCI, | 1383 | .type = PORT_SCI, |
@@ -1388,10 +1388,10 @@ static struct sci_port sci_ports[SCI_NPORTS] = { | |||
1388 | .port = { | 1388 | .port = { |
1389 | .membase = (void *)0x00ffffb8, | 1389 | .membase = (void *)0x00ffffb8, |
1390 | .mapbase = 0x00ffffb8, | 1390 | .mapbase = 0x00ffffb8, |
1391 | .iotype = SERIAL_IO_MEM, | 1391 | .iotype = UPIO_MEM, |
1392 | .irq = 58, | 1392 | .irq = 58, |
1393 | .ops = &sci_uart_ops, | 1393 | .ops = &sci_uart_ops, |
1394 | .flags = ASYNC_BOOT_AUTOCONF, | 1394 | .flags = UPF_BOOT_AUTOCONF, |
1395 | .line = 1, | 1395 | .line = 1, |
1396 | }, | 1396 | }, |
1397 | .type = PORT_SCI, | 1397 | .type = PORT_SCI, |
@@ -1402,10 +1402,10 @@ static struct sci_port sci_ports[SCI_NPORTS] = { | |||
1402 | .port = { | 1402 | .port = { |
1403 | .membase = (void *)0x00ffffc0, | 1403 | .membase = (void *)0x00ffffc0, |
1404 | .mapbase = 0x00ffffc0, | 1404 | .mapbase = 0x00ffffc0, |
1405 | .iotype = SERIAL_IO_MEM, | 1405 | .iotype = UPIO_MEM, |
1406 | .irq = 62, | 1406 | .irq = 62, |
1407 | .ops = &sci_uart_ops, | 1407 | .ops = &sci_uart_ops, |
1408 | .flags = ASYNC_BOOT_AUTOCONF, | 1408 | .flags = UPF_BOOT_AUTOCONF, |
1409 | .line = 2, | 1409 | .line = 2, |
1410 | }, | 1410 | }, |
1411 | .type = PORT_SCI, | 1411 | .type = PORT_SCI, |
@@ -1417,10 +1417,10 @@ static struct sci_port sci_ports[SCI_NPORTS] = { | |||
1417 | .port = { | 1417 | .port = { |
1418 | .membase = (void *)0x00ffff78, | 1418 | .membase = (void *)0x00ffff78, |
1419 | .mapbase = 0x00ffff78, | 1419 | .mapbase = 0x00ffff78, |
1420 | .iotype = SERIAL_IO_MEM, | 1420 | .iotype = UPIO_MEM, |
1421 | .irq = 90, | 1421 | .irq = 90, |
1422 | .ops = &sci_uart_ops, | 1422 | .ops = &sci_uart_ops, |
1423 | .flags = ASYNC_BOOT_AUTOCONF, | 1423 | .flags = UPF_BOOT_AUTOCONF, |
1424 | .line = 0, | 1424 | .line = 0, |
1425 | }, | 1425 | }, |
1426 | .type = PORT_SCI, | 1426 | .type = PORT_SCI, |
@@ -1431,10 +1431,10 @@ static struct sci_port sci_ports[SCI_NPORTS] = { | |||
1431 | .port = { | 1431 | .port = { |
1432 | .membase = (void *)0x00ffff80, | 1432 | .membase = (void *)0x00ffff80, |
1433 | .mapbase = 0x00ffff80, | 1433 | .mapbase = 0x00ffff80, |
1434 | .iotype = SERIAL_IO_MEM, | 1434 | .iotype = UPIO_MEM, |
1435 | .irq = 94, | 1435 | .irq = 94, |
1436 | .ops = &sci_uart_ops, | 1436 | .ops = &sci_uart_ops, |
1437 | .flags = ASYNC_BOOT_AUTOCONF, | 1437 | .flags = UPF_BOOT_AUTOCONF, |
1438 | .line = 1, | 1438 | .line = 1, |
1439 | }, | 1439 | }, |
1440 | .type = PORT_SCI, | 1440 | .type = PORT_SCI, |
@@ -1445,10 +1445,10 @@ static struct sci_port sci_ports[SCI_NPORTS] = { | |||
1445 | .port = { | 1445 | .port = { |
1446 | .membase = (void *)0x00ffff88, | 1446 | .membase = (void *)0x00ffff88, |
1447 | .mapbase = 0x00ffff88, | 1447 | .mapbase = 0x00ffff88, |
1448 | .iotype = SERIAL_IO_MEM, | 1448 | .iotype = UPIO_MEM, |
1449 | .irq = 98, | 1449 | .irq = 98, |
1450 | .ops = &sci_uart_ops, | 1450 | .ops = &sci_uart_ops, |
1451 | .flags = ASYNC_BOOT_AUTOCONF, | 1451 | .flags = UPF_BOOT_AUTOCONF, |
1452 | .line = 2, | 1452 | .line = 2, |
1453 | }, | 1453 | }, |
1454 | .type = PORT_SCI, | 1454 | .type = PORT_SCI, |
diff --git a/drivers/serial/sunsu.c b/drivers/serial/sunsu.c index 9a3665b34d97..bc67442c6b4c 100644 --- a/drivers/serial/sunsu.c +++ b/drivers/serial/sunsu.c | |||
@@ -669,7 +669,7 @@ static int sunsu_startup(struct uart_port *port) | |||
669 | * if it is, then bail out, because there's likely no UART | 669 | * if it is, then bail out, because there's likely no UART |
670 | * here. | 670 | * here. |
671 | */ | 671 | */ |
672 | if (!(up->port.flags & ASYNC_BUGGY_UART) && | 672 | if (!(up->port.flags & UPF_BUGGY_UART) && |
673 | (serial_inp(up, UART_LSR) == 0xff)) { | 673 | (serial_inp(up, UART_LSR) == 0xff)) { |
674 | printk("ttyS%d: LSR safety check engaged!\n", up->port.line); | 674 | printk("ttyS%d: LSR safety check engaged!\n", up->port.line); |
675 | return -ENODEV; | 675 | return -ENODEV; |
@@ -707,7 +707,7 @@ static int sunsu_startup(struct uart_port *port) | |||
707 | up->ier = UART_IER_RLSI | UART_IER_RDI; | 707 | up->ier = UART_IER_RLSI | UART_IER_RDI; |
708 | serial_outp(up, UART_IER, up->ier); | 708 | serial_outp(up, UART_IER, up->ier); |
709 | 709 | ||
710 | if (up->port.flags & ASYNC_FOURPORT) { | 710 | if (up->port.flags & UPF_FOURPORT) { |
711 | unsigned int icp; | 711 | unsigned int icp; |
712 | /* | 712 | /* |
713 | * Enable interrupts on the AST Fourport board | 713 | * Enable interrupts on the AST Fourport board |
@@ -740,7 +740,7 @@ static void sunsu_shutdown(struct uart_port *port) | |||
740 | serial_outp(up, UART_IER, 0); | 740 | serial_outp(up, UART_IER, 0); |
741 | 741 | ||
742 | spin_lock_irqsave(&up->port.lock, flags); | 742 | spin_lock_irqsave(&up->port.lock, flags); |
743 | if (up->port.flags & ASYNC_FOURPORT) { | 743 | if (up->port.flags & UPF_FOURPORT) { |
744 | /* reset interrupts on the AST Fourport board */ | 744 | /* reset interrupts on the AST Fourport board */ |
745 | inb((up->port.iobase & 0xfe0) | 0x1f); | 745 | inb((up->port.iobase & 0xfe0) | 0x1f); |
746 | up->port.mctrl |= TIOCM_OUT1; | 746 | up->port.mctrl |= TIOCM_OUT1; |
@@ -1132,7 +1132,7 @@ ebus_done: | |||
1132 | 1132 | ||
1133 | spin_lock_irqsave(&up->port.lock, flags); | 1133 | spin_lock_irqsave(&up->port.lock, flags); |
1134 | 1134 | ||
1135 | if (!(up->port.flags & ASYNC_BUGGY_UART)) { | 1135 | if (!(up->port.flags & UPF_BUGGY_UART)) { |
1136 | /* | 1136 | /* |
1137 | * Do a simple existence test first; if we fail this, there's | 1137 | * Do a simple existence test first; if we fail this, there's |
1138 | * no point trying anything else. | 1138 | * no point trying anything else. |
@@ -1170,7 +1170,7 @@ ebus_done: | |||
1170 | * manufacturer would be stupid enough to design a board | 1170 | * manufacturer would be stupid enough to design a board |
1171 | * that conflicts with COM 1-4 --- we hope! | 1171 | * that conflicts with COM 1-4 --- we hope! |
1172 | */ | 1172 | */ |
1173 | if (!(up->port.flags & ASYNC_SKIP_TEST)) { | 1173 | if (!(up->port.flags & UPF_SKIP_TEST)) { |
1174 | serial_outp(up, UART_MCR, UART_MCR_LOOP | 0x0A); | 1174 | serial_outp(up, UART_MCR, UART_MCR_LOOP | 0x0A); |
1175 | status1 = serial_inp(up, UART_MSR) & 0xF0; | 1175 | status1 = serial_inp(up, UART_MSR) & 0xF0; |
1176 | serial_outp(up, UART_MCR, save_mcr); | 1176 | serial_outp(up, UART_MCR, save_mcr); |
@@ -1371,7 +1371,7 @@ static __inline__ void wait_for_xmitr(struct uart_sunsu_port *up) | |||
1371 | } while ((status & BOTH_EMPTY) != BOTH_EMPTY); | 1371 | } while ((status & BOTH_EMPTY) != BOTH_EMPTY); |
1372 | 1372 | ||
1373 | /* Wait up to 1s for flow control if necessary */ | 1373 | /* Wait up to 1s for flow control if necessary */ |
1374 | if (up->port.flags & ASYNC_CONS_FLOW) { | 1374 | if (up->port.flags & UPF_CONS_FLOW) { |
1375 | tmout = 1000000; | 1375 | tmout = 1000000; |
1376 | while (--tmout && | 1376 | while (--tmout && |
1377 | ((serial_in(up, UART_MSR) & UART_MSR_CTS) == 0)) | 1377 | ((serial_in(up, UART_MSR) & UART_MSR_CTS) == 0)) |
@@ -1513,7 +1513,7 @@ static int __init sunsu_serial_init(void) | |||
1513 | up->su_type == SU_PORT_KBD) | 1513 | up->su_type == SU_PORT_KBD) |
1514 | continue; | 1514 | continue; |
1515 | 1515 | ||
1516 | up->port.flags |= ASYNC_BOOT_AUTOCONF; | 1516 | up->port.flags |= UPF_BOOT_AUTOCONF; |
1517 | up->port.type = PORT_UNKNOWN; | 1517 | up->port.type = PORT_UNKNOWN; |
1518 | up->port.uartclk = (SU_BASE_BAUD * 16); | 1518 | up->port.uartclk = (SU_BASE_BAUD * 16); |
1519 | 1519 | ||
diff --git a/include/linux/serial_8250.h b/include/linux/serial_8250.h index cee302aefdb7..73b464f0926a 100644 --- a/include/linux/serial_8250.h +++ b/include/linux/serial_8250.h | |||
@@ -26,7 +26,7 @@ struct plat_serial8250_port { | |||
26 | unsigned char regshift; /* register shift */ | 26 | unsigned char regshift; /* register shift */ |
27 | unsigned char iotype; /* UPIO_* */ | 27 | unsigned char iotype; /* UPIO_* */ |
28 | unsigned char hub6; | 28 | unsigned char hub6; |
29 | unsigned int flags; /* UPF_* flags */ | 29 | upf_t flags; /* UPF_* flags */ |
30 | }; | 30 | }; |
31 | 31 | ||
32 | /* | 32 | /* |
diff --git a/include/linux/serial_core.h b/include/linux/serial_core.h index ec351005bf9d..4041122dabfc 100644 --- a/include/linux/serial_core.h +++ b/include/linux/serial_core.h | |||
@@ -203,6 +203,8 @@ struct uart_icount { | |||
203 | __u32 buf_overrun; | 203 | __u32 buf_overrun; |
204 | }; | 204 | }; |
205 | 205 | ||
206 | typedef unsigned int __bitwise__ upf_t; | ||
207 | |||
206 | struct uart_port { | 208 | struct uart_port { |
207 | spinlock_t lock; /* port lock */ | 209 | spinlock_t lock; /* port lock */ |
208 | unsigned int iobase; /* in/out[bwl] */ | 210 | unsigned int iobase; /* in/out[bwl] */ |
@@ -230,36 +232,34 @@ struct uart_port { | |||
230 | unsigned long sysrq; /* sysrq timeout */ | 232 | unsigned long sysrq; /* sysrq timeout */ |
231 | #endif | 233 | #endif |
232 | 234 | ||
233 | unsigned int flags; | 235 | upf_t flags; |
234 | 236 | ||
235 | #define UPF_FOURPORT (1 << 1) | 237 | #define UPF_FOURPORT ((__force upf_t) (1 << 1)) |
236 | #define UPF_SAK (1 << 2) | 238 | #define UPF_SAK ((__force upf_t) (1 << 2)) |
237 | #define UPF_SPD_MASK (0x1030) | 239 | #define UPF_SPD_MASK ((__force upf_t) (0x1030)) |
238 | #define UPF_SPD_HI (0x0010) | 240 | #define UPF_SPD_HI ((__force upf_t) (0x0010)) |
239 | #define UPF_SPD_VHI (0x0020) | 241 | #define UPF_SPD_VHI ((__force upf_t) (0x0020)) |
240 | #define UPF_SPD_CUST (0x0030) | 242 | #define UPF_SPD_CUST ((__force upf_t) (0x0030)) |
241 | #define UPF_SPD_SHI (0x1000) | 243 | #define UPF_SPD_SHI ((__force upf_t) (0x1000)) |
242 | #define UPF_SPD_WARP (0x1010) | 244 | #define UPF_SPD_WARP ((__force upf_t) (0x1010)) |
243 | #define UPF_SKIP_TEST (1 << 6) | 245 | #define UPF_SKIP_TEST ((__force upf_t) (1 << 6)) |
244 | #define UPF_AUTO_IRQ (1 << 7) | 246 | #define UPF_AUTO_IRQ ((__force upf_t) (1 << 7)) |
245 | #define UPF_HARDPPS_CD (1 << 11) | 247 | #define UPF_HARDPPS_CD ((__force upf_t) (1 << 11)) |
246 | #define UPF_LOW_LATENCY (1 << 13) | 248 | #define UPF_LOW_LATENCY ((__force upf_t) (1 << 13)) |
247 | #define UPF_BUGGY_UART (1 << 14) | 249 | #define UPF_BUGGY_UART ((__force upf_t) (1 << 14)) |
248 | #define UPF_AUTOPROBE (1 << 15) | 250 | #define UPF_MAGIC_MULTIPLIER ((__force upf_t) (1 << 16)) |
249 | #define UPF_MAGIC_MULTIPLIER (1 << 16) | 251 | #define UPF_CONS_FLOW ((__force upf_t) (1 << 23)) |
250 | #define UPF_BOOT_ONLYMCA (1 << 22) | 252 | #define UPF_SHARE_IRQ ((__force upf_t) (1 << 24)) |
251 | #define UPF_CONS_FLOW (1 << 23) | 253 | #define UPF_BOOT_AUTOCONF ((__force upf_t) (1 << 28)) |
252 | #define UPF_SHARE_IRQ (1 << 24) | 254 | #define UPF_IOREMAP ((__force upf_t) (1 << 31)) |
253 | #define UPF_BOOT_AUTOCONF (1 << 28) | 255 | |
254 | #define UPF_IOREMAP (1 << 31) | 256 | #define UPF_CHANGE_MASK ((__force upf_t) (0x17fff)) |
255 | 257 | #define UPF_USR_MASK ((__force upf_t) (UPF_SPD_MASK|UPF_LOW_LATENCY)) | |
256 | #define UPF_CHANGE_MASK (0x17fff) | ||
257 | #define UPF_USR_MASK (UPF_SPD_MASK|UPF_LOW_LATENCY) | ||
258 | 258 | ||
259 | unsigned int mctrl; /* current modem ctrl settings */ | 259 | unsigned int mctrl; /* current modem ctrl settings */ |
260 | unsigned int timeout; /* character-based timeout */ | 260 | unsigned int timeout; /* character-based timeout */ |
261 | unsigned int type; /* port type */ | 261 | unsigned int type; /* port type */ |
262 | struct uart_ops *ops; | 262 | const struct uart_ops *ops; |
263 | unsigned int custom_divisor; | 263 | unsigned int custom_divisor; |
264 | unsigned int line; /* port index */ | 264 | unsigned int line; /* port index */ |
265 | unsigned long mapbase; /* for ioremap */ | 265 | unsigned long mapbase; /* for ioremap */ |
@@ -289,6 +289,9 @@ struct uart_state { | |||
289 | }; | 289 | }; |
290 | 290 | ||
291 | #define UART_XMIT_SIZE PAGE_SIZE | 291 | #define UART_XMIT_SIZE PAGE_SIZE |
292 | |||
293 | typedef unsigned int __bitwise__ uif_t; | ||
294 | |||
292 | /* | 295 | /* |
293 | * This is the state information which is only valid when the port | 296 | * This is the state information which is only valid when the port |
294 | * is open; it may be freed by the core driver once the device has | 297 | * is open; it may be freed by the core driver once the device has |
@@ -298,17 +301,16 @@ struct uart_state { | |||
298 | struct uart_info { | 301 | struct uart_info { |
299 | struct tty_struct *tty; | 302 | struct tty_struct *tty; |
300 | struct circ_buf xmit; | 303 | struct circ_buf xmit; |
301 | unsigned int flags; | 304 | uif_t flags; |
302 | 305 | ||
303 | /* | 306 | /* |
304 | * These are the flags that specific to info->flags, and reflect our | 307 | * Definitions for info->flags. These are _private_ to serial_core, and |
305 | * internal state. They can not be accessed via port->flags. Low | 308 | * are specific to this structure. They may be queried by low level drivers. |
306 | * level drivers must not change these, but may query them instead. | ||
307 | */ | 309 | */ |
308 | #define UIF_CHECK_CD (1 << 25) | 310 | #define UIF_CHECK_CD ((__force uif_t) (1 << 25)) |
309 | #define UIF_CTS_FLOW (1 << 26) | 311 | #define UIF_CTS_FLOW ((__force uif_t) (1 << 26)) |
310 | #define UIF_NORMAL_ACTIVE (1 << 29) | 312 | #define UIF_NORMAL_ACTIVE ((__force uif_t) (1 << 29)) |
311 | #define UIF_INITIALIZED (1 << 31) | 313 | #define UIF_INITIALIZED ((__force uif_t) (1 << 31)) |
312 | 314 | ||
313 | int blocked_open; | 315 | int blocked_open; |
314 | 316 | ||
@@ -430,7 +432,7 @@ static inline int uart_handle_break(struct uart_port *port) | |||
430 | port->sysrq = 0; | 432 | port->sysrq = 0; |
431 | } | 433 | } |
432 | #endif | 434 | #endif |
433 | if (info->flags & UPF_SAK) | 435 | if (port->flags & UPF_SAK) |
434 | do_SAK(info->tty); | 436 | do_SAK(info->tty); |
435 | return 0; | 437 | return 0; |
436 | } | 438 | } |