aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
Diffstat (limited to 'drivers')
-rw-r--r--drivers/serial/8250_pci.c109
1 files changed, 54 insertions, 55 deletions
diff --git a/drivers/serial/8250_pci.c b/drivers/serial/8250_pci.c
index 0a4ac2b6eb5a..a8bec498cad6 100644
--- a/drivers/serial/8250_pci.c
+++ b/drivers/serial/8250_pci.c
@@ -140,7 +140,7 @@ afavlab_setup(struct serial_private *priv, struct pciserial_board *board,
140 struct uart_port *port, int idx) 140 struct uart_port *port, int idx)
141{ 141{
142 unsigned int bar, offset = board->first_offset; 142 unsigned int bar, offset = board->first_offset;
143 143
144 bar = FL_GET_BASE(board->flags); 144 bar = FL_GET_BASE(board->flags);
145 if (idx < 4) 145 if (idx < 4)
146 bar += idx; 146 bar += idx;
@@ -227,8 +227,8 @@ static int pci_inteli960ni_init(struct pci_dev *dev)
227 return -ENODEV; 227 return -ENODEV;
228 228
229 /* is firmware started? */ 229 /* is firmware started? */
230 pci_read_config_dword(dev, 0x44, (void*) &oldval); 230 pci_read_config_dword(dev, 0x44, (void *)&oldval);
231 if (oldval == 0x00001000L) { /* RESET value */ 231 if (oldval == 0x00001000L) { /* RESET value */
232 printk(KERN_DEBUG "Local i960 firmware missing"); 232 printk(KERN_DEBUG "Local i960 firmware missing");
233 return -ENODEV; 233 return -ENODEV;
234 } 234 }
@@ -253,11 +253,11 @@ static int pci_plx9050_init(struct pci_dev *dev)
253 253
254 irq_config = 0x41; 254 irq_config = 0x41;
255 if (dev->vendor == PCI_VENDOR_ID_PANACOM || 255 if (dev->vendor == PCI_VENDOR_ID_PANACOM ||
256 dev->subsystem_vendor == PCI_SUBVENDOR_ID_EXSYS) { 256 dev->subsystem_vendor == PCI_SUBVENDOR_ID_EXSYS)
257 irq_config = 0x43; 257 irq_config = 0x43;
258 } 258
259 if ((dev->vendor == PCI_VENDOR_ID_PLX) && 259 if ((dev->vendor == PCI_VENDOR_ID_PLX) &&
260 (dev->device == PCI_DEVICE_ID_PLX_ROMULUS)) { 260 (dev->device == PCI_DEVICE_ID_PLX_ROMULUS))
261 /* 261 /*
262 * As the megawolf cards have the int pins active 262 * As the megawolf cards have the int pins active
263 * high, and have 2 UART chips, both ints must be 263 * high, and have 2 UART chips, both ints must be
@@ -267,8 +267,6 @@ static int pci_plx9050_init(struct pci_dev *dev)
267 * deep FIFOs 267 * deep FIFOs
268 */ 268 */
269 irq_config = 0x5b; 269 irq_config = 0x5b;
270 }
271
272 /* 270 /*
273 * enable/disable interrupts 271 * enable/disable interrupts
274 */ 272 */
@@ -343,14 +341,14 @@ static int sbs_init(struct pci_dev *dev)
343{ 341{
344 u8 __iomem *p; 342 u8 __iomem *p;
345 343
346 p = ioremap(pci_resource_start(dev, 0),pci_resource_len(dev,0)); 344 p = ioremap(pci_resource_start(dev, 0), pci_resource_len(dev, 0));
347 345
348 if (p == NULL) 346 if (p == NULL)
349 return -ENOMEM; 347 return -ENOMEM;
350 /* Set bit-4 Control Register (UART RESET) in to reset the uarts */ 348 /* Set bit-4 Control Register (UART RESET) in to reset the uarts */
351 writeb(0x10,p + OCT_REG_CR_OFF); 349 writeb(0x10, p + OCT_REG_CR_OFF);
352 udelay(50); 350 udelay(50);
353 writeb(0x0,p + OCT_REG_CR_OFF); 351 writeb(0x0, p + OCT_REG_CR_OFF);
354 352
355 /* Set bit-2 (INTENABLE) of Control Register */ 353 /* Set bit-2 (INTENABLE) of Control Register */
356 writeb(0x4, p + OCT_REG_CR_OFF); 354 writeb(0x4, p + OCT_REG_CR_OFF);
@@ -367,10 +365,10 @@ static void __devexit sbs_exit(struct pci_dev *dev)
367{ 365{
368 u8 __iomem *p; 366 u8 __iomem *p;
369 367
370 p = ioremap(pci_resource_start(dev, 0),pci_resource_len(dev,0)); 368 p = ioremap(pci_resource_start(dev, 0), pci_resource_len(dev, 0));
371 if (p != NULL) { 369 /* FIXME: What if resource_len < OCT_REG_CR_OFF */
370 if (p != NULL)
372 writeb(0, p + OCT_REG_CR_OFF); 371 writeb(0, p + OCT_REG_CR_OFF);
373 }
374 iounmap(p); 372 iounmap(p);
375} 373}
376 374
@@ -386,7 +384,7 @@ static void __devexit sbs_exit(struct pci_dev *dev)
386 * with other OSes (like M$ DOS). 384 * with other OSes (like M$ DOS).
387 * 385 *
388 * SIIG support added by Andrey Panin <pazke@donpac.ru>, 10/1999 386 * SIIG support added by Andrey Panin <pazke@donpac.ru>, 10/1999
389 * 387 *
390 * There is two family of SIIG serial cards with different PCI 388 * There is two family of SIIG serial cards with different PCI
391 * interface chip and different configuration methods: 389 * interface chip and different configuration methods:
392 * - 10x cards have control registers in IO and/or memory space; 390 * - 10x cards have control registers in IO and/or memory space;
@@ -489,21 +487,21 @@ static const unsigned short timedia_single_port[] = {
489 487
490static const unsigned short timedia_dual_port[] = { 488static const unsigned short timedia_dual_port[] = {
491 0x0002, 0x4036, 0x4037, 0x4038, 0x4078, 0x4079, 0x4085, 489 0x0002, 0x4036, 0x4037, 0x4038, 0x4078, 0x4079, 0x4085,
492 0x4088, 0x4089, 0x5037, 0x5078, 0x5079, 0x5085, 0x6079, 490 0x4088, 0x4089, 0x5037, 0x5078, 0x5079, 0x5085, 0x6079,
493 0x7079, 0x8079, 0x8137, 0x8138, 0x8237, 0x8238, 0x9079, 491 0x7079, 0x8079, 0x8137, 0x8138, 0x8237, 0x8238, 0x9079,
494 0x9137, 0x9138, 0x9237, 0x9238, 0xA079, 0xB079, 0xC079, 492 0x9137, 0x9138, 0x9237, 0x9238, 0xA079, 0xB079, 0xC079,
495 0xD079, 0 493 0xD079, 0
496}; 494};
497 495
498static const unsigned short timedia_quad_port[] = { 496static const unsigned short timedia_quad_port[] = {
499 0x4055, 0x4056, 0x4095, 0x4096, 0x5056, 0x8156, 0x8157, 497 0x4055, 0x4056, 0x4095, 0x4096, 0x5056, 0x8156, 0x8157,
500 0x8256, 0x8257, 0x9056, 0x9156, 0x9157, 0x9158, 0x9159, 498 0x8256, 0x8257, 0x9056, 0x9156, 0x9157, 0x9158, 0x9159,
501 0x9256, 0x9257, 0xA056, 0xA157, 0xA158, 0xA159, 0xB056, 499 0x9256, 0x9257, 0xA056, 0xA157, 0xA158, 0xA159, 0xB056,
502 0xB157, 0 500 0xB157, 0
503}; 501};
504 502
505static const unsigned short timedia_eight_port[] = { 503static const unsigned short timedia_eight_port[] = {
506 0x4065, 0x4066, 0x5065, 0x5066, 0x8166, 0x9066, 0x9166, 504 0x4065, 0x4066, 0x5065, 0x5066, 0x8166, 0x9066, 0x9166,
507 0x9167, 0x9168, 0xA066, 0xA167, 0xA168, 0 505 0x9167, 0x9168, 0xA066, 0xA167, 0xA168, 0
508}; 506};
509 507
@@ -656,7 +654,8 @@ static int pci_ite887x_init(struct pci_dev *dev)
656 ITE_887x_POSIO_ENABLE | ITE_887x_POSIO_SPEED | 654 ITE_887x_POSIO_ENABLE | ITE_887x_POSIO_SPEED |
657 ITE_887x_POSIO_IOSIZE_32 | inta_addr[i]); 655 ITE_887x_POSIO_IOSIZE_32 | inta_addr[i]);
658 /* write INTCBAR - ioport */ 656 /* write INTCBAR - ioport */
659 pci_write_config_dword(dev, ITE_887x_INTCBAR, inta_addr[i]); 657 pci_write_config_dword(dev, ITE_887x_INTCBAR,
658 inta_addr[i]);
660 ret = inb(inta_addr[i]); 659 ret = inb(inta_addr[i]);
661 if (ret != 0xff) { 660 if (ret != 0xff) {
662 /* ioport connected */ 661 /* ioport connected */
@@ -755,7 +754,7 @@ pci_default_setup(struct serial_private *priv, struct pciserial_board *board,
755 754
756 if (board->flags & FL_REGION_SZ_CAP && idx >= maxnr) 755 if (board->flags & FL_REGION_SZ_CAP && idx >= maxnr)
757 return 1; 756 return 1;
758 757
759 return setup_port(priv, port, bar, offset, board->reg_shift); 758 return setup_port(priv, port, bar, offset, board->reg_shift);
760} 759}
761 760
@@ -843,7 +842,7 @@ static struct pci_serial_quirk pci_serial_quirks[] = {
843 .init = pci_plx9050_init, 842 .init = pci_plx9050_init,
844 .setup = pci_default_setup, 843 .setup = pci_default_setup,
845 .exit = __devexit_p(pci_plx9050_exit), 844 .exit = __devexit_p(pci_plx9050_exit),
846 }, 845 },
847 { 846 {
848 .vendor = PCI_VENDOR_ID_PANACOM, 847 .vendor = PCI_VENDOR_ID_PANACOM,
849 .device = PCI_DEVICE_ID_PANACOM_DUALMODEM, 848 .device = PCI_DEVICE_ID_PANACOM_DUALMODEM,
@@ -1032,7 +1031,7 @@ static struct pci_serial_quirk *find_quirk(struct pci_dev *dev)
1032 quirk_id_matches(quirk->device, dev->device) && 1031 quirk_id_matches(quirk->device, dev->device) &&
1033 quirk_id_matches(quirk->subvendor, dev->subsystem_vendor) && 1032 quirk_id_matches(quirk->subvendor, dev->subsystem_vendor) &&
1034 quirk_id_matches(quirk->subdevice, dev->subsystem_device)) 1033 quirk_id_matches(quirk->subdevice, dev->subsystem_device))
1035 break; 1034 break;
1036 return quirk; 1035 return quirk;
1037} 1036}
1038 1037
@@ -1711,7 +1710,7 @@ static struct pciserial_board pci_boards[] __devinitdata = {
1711}; 1710};
1712 1711
1713static const struct pci_device_id softmodem_blacklist[] = { 1712static const struct pci_device_id softmodem_blacklist[] = {
1714 { PCI_VDEVICE ( AL, 0x5457 ), }, /* ALi Corporation M5457 AC'97 Modem */ 1713 { PCI_VDEVICE(AL, 0x5457), }, /* ALi Corporation M5457 AC'97 Modem */
1715}; 1714};
1716 1715
1717/* 1716/*
@@ -1724,13 +1723,13 @@ serial_pci_guess_board(struct pci_dev *dev, struct pciserial_board *board)
1724{ 1723{
1725 const struct pci_device_id *blacklist; 1724 const struct pci_device_id *blacklist;
1726 int num_iomem, num_port, first_port = -1, i; 1725 int num_iomem, num_port, first_port = -1, i;
1727 1726
1728 /* 1727 /*
1729 * If it is not a communications device or the programming 1728 * If it is not a communications device or the programming
1730 * interface is greater than 6, give up. 1729 * interface is greater than 6, give up.
1731 * 1730 *
1732 * (Should we try to make guesses for multiport serial devices 1731 * (Should we try to make guesses for multiport serial devices
1733 * later?) 1732 * later?)
1734 */ 1733 */
1735 if ((((dev->class >> 8) != PCI_CLASS_COMMUNICATION_SERIAL) && 1734 if ((((dev->class >> 8) != PCI_CLASS_COMMUNICATION_SERIAL) &&
1736 ((dev->class >> 8) != PCI_CLASS_COMMUNICATION_MODEM)) || 1735 ((dev->class >> 8) != PCI_CLASS_COMMUNICATION_MODEM)) ||
@@ -1863,25 +1862,23 @@ pciserial_init_ports(struct pci_dev *dev, struct pciserial_board *board)
1863 break; 1862 break;
1864 1863
1865#ifdef SERIAL_DEBUG_PCI 1864#ifdef SERIAL_DEBUG_PCI
1866 printk("Setup PCI port: port %x, irq %d, type %d\n", 1865 printk(KERN_DEBUG "Setup PCI port: port %x, irq %d, type %d\n",
1867 serial_port.iobase, serial_port.irq, serial_port.iotype); 1866 serial_port.iobase, serial_port.irq, serial_port.iotype);
1868#endif 1867#endif
1869 1868
1870 priv->line[i] = serial8250_register_port(&serial_port); 1869 priv->line[i] = serial8250_register_port(&serial_port);
1871 if (priv->line[i] < 0) { 1870 if (priv->line[i] < 0) {
1872 printk(KERN_WARNING "Couldn't register serial port %s: %d\n", pci_name(dev), priv->line[i]); 1871 printk(KERN_WARNING "Couldn't register serial port %s: %d\n", pci_name(dev), priv->line[i]);
1873 break; 1872 break;
1874 } 1873 }
1875 } 1874 }
1876
1877 priv->nr = i; 1875 priv->nr = i;
1878
1879 return priv; 1876 return priv;
1880 1877
1881 err_deinit: 1878err_deinit:
1882 if (quirk->exit) 1879 if (quirk->exit)
1883 quirk->exit(dev); 1880 quirk->exit(dev);
1884 err_out: 1881err_out:
1885 return priv; 1882 return priv;
1886} 1883}
1887EXPORT_SYMBOL_GPL(pciserial_init_ports); 1884EXPORT_SYMBOL_GPL(pciserial_init_ports);
@@ -2171,22 +2168,22 @@ static struct pci_device_id serial_pci_tbl[] = {
2171 pbn_b0_8_1843200_200 }, 2168 pbn_b0_8_1843200_200 },
2172 2169
2173 { PCI_VENDOR_ID_SEALEVEL, PCI_DEVICE_ID_SEALEVEL_U530, 2170 { PCI_VENDOR_ID_SEALEVEL, PCI_DEVICE_ID_SEALEVEL_U530,
2174 PCI_ANY_ID, PCI_ANY_ID, 0, 0, 2171 PCI_ANY_ID, PCI_ANY_ID, 0, 0,
2175 pbn_b2_bt_1_115200 }, 2172 pbn_b2_bt_1_115200 },
2176 { PCI_VENDOR_ID_SEALEVEL, PCI_DEVICE_ID_SEALEVEL_UCOMM2, 2173 { PCI_VENDOR_ID_SEALEVEL, PCI_DEVICE_ID_SEALEVEL_UCOMM2,
2177 PCI_ANY_ID, PCI_ANY_ID, 0, 0, 2174 PCI_ANY_ID, PCI_ANY_ID, 0, 0,
2178 pbn_b2_bt_2_115200 }, 2175 pbn_b2_bt_2_115200 },
2179 { PCI_VENDOR_ID_SEALEVEL, PCI_DEVICE_ID_SEALEVEL_UCOMM422, 2176 { PCI_VENDOR_ID_SEALEVEL, PCI_DEVICE_ID_SEALEVEL_UCOMM422,
2180 PCI_ANY_ID, PCI_ANY_ID, 0, 0, 2177 PCI_ANY_ID, PCI_ANY_ID, 0, 0,
2181 pbn_b2_bt_4_115200 }, 2178 pbn_b2_bt_4_115200 },
2182 { PCI_VENDOR_ID_SEALEVEL, PCI_DEVICE_ID_SEALEVEL_UCOMM232, 2179 { PCI_VENDOR_ID_SEALEVEL, PCI_DEVICE_ID_SEALEVEL_UCOMM232,
2183 PCI_ANY_ID, PCI_ANY_ID, 0, 0, 2180 PCI_ANY_ID, PCI_ANY_ID, 0, 0,
2184 pbn_b2_bt_2_115200 }, 2181 pbn_b2_bt_2_115200 },
2185 { PCI_VENDOR_ID_SEALEVEL, PCI_DEVICE_ID_SEALEVEL_COMM4, 2182 { PCI_VENDOR_ID_SEALEVEL, PCI_DEVICE_ID_SEALEVEL_COMM4,
2186 PCI_ANY_ID, PCI_ANY_ID, 0, 0, 2183 PCI_ANY_ID, PCI_ANY_ID, 0, 0,
2187 pbn_b2_bt_4_115200 }, 2184 pbn_b2_bt_4_115200 },
2188 { PCI_VENDOR_ID_SEALEVEL, PCI_DEVICE_ID_SEALEVEL_COMM8, 2185 { PCI_VENDOR_ID_SEALEVEL, PCI_DEVICE_ID_SEALEVEL_COMM8,
2189 PCI_ANY_ID, PCI_ANY_ID, 0, 0, 2186 PCI_ANY_ID, PCI_ANY_ID, 0, 0,
2190 pbn_b2_8_115200 }, 2187 pbn_b2_8_115200 },
2191 { PCI_VENDOR_ID_SEALEVEL, PCI_DEVICE_ID_SEALEVEL_UCOMM8, 2188 { PCI_VENDOR_ID_SEALEVEL, PCI_DEVICE_ID_SEALEVEL_UCOMM8,
2192 PCI_ANY_ID, PCI_ANY_ID, 0, 0, 2189 PCI_ANY_ID, PCI_ANY_ID, 0, 0,
@@ -2201,11 +2198,11 @@ static struct pci_device_id serial_pci_tbl[] = {
2201 /* 2198 /*
2202 * VScom SPCOM800, from sl@s.pl 2199 * VScom SPCOM800, from sl@s.pl
2203 */ 2200 */
2204 { PCI_VENDOR_ID_PLX, PCI_DEVICE_ID_PLX_SPCOM800, 2201 { PCI_VENDOR_ID_PLX, PCI_DEVICE_ID_PLX_SPCOM800,
2205 PCI_ANY_ID, PCI_ANY_ID, 0, 0, 2202 PCI_ANY_ID, PCI_ANY_ID, 0, 0,
2206 pbn_b2_8_921600 }, 2203 pbn_b2_8_921600 },
2207 { PCI_VENDOR_ID_PLX, PCI_DEVICE_ID_PLX_1077, 2204 { PCI_VENDOR_ID_PLX, PCI_DEVICE_ID_PLX_1077,
2208 PCI_ANY_ID, PCI_ANY_ID, 0, 0, 2205 PCI_ANY_ID, PCI_ANY_ID, 0, 0,
2209 pbn_b2_4_921600 }, 2206 pbn_b2_4_921600 },
2210 { PCI_VENDOR_ID_PLX, PCI_DEVICE_ID_PLX_9050, 2207 { PCI_VENDOR_ID_PLX, PCI_DEVICE_ID_PLX_9050,
2211 PCI_SUBVENDOR_ID_KEYSPAN, 2208 PCI_SUBVENDOR_ID_KEYSPAN,
@@ -2223,27 +2220,27 @@ static struct pci_device_id serial_pci_tbl[] = {
2223 pbn_b2_4_115200 }, 2220 pbn_b2_4_115200 },
2224 { PCI_VENDOR_ID_PLX, PCI_DEVICE_ID_PLX_9050, 2221 { PCI_VENDOR_ID_PLX, PCI_DEVICE_ID_PLX_9050,
2225 PCI_SUBVENDOR_ID_CHASE_PCIFAST, 2222 PCI_SUBVENDOR_ID_CHASE_PCIFAST,
2226 PCI_SUBDEVICE_ID_CHASE_PCIFAST4, 0, 0, 2223 PCI_SUBDEVICE_ID_CHASE_PCIFAST4, 0, 0,
2227 pbn_b2_4_460800 }, 2224 pbn_b2_4_460800 },
2228 { PCI_VENDOR_ID_PLX, PCI_DEVICE_ID_PLX_9050, 2225 { PCI_VENDOR_ID_PLX, PCI_DEVICE_ID_PLX_9050,
2229 PCI_SUBVENDOR_ID_CHASE_PCIFAST, 2226 PCI_SUBVENDOR_ID_CHASE_PCIFAST,
2230 PCI_SUBDEVICE_ID_CHASE_PCIFAST8, 0, 0, 2227 PCI_SUBDEVICE_ID_CHASE_PCIFAST8, 0, 0,
2231 pbn_b2_8_460800 }, 2228 pbn_b2_8_460800 },
2232 { PCI_VENDOR_ID_PLX, PCI_DEVICE_ID_PLX_9050, 2229 { PCI_VENDOR_ID_PLX, PCI_DEVICE_ID_PLX_9050,
2233 PCI_SUBVENDOR_ID_CHASE_PCIFAST, 2230 PCI_SUBVENDOR_ID_CHASE_PCIFAST,
2234 PCI_SUBDEVICE_ID_CHASE_PCIFAST16, 0, 0, 2231 PCI_SUBDEVICE_ID_CHASE_PCIFAST16, 0, 0,
2235 pbn_b2_16_460800 }, 2232 pbn_b2_16_460800 },
2236 { PCI_VENDOR_ID_PLX, PCI_DEVICE_ID_PLX_9050, 2233 { PCI_VENDOR_ID_PLX, PCI_DEVICE_ID_PLX_9050,
2237 PCI_SUBVENDOR_ID_CHASE_PCIFAST, 2234 PCI_SUBVENDOR_ID_CHASE_PCIFAST,
2238 PCI_SUBDEVICE_ID_CHASE_PCIFAST16FMC, 0, 0, 2235 PCI_SUBDEVICE_ID_CHASE_PCIFAST16FMC, 0, 0,
2239 pbn_b2_16_460800 }, 2236 pbn_b2_16_460800 },
2240 { PCI_VENDOR_ID_PLX, PCI_DEVICE_ID_PLX_9050, 2237 { PCI_VENDOR_ID_PLX, PCI_DEVICE_ID_PLX_9050,
2241 PCI_SUBVENDOR_ID_CHASE_PCIRAS, 2238 PCI_SUBVENDOR_ID_CHASE_PCIRAS,
2242 PCI_SUBDEVICE_ID_CHASE_PCIRAS4, 0, 0, 2239 PCI_SUBDEVICE_ID_CHASE_PCIRAS4, 0, 0,
2243 pbn_b2_4_460800 }, 2240 pbn_b2_4_460800 },
2244 { PCI_VENDOR_ID_PLX, PCI_DEVICE_ID_PLX_9050, 2241 { PCI_VENDOR_ID_PLX, PCI_DEVICE_ID_PLX_9050,
2245 PCI_SUBVENDOR_ID_CHASE_PCIRAS, 2242 PCI_SUBVENDOR_ID_CHASE_PCIRAS,
2246 PCI_SUBDEVICE_ID_CHASE_PCIRAS8, 0, 0, 2243 PCI_SUBDEVICE_ID_CHASE_PCIRAS8, 0, 0,
2247 pbn_b2_8_460800 }, 2244 pbn_b2_8_460800 },
2248 { PCI_VENDOR_ID_PLX, PCI_DEVICE_ID_PLX_9050, 2245 { PCI_VENDOR_ID_PLX, PCI_DEVICE_ID_PLX_9050,
2249 PCI_SUBVENDOR_ID_EXSYS, 2246 PCI_SUBVENDOR_ID_EXSYS,
@@ -2269,10 +2266,12 @@ static struct pci_device_id serial_pci_tbl[] = {
2269 PCI_ANY_ID, PCI_ANY_ID, 0, 0, 2266 PCI_ANY_ID, PCI_ANY_ID, 0, 0,
2270 pbn_b1_8_115200 }, 2267 pbn_b1_8_115200 },
2271 { PCI_VENDOR_ID_SPECIALIX, PCI_DEVICE_ID_OXSEMI_16PCI954, 2268 { PCI_VENDOR_ID_SPECIALIX, PCI_DEVICE_ID_OXSEMI_16PCI954,
2272 PCI_VENDOR_ID_SPECIALIX, PCI_SUBDEVICE_ID_SPECIALIX_SPEED4, 0, 0, 2269 PCI_VENDOR_ID_SPECIALIX, PCI_SUBDEVICE_ID_SPECIALIX_SPEED4,
2270 0, 0,
2273 pbn_b0_4_921600 }, 2271 pbn_b0_4_921600 },
2274 { PCI_VENDOR_ID_OXSEMI, PCI_DEVICE_ID_OXSEMI_16PCI954, 2272 { PCI_VENDOR_ID_OXSEMI, PCI_DEVICE_ID_OXSEMI_16PCI954,
2275 PCI_SUBVENDOR_ID_SIIG, PCI_SUBDEVICE_ID_SIIG_QUARTET_SERIAL, 0, 0, 2273 PCI_SUBVENDOR_ID_SIIG, PCI_SUBDEVICE_ID_SIIG_QUARTET_SERIAL,
2274 0, 0,
2276 pbn_b0_4_1152000 }, 2275 pbn_b0_4_1152000 },
2277 2276
2278 /* 2277 /*
@@ -2312,7 +2311,7 @@ static struct pci_device_id serial_pci_tbl[] = {
2312 * Digitan DS560-558, from jimd@esoft.com 2311 * Digitan DS560-558, from jimd@esoft.com
2313 */ 2312 */
2314 { PCI_VENDOR_ID_ATT, PCI_DEVICE_ID_ATT_VENUS_MODEM, 2313 { PCI_VENDOR_ID_ATT, PCI_DEVICE_ID_ATT_VENUS_MODEM,
2315 PCI_ANY_ID, PCI_ANY_ID, 0, 0, 2314 PCI_ANY_ID, PCI_ANY_ID, 0, 0,
2316 pbn_b1_1_115200 }, 2315 pbn_b1_1_115200 },
2317 2316
2318 /* 2317 /*
@@ -2320,16 +2319,16 @@ static struct pci_device_id serial_pci_tbl[] = {
2320 * The 400L and 800L have a custom setup quirk. 2319 * The 400L and 800L have a custom setup quirk.
2321 */ 2320 */
2322 { PCI_VENDOR_ID_TITAN, PCI_DEVICE_ID_TITAN_100, 2321 { PCI_VENDOR_ID_TITAN, PCI_DEVICE_ID_TITAN_100,
2323 PCI_ANY_ID, PCI_ANY_ID, 0, 0, 2322 PCI_ANY_ID, PCI_ANY_ID, 0, 0,
2324 pbn_b0_1_921600 }, 2323 pbn_b0_1_921600 },
2325 { PCI_VENDOR_ID_TITAN, PCI_DEVICE_ID_TITAN_200, 2324 { PCI_VENDOR_ID_TITAN, PCI_DEVICE_ID_TITAN_200,
2326 PCI_ANY_ID, PCI_ANY_ID, 0, 0, 2325 PCI_ANY_ID, PCI_ANY_ID, 0, 0,
2327 pbn_b0_2_921600 }, 2326 pbn_b0_2_921600 },
2328 { PCI_VENDOR_ID_TITAN, PCI_DEVICE_ID_TITAN_400, 2327 { PCI_VENDOR_ID_TITAN, PCI_DEVICE_ID_TITAN_400,
2329 PCI_ANY_ID, PCI_ANY_ID, 0, 0, 2328 PCI_ANY_ID, PCI_ANY_ID, 0, 0,
2330 pbn_b0_4_921600 }, 2329 pbn_b0_4_921600 },
2331 { PCI_VENDOR_ID_TITAN, PCI_DEVICE_ID_TITAN_800B, 2330 { PCI_VENDOR_ID_TITAN, PCI_DEVICE_ID_TITAN_800B,
2332 PCI_ANY_ID, PCI_ANY_ID, 0, 0, 2331 PCI_ANY_ID, PCI_ANY_ID, 0, 0,
2333 pbn_b0_4_921600 }, 2332 pbn_b0_4_921600 },
2334 { PCI_VENDOR_ID_TITAN, PCI_DEVICE_ID_TITAN_100L, 2333 { PCI_VENDOR_ID_TITAN, PCI_DEVICE_ID_TITAN_100L,
2335 PCI_ANY_ID, PCI_ANY_ID, 0, 0, 2334 PCI_ANY_ID, PCI_ANY_ID, 0, 0,