Merge branch 'devel' of master.kernel.org:/home/rmk/linux-2.6-serial

* 'devel' of master.kernel.org:/home/rmk/linux-2.6-serial:
[SERIAL] Ensure 8250_pci quirks are not marked __devinit
[SERIAL] Convert fifosize to an unsigned int

+17 -15
+10 -10
drivers/serial/8250_pci.c
··· 134 134 * and Keystone have one Diva chip with 3 UARTs. Some later machines have 135 135 * one Diva chip, but it has been expanded to 5 UARTs. 136 136 */ 137 - static int __devinit pci_hp_diva_init(struct pci_dev *dev) 137 + static int pci_hp_diva_init(struct pci_dev *dev) 138 138 { 139 139 int rc = 0; 140 140 ··· 194 194 /* 195 195 * Added for EKF Intel i960 serial boards 196 196 */ 197 - static int __devinit pci_inteli960ni_init(struct pci_dev *dev) 197 + static int pci_inteli960ni_init(struct pci_dev *dev) 198 198 { 199 199 unsigned long oldval; 200 200 ··· 216 216 * seems to be mainly needed on card using the PLX which also use I/O 217 217 * mapped memory. 218 218 */ 219 - static int __devinit pci_plx9050_init(struct pci_dev *dev) 219 + static int pci_plx9050_init(struct pci_dev *dev) 220 220 { 221 221 u8 irq_config; 222 222 void __iomem *p; ··· 314 314 /* global control register offset for SBS PMC-OctalPro */ 315 315 #define OCT_REG_CR_OFF 0x500 316 316 317 - static int __devinit sbs_init(struct pci_dev *dev) 317 + static int sbs_init(struct pci_dev *dev) 318 318 { 319 319 u8 __iomem *p; 320 320 ··· 493 493 { 0, NULL } 494 494 }; 495 495 496 - static int __devinit pci_timedia_init(struct pci_dev *dev) 496 + static int pci_timedia_init(struct pci_dev *dev) 497 497 { 498 498 unsigned short *ids; 499 499 int i, j; ··· 566 566 return setup_port(priv, port, bar, offset, board->reg_shift); 567 567 } 568 568 569 - static int __devinit pci_xircom_init(struct pci_dev *dev) 569 + static int pci_xircom_init(struct pci_dev *dev) 570 570 { 571 571 msleep(100); 572 572 return 0; 573 573 } 574 574 575 - static int __devinit pci_netmos_init(struct pci_dev *dev) 575 + static int pci_netmos_init(struct pci_dev *dev) 576 576 { 577 577 /* subdevice 0x00PS means <P> parallel, <S> serial */ 578 578 unsigned int num_serial = dev->subsystem_device & 0xf; ··· 622 622 */ 623 623 static struct pci_serial_quirk pci_serial_quirks[] = { 624 624 /* 625 - * AFAVLAB cards. 625 + * AFAVLAB cards - these may be called via parport_serial 626 626 * It is not clear whether this applies to all products. 627 627 */ 628 628 { ··· 754 754 .exit = __devexit_p(sbs_exit), 755 755 }, 756 756 /* 757 - * SIIG cards. 757 + * SIIG cards - these may be called via parport_serial 758 758 */ 759 759 { 760 760 .vendor = PCI_VENDOR_ID_SIIG, ··· 811 811 .setup = pci_default_setup, 812 812 }, 813 813 /* 814 - * Netmos cards 814 + * Netmos cards - these may be called via parport_serial 815 815 */ 816 816 { 817 817 .vendor = PCI_VENDOR_ID_NETMOS,
+1 -2
drivers/serial/mpc52xx_uart.c
··· 726 726 727 727 spin_lock_init(&port->lock); 728 728 port->uartclk = __res.bi_ipbfreq / 2; /* Look at CTLR doc */ 729 - port->fifosize = 255; /* Should be 512 ! But it can't be */ 730 - /* stored in a unsigned char */ 729 + port->fifosize = 512; 731 730 port->iotype = UPIO_MEM; 732 731 port->flags = UPF_BOOT_AUTOCONF | 733 732 ( uart_console(port) ? 0 : UPF_IOREMAP );
+4 -2
drivers/serial/serial_core.c
··· 696 696 (new_serial.baud_base != port->uartclk / 16) || 697 697 (close_delay != state->close_delay) || 698 698 (closing_wait != state->closing_wait) || 699 - (new_serial.xmit_fifo_size != port->fifosize) || 699 + (new_serial.xmit_fifo_size && 700 + new_serial.xmit_fifo_size != port->fifosize) || 700 701 (((new_flags ^ old_flags) & ~UPF_USR_MASK) != 0)) 701 702 goto exit; 702 703 port->flags = ((port->flags & ~UPF_USR_MASK) | ··· 802 801 port->custom_divisor = new_serial.custom_divisor; 803 802 state->close_delay = close_delay; 804 803 state->closing_wait = closing_wait; 805 - port->fifosize = new_serial.xmit_fifo_size; 804 + if (new_serial.xmit_fifo_size) 805 + port->fifosize = new_serial.xmit_fifo_size; 806 806 if (state->info->tty) 807 807 state->info->tty->low_latency = 808 808 (port->flags & UPF_LOW_LATENCY) ? 1 : 0;
+2 -1
include/linux/serial_core.h
··· 216 216 unsigned char __iomem *membase; /* read/write[bwl] */ 217 217 unsigned int irq; /* irq number */ 218 218 unsigned int uartclk; /* base uart clock */ 219 - unsigned char fifosize; /* tx fifo size */ 219 + unsigned int fifosize; /* tx fifo size */ 220 220 unsigned char x_char; /* xon/xoff char */ 221 221 unsigned char regshift; /* reg offset shift */ 222 222 unsigned char iotype; /* io access style */ 223 + unsigned char unused1; 223 224 224 225 #define UPIO_PORT (0) 225 226 #define UPIO_HUB6 (1)