summaryrefslogtreecommitdiff
path: root/drivers/parport/parport_pc.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/parport/parport_pc.c')
-rw-r--r--drivers/parport/parport_pc.c204
1 files changed, 108 insertions, 96 deletions
diff --git a/drivers/parport/parport_pc.c b/drivers/parport/parport_pc.c
index c75abdd8ef25..bccfe75fe6e5 100644
--- a/drivers/parport/parport_pc.c
+++ b/drivers/parport/parport_pc.c
@@ -2745,116 +2745,128 @@ static struct parport_pc_pci {
static const struct pci_device_id parport_pc_pci_tbl[] = {
/* Super-IO onboard chips */
- { 0x1106, 0x0686, PCI_ANY_ID, PCI_ANY_ID, 0, 0, sio_via_686a },
- { 0x1106, 0x8231, PCI_ANY_ID, PCI_ANY_ID, 0, 0, sio_via_8231 },
- { PCI_VENDOR_ID_ITE, PCI_DEVICE_ID_ITE_8872,
- PCI_ANY_ID, PCI_ANY_ID, 0, 0, sio_ite_8872 },
+ { PCI_DEVICE(0x1106, 0x0686),
+ .driver_data = sio_via_686a },
+ { PCI_DEVICE(0x1106, 0x8231),
+ .driver_data = sio_via_8231 },
+ { PCI_VDEVICE(ITE, PCI_DEVICE_ID_ITE_8872),
+ .driver_data = sio_ite_8872 },
/* PCI cards */
- { PCI_VENDOR_ID_SIIG, PCI_DEVICE_ID_SIIG_1P_10x,
- PCI_ANY_ID, PCI_ANY_ID, 0, 0, siig_1p_10x },
- { PCI_VENDOR_ID_SIIG, PCI_DEVICE_ID_SIIG_2P_10x,
- PCI_ANY_ID, PCI_ANY_ID, 0, 0, siig_2p_10x },
- { PCI_VENDOR_ID_SIIG, PCI_DEVICE_ID_SIIG_1P_20x,
- PCI_ANY_ID, PCI_ANY_ID, 0, 0, siig_1p_20x },
- { PCI_VENDOR_ID_SIIG, PCI_DEVICE_ID_SIIG_2P_20x,
- PCI_ANY_ID, PCI_ANY_ID, 0, 0, siig_2p_20x },
- { PCI_VENDOR_ID_LAVA, PCI_DEVICE_ID_LAVA_PARALLEL,
- PCI_ANY_ID, PCI_ANY_ID, 0, 0, lava_parallel },
- { PCI_VENDOR_ID_LAVA, PCI_DEVICE_ID_LAVA_DUAL_PAR_A,
- PCI_ANY_ID, PCI_ANY_ID, 0, 0, lava_parallel_dual_a },
- { PCI_VENDOR_ID_LAVA, PCI_DEVICE_ID_LAVA_DUAL_PAR_B,
- PCI_ANY_ID, PCI_ANY_ID, 0, 0, lava_parallel_dual_b },
- { PCI_VENDOR_ID_LAVA, PCI_DEVICE_ID_LAVA_BOCA_IOPPAR,
- PCI_ANY_ID, PCI_ANY_ID, 0, 0, boca_ioppar },
- { PCI_VENDOR_ID_PLX, PCI_DEVICE_ID_PLX_9050,
- PCI_SUBVENDOR_ID_EXSYS, PCI_SUBDEVICE_ID_EXSYS_4014, 0, 0, plx_9050 },
+ { PCI_VDEVICE(SIIG, PCI_DEVICE_ID_SIIG_1P_10x),
+ .driver_data = siig_1p_10x },
+ { PCI_VDEVICE(SIIG, PCI_DEVICE_ID_SIIG_2P_10x),
+ .driver_data = siig_2p_10x },
+ { PCI_VDEVICE(SIIG, PCI_DEVICE_ID_SIIG_1P_20x),
+ .driver_data = siig_1p_20x },
+ { PCI_VDEVICE(SIIG, PCI_DEVICE_ID_SIIG_2P_20x),
+ .driver_data = siig_2p_20x },
+ { PCI_VDEVICE(LAVA, PCI_DEVICE_ID_LAVA_PARALLEL),
+ .driver_data = lava_parallel },
+ { PCI_VDEVICE(LAVA, PCI_DEVICE_ID_LAVA_DUAL_PAR_A),
+ .driver_data = lava_parallel_dual_a },
+ { PCI_VDEVICE(LAVA, PCI_DEVICE_ID_LAVA_DUAL_PAR_B),
+ .driver_data = lava_parallel_dual_b },
+ { PCI_VDEVICE(LAVA, PCI_DEVICE_ID_LAVA_BOCA_IOPPAR),
+ .driver_data = boca_ioppar },
+ { PCI_VDEVICE_SUB(PLX, PCI_DEVICE_ID_PLX_9050,
+ PCI_SUBVENDOR_ID_EXSYS, PCI_SUBDEVICE_ID_EXSYS_4014),
+ .driver_data = plx_9050 },
/* PCI_VENDOR_ID_TIMEDIA/SUNIX has many differing cards ...*/
- { 0x1409, 0x7268, 0x1409, 0x0101, 0, 0, timedia_4006a },
- { 0x1409, 0x7268, 0x1409, 0x0102, 0, 0, timedia_4014 },
- { 0x1409, 0x7268, 0x1409, 0x0103, 0, 0, timedia_4008a },
- { 0x1409, 0x7268, 0x1409, 0x0104, 0, 0, timedia_4018 },
- { 0x1409, 0x7268, 0x1409, 0x9018, 0, 0, timedia_9018a },
- { PCI_VENDOR_ID_SYBA, PCI_DEVICE_ID_SYBA_2P_EPP,
- PCI_ANY_ID, PCI_ANY_ID, 0, 0, syba_2p_epp },
- { PCI_VENDOR_ID_SYBA, PCI_DEVICE_ID_SYBA_1P_ECP,
- PCI_ANY_ID, PCI_ANY_ID, 0, 0, syba_1p_ecp },
- { PCI_VENDOR_ID_TITAN, PCI_DEVICE_ID_TITAN_010L,
- PCI_ANY_ID, PCI_ANY_ID, 0, 0, titan_010l },
+ { PCI_DEVICE_SUB(0x1409, 0x7268, 0x1409, 0x0101),
+ .driver_data = timedia_4006a },
+ { PCI_DEVICE_SUB(0x1409, 0x7268, 0x1409, 0x0102),
+ .driver_data = timedia_4014 },
+ { PCI_DEVICE_SUB(0x1409, 0x7268, 0x1409, 0x0103),
+ .driver_data = timedia_4008a },
+ { PCI_DEVICE_SUB(0x1409, 0x7268, 0x1409, 0x0104),
+ .driver_data = timedia_4018 },
+ { PCI_DEVICE_SUB(0x1409, 0x7268, 0x1409, 0x9018),
+ .driver_data = timedia_9018a },
+ { PCI_VDEVICE(SYBA, PCI_DEVICE_ID_SYBA_2P_EPP),
+ .driver_data = syba_2p_epp },
+ { PCI_VDEVICE(SYBA, PCI_DEVICE_ID_SYBA_1P_ECP),
+ .driver_data = syba_1p_ecp },
+ { PCI_VDEVICE(TITAN, PCI_DEVICE_ID_TITAN_010L),
+ .driver_data = titan_010l },
/* PCI_VENDOR_ID_AVLAB/Intek21 has another bunch of cards ...*/
/* AFAVLAB_TK9902 */
- { 0x14db, 0x2120, PCI_ANY_ID, PCI_ANY_ID, 0, 0, avlab_1p},
- { 0x14db, 0x2121, PCI_ANY_ID, PCI_ANY_ID, 0, 0, avlab_2p},
- { PCI_VENDOR_ID_OXSEMI, PCI_DEVICE_ID_OXSEMI_16PCI952PP,
- PCI_ANY_ID, PCI_ANY_ID, 0, 0, oxsemi_952 },
- { PCI_VENDOR_ID_OXSEMI, PCI_DEVICE_ID_OXSEMI_16PCI954PP,
- PCI_ANY_ID, PCI_ANY_ID, 0, 0, oxsemi_954 },
- { PCI_VENDOR_ID_OXSEMI, PCI_DEVICE_ID_OXSEMI_12PCI840,
- PCI_ANY_ID, PCI_ANY_ID, 0, 0, oxsemi_840 },
- { PCI_VENDOR_ID_OXSEMI, PCI_DEVICE_ID_OXSEMI_PCIe840,
- PCI_ANY_ID, PCI_ANY_ID, 0, 0, oxsemi_pcie_pport },
- { PCI_VENDOR_ID_OXSEMI, PCI_DEVICE_ID_OXSEMI_PCIe840_G,
- PCI_ANY_ID, PCI_ANY_ID, 0, 0, oxsemi_pcie_pport },
- { PCI_VENDOR_ID_OXSEMI, PCI_DEVICE_ID_OXSEMI_PCIe952_0,
- PCI_ANY_ID, PCI_ANY_ID, 0, 0, oxsemi_pcie_pport },
- { PCI_VENDOR_ID_OXSEMI, PCI_DEVICE_ID_OXSEMI_PCIe952_0_G,
- PCI_ANY_ID, PCI_ANY_ID, 0, 0, oxsemi_pcie_pport },
- { PCI_VENDOR_ID_OXSEMI, PCI_DEVICE_ID_OXSEMI_PCIe952_1,
- PCI_ANY_ID, PCI_ANY_ID, 0, 0, oxsemi_pcie_pport },
- { PCI_VENDOR_ID_OXSEMI, PCI_DEVICE_ID_OXSEMI_PCIe952_1_G,
- PCI_ANY_ID, PCI_ANY_ID, 0, 0, oxsemi_pcie_pport },
- { PCI_VENDOR_ID_OXSEMI, PCI_DEVICE_ID_OXSEMI_PCIe952_1_U,
- PCI_ANY_ID, PCI_ANY_ID, 0, 0, oxsemi_pcie_pport },
- { PCI_VENDOR_ID_OXSEMI, PCI_DEVICE_ID_OXSEMI_PCIe952_1_GU,
- PCI_ANY_ID, PCI_ANY_ID, 0, 0, oxsemi_pcie_pport },
- { PCI_VENDOR_ID_AKS, PCI_DEVICE_ID_AKS_ALADDINCARD,
- PCI_ANY_ID, PCI_ANY_ID, 0, 0, aks_0100 },
- { 0x14f2, 0x0121, PCI_ANY_ID, PCI_ANY_ID, 0, 0, mobility_pp },
+ { PCI_DEVICE(0x14db, 0x2120),
+ .driver_data = avlab_1p },
+ { PCI_DEVICE(0x14db, 0x2121),
+ .driver_data = avlab_2p },
+ { PCI_VDEVICE(OXSEMI, PCI_DEVICE_ID_OXSEMI_16PCI952PP),
+ .driver_data = oxsemi_952 },
+ { PCI_VDEVICE(OXSEMI, PCI_DEVICE_ID_OXSEMI_16PCI954PP),
+ .driver_data = oxsemi_954 },
+ { PCI_VDEVICE(OXSEMI, PCI_DEVICE_ID_OXSEMI_12PCI840),
+ .driver_data = oxsemi_840 },
+ { PCI_VDEVICE(OXSEMI, PCI_DEVICE_ID_OXSEMI_PCIe840),
+ .driver_data = oxsemi_pcie_pport },
+ { PCI_VDEVICE(OXSEMI, PCI_DEVICE_ID_OXSEMI_PCIe840_G),
+ .driver_data = oxsemi_pcie_pport },
+ { PCI_VDEVICE(OXSEMI, PCI_DEVICE_ID_OXSEMI_PCIe952_0),
+ .driver_data = oxsemi_pcie_pport },
+ { PCI_VDEVICE(OXSEMI, PCI_DEVICE_ID_OXSEMI_PCIe952_0_G),
+ .driver_data = oxsemi_pcie_pport },
+ { PCI_VDEVICE(OXSEMI, PCI_DEVICE_ID_OXSEMI_PCIe952_1),
+ .driver_data = oxsemi_pcie_pport },
+ { PCI_VDEVICE(OXSEMI, PCI_DEVICE_ID_OXSEMI_PCIe952_1_G),
+ .driver_data = oxsemi_pcie_pport },
+ { PCI_VDEVICE(OXSEMI, PCI_DEVICE_ID_OXSEMI_PCIe952_1_U),
+ .driver_data = oxsemi_pcie_pport },
+ { PCI_VDEVICE(OXSEMI, PCI_DEVICE_ID_OXSEMI_PCIe952_1_GU),
+ .driver_data = oxsemi_pcie_pport },
+ { PCI_VDEVICE(AKS, PCI_DEVICE_ID_AKS_ALADDINCARD),
+ .driver_data = aks_0100 },
+ { PCI_DEVICE(0x14f2, 0x0121),
+ .driver_data = mobility_pp },
/* NetMos communication controllers */
- { PCI_VENDOR_ID_NETMOS, PCI_DEVICE_ID_NETMOS_9900,
- 0xA000, 0x2000, 0, 0, netmos_9900 },
- { PCI_VENDOR_ID_NETMOS, PCI_DEVICE_ID_NETMOS_9705,
- PCI_ANY_ID, PCI_ANY_ID, 0, 0, netmos_9705 },
- { PCI_VENDOR_ID_NETMOS, PCI_DEVICE_ID_NETMOS_9715,
- PCI_ANY_ID, PCI_ANY_ID, 0, 0, netmos_9715 },
- { PCI_VENDOR_ID_NETMOS, PCI_DEVICE_ID_NETMOS_9755,
- PCI_ANY_ID, PCI_ANY_ID, 0, 0, netmos_9755 },
- { PCI_VENDOR_ID_NETMOS, PCI_DEVICE_ID_NETMOS_9805,
- PCI_ANY_ID, PCI_ANY_ID, 0, 0, netmos_9805 },
- { PCI_VENDOR_ID_NETMOS, PCI_DEVICE_ID_NETMOS_9815,
- PCI_ANY_ID, PCI_ANY_ID, 0, 0, netmos_9815 },
- { PCI_VENDOR_ID_NETMOS, PCI_DEVICE_ID_NETMOS_9901,
- 0xA000, 0x2000, 0, 0, netmos_9901 },
- { PCI_VENDOR_ID_NETMOS, PCI_DEVICE_ID_NETMOS_9865,
- 0xA000, 0x1000, 0, 0, netmos_9865 },
- { PCI_VENDOR_ID_NETMOS, PCI_DEVICE_ID_NETMOS_9865,
- 0xA000, 0x2000, 0, 0, netmos_9865 },
+ { PCI_VDEVICE_SUB(NETMOS, PCI_DEVICE_ID_NETMOS_9900, 0xA000, 0x2000),
+ .driver_data = netmos_9900 },
+ { PCI_VDEVICE(NETMOS, PCI_DEVICE_ID_NETMOS_9705),
+ .driver_data = netmos_9705 },
+ { PCI_VDEVICE(NETMOS, PCI_DEVICE_ID_NETMOS_9715),
+ .driver_data = netmos_9715 },
+ { PCI_VDEVICE(NETMOS, PCI_DEVICE_ID_NETMOS_9755),
+ .driver_data = netmos_9755 },
+ { PCI_VDEVICE(NETMOS, PCI_DEVICE_ID_NETMOS_9805),
+ .driver_data = netmos_9805 },
+ { PCI_VDEVICE(NETMOS, PCI_DEVICE_ID_NETMOS_9815),
+ .driver_data = netmos_9815 },
+ { PCI_VDEVICE_SUB(NETMOS, PCI_DEVICE_ID_NETMOS_9901, 0xA000, 0x2000),
+ .driver_data = netmos_9901 },
+ { PCI_VDEVICE_SUB(NETMOS, PCI_DEVICE_ID_NETMOS_9865, 0xA000, 0x1000),
+ .driver_data = netmos_9865 },
+ { PCI_VDEVICE_SUB(NETMOS, PCI_DEVICE_ID_NETMOS_9865, 0xA000, 0x2000),
+ .driver_data = netmos_9865 },
/* ASIX AX99100 PCIe to Multi I/O Controller */
- { PCI_VENDOR_ID_ASIX, PCI_DEVICE_ID_ASIX_AX99100,
- 0xA000, 0x2000, 0, 0, asix_ax99100 },
+ { PCI_VDEVICE_SUB(ASIX, PCI_DEVICE_ID_ASIX_AX99100, 0xA000, 0x2000),
+ .driver_data = asix_ax99100 },
/* Quatech SPPXP-100 Parallel port PCI ExpressCard */
- { PCI_VENDOR_ID_QUATECH, PCI_DEVICE_ID_QUATECH_SPPXP_100,
- PCI_ANY_ID, PCI_ANY_ID, 0, 0, quatech_sppxp100 },
+ { PCI_VDEVICE(QUATECH, PCI_DEVICE_ID_QUATECH_SPPXP_100),
+ .driver_data = quatech_sppxp100 },
/* WCH CH382L PCI-E single parallel port card */
- { 0x1c00, 0x3050, 0x1c00, 0x3050, 0, 0, wch_ch382l },
+ { PCI_DEVICE_SUB(0x1c00, 0x3050, 0x1c00, 0x3050),
+ .driver_data = wch_ch382l },
/* Brainboxes IX-500/550 */
- { PCI_VENDOR_ID_INTASHIELD, 0x402a,
- PCI_ANY_ID, PCI_ANY_ID, 0, 0, oxsemi_pcie_pport },
+ { PCI_VDEVICE(INTASHIELD, 0x402a),
+ .driver_data = oxsemi_pcie_pport },
/* Brainboxes UC-146/UC-157 */
- { PCI_VENDOR_ID_INTASHIELD, 0x0be1,
- PCI_ANY_ID, PCI_ANY_ID, 0, 0, brainboxes_uc146 },
- { PCI_VENDOR_ID_INTASHIELD, 0x0be2,
- PCI_ANY_ID, PCI_ANY_ID, 0, 0, brainboxes_uc146 },
+ { PCI_VDEVICE(INTASHIELD, 0x0be1),
+ .driver_data = brainboxes_uc146 },
+ { PCI_VDEVICE(INTASHIELD, 0x0be2),
+ .driver_data = brainboxes_uc146 },
/* Brainboxes PX-146/PX-257 */
- { PCI_VENDOR_ID_INTASHIELD, 0x401c,
- PCI_ANY_ID, PCI_ANY_ID, 0, 0, oxsemi_pcie_pport },
+ { PCI_VDEVICE(INTASHIELD, 0x401c),
+ .driver_data = oxsemi_pcie_pport },
/* Brainboxes PX-203 */
- { PCI_VENDOR_ID_INTASHIELD, 0x4007,
- PCI_ANY_ID, PCI_ANY_ID, 0, 0, brainboxes_px203 },
+ { PCI_VDEVICE(INTASHIELD, 0x4007),
+ .driver_data = brainboxes_px203 },
/* Brainboxes PX-475 */
- { PCI_VENDOR_ID_INTASHIELD, 0x401f,
- PCI_ANY_ID, PCI_ANY_ID, 0, 0, oxsemi_pcie_pport },
- { 0, } /* terminate list */
+ { PCI_VDEVICE(INTASHIELD, 0x401f),
+ .driver_data = oxsemi_pcie_pport },
+ { } /* terminate list */
};
MODULE_DEVICE_TABLE(pci, parport_pc_pci_tbl);