]> err.no Git - linux-2.6/blobdiff - drivers/serial/8250_pci.c
[PATCH] 3c59x: read current link status from phy
[linux-2.6] / drivers / serial / 8250_pci.c
index 4e9084edfc7edbf2c5f028ee956fa936692798be..0e21f583690ebdeffa57f316bd8fba2c67da8e71 100644 (file)
@@ -46,7 +46,7 @@ struct pci_serial_quirk {
        u32     subdevice;
        int     (*init)(struct pci_dev *dev);
        int     (*setup)(struct serial_private *, struct pciserial_board *,
-                        struct uart_port *port, int idx);
+                        struct uart_port *, int);
        void    (*exit)(struct pci_dev *dev);
 };
 
@@ -436,25 +436,6 @@ static int pci_siig_init(struct pci_dev *dev)
        return -ENODEV;
 }
 
-int pci_siig10x_fn(struct pci_dev *dev, int enable)
-{
-       int ret = 0;
-       if (enable)
-               ret = pci_siig10x_init(dev);
-       return ret;
-}
-
-int pci_siig20x_fn(struct pci_dev *dev, int enable)
-{
-       int ret = 0;
-       if (enable)
-               ret = pci_siig20x_init(dev);
-       return ret;
-}
-
-EXPORT_SYMBOL(pci_siig10x_fn);
-EXPORT_SYMBOL(pci_siig20x_fn);
-
 /*
  * Timedia has an explosion of boards, and to avoid the PCI table from
  * growing *huge*, we use this function to collapse some 70 entries
@@ -884,6 +865,8 @@ enum pci_board_num_t {
        pbn_b0_2_921600,
        pbn_b0_4_921600,
 
+       pbn_b0_2_1130000,
+
        pbn_b0_4_1152000,
 
        pbn_b0_bt_1_115200,
@@ -1018,6 +1001,14 @@ static struct pciserial_board pci_boards[] __devinitdata = {
                .base_baud      = 921600,
                .uart_offset    = 8,
        },
+
+       [pbn_b0_2_1130000] = {
+               .flags          = FL_BASE0,
+               .num_ports      = 2,
+               .base_baud      = 1130000,
+               .uart_offset    = 8,
+       },
+
        [pbn_b0_4_1152000] = {
                .flags          = FL_BASE0,
                .num_ports      = 4,
@@ -1887,6 +1878,16 @@ static struct pci_device_id serial_pci_tbl[] = {
        {       PCI_VENDOR_ID_OXSEMI, PCI_DEVICE_ID_OXSEMI_16PCI954,
                PCI_SUBVENDOR_ID_SIIG, PCI_SUBDEVICE_ID_SIIG_QUARTET_SERIAL, 0, 0,
                pbn_b0_4_1152000 },
+
+               /*
+                * The below card is a little controversial since it is the
+                * subject of a PCI vendor/device ID clash.  (See
+                * www.ussg.iu.edu/hypermail/linux/kernel/0303.1/0516.html).
+                * For now just used the hex ID 0x950a.
+                */
+       {       PCI_VENDOR_ID_OXSEMI, 0x950a,
+               PCI_ANY_ID, PCI_ANY_ID, 0, 0,
+               pbn_b0_2_1130000 },
        {       PCI_VENDOR_ID_OXSEMI, PCI_DEVICE_ID_OXSEMI_16PCI954,
                PCI_ANY_ID, PCI_ANY_ID, 0, 0,
                pbn_b0_4_115200 },