Branch data Line data Source code
1 : : /*
2 : : * Broadcom 43xx PCI-SSB bridge module
3 : : *
4 : : * This technically is a separate PCI driver module, but
5 : : * because of its small size we include it in the SSB core
6 : : * instead of creating a standalone module.
7 : : *
8 : : * Copyright 2007 Michael Buesch <m@bues.ch>
9 : : *
10 : : * Licensed under the GNU/GPL. See COPYING for details.
11 : : */
12 : :
13 : : #include "ssb_private.h"
14 : :
15 : : #include <linux/pci.h>
16 : : #include <linux/module.h>
17 : : #include <linux/ssb/ssb.h>
18 : :
19 : :
20 : : static const struct pci_device_id b43_pci_bridge_tbl[] = {
21 : : { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4301) },
22 : : { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4306) },
23 : : { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4307) },
24 : : { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4311) },
25 : : { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4312) },
26 : : { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4315) },
27 : : { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4318) },
28 : : { PCI_DEVICE(PCI_VENDOR_ID_BCM_GVC, 0x4318) },
29 : : { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4319) },
30 : : { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4320) },
31 : : { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4321) },
32 : : { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4322) },
33 : : { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 43222) },
34 : : { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4324) },
35 : : { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4325) },
36 : : { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4328) },
37 : : { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4329) },
38 : : { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x432b) },
39 : : { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x432c) },
40 : : { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4350) },
41 : : { PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4351) },
42 : : { 0, },
43 : : };
44 : : MODULE_DEVICE_TABLE(pci, b43_pci_bridge_tbl);
45 : :
46 : : static struct pci_driver b43_pci_bridge_driver = {
47 : : .name = "b43-pci-bridge",
48 : : .id_table = b43_pci_bridge_tbl,
49 : : };
50 : :
51 : :
52 : 28 : int __init b43_pci_ssb_bridge_init(void)
53 : : {
54 : 28 : return ssb_pcihost_register(&b43_pci_bridge_driver);
55 : : }
56 : :
57 : 0 : void __exit b43_pci_ssb_bridge_exit(void)
58 : : {
59 : 0 : ssb_pcihost_unregister(&b43_pci_bridge_driver);
60 : 0 : }
|