2007-09-18 15:12:50 -04:00
/*
* Broadcom 43 xx PCI - SSB bridge module
*
2008-02-03 17:30:25 +02:00
* This technically is a separate PCI driver module , but
2007-09-18 15:12:50 -04:00
* because of its small size we include it in the SSB core
* instead of creating a standalone module .
*
2011-07-04 20:50:05 +02:00
* Copyright 2007 Michael Buesch < m @ bues . ch >
2007-09-18 15:12:50 -04:00
*
* Licensed under the GNU / GPL . See COPYING for details .
*/
2018-07-31 21:56:38 +02:00
# include "ssb_private.h"
2007-09-18 15:12:50 -04:00
# include <linux/pci.h>
2011-07-17 16:03:40 -04:00
# include <linux/module.h>
2007-09-18 15:12:50 -04:00
# include <linux/ssb/ssb.h>
static const struct pci_device_id b43_pci_bridge_tbl [ ] = {
{ PCI_DEVICE ( PCI_VENDOR_ID_BROADCOM , 0x4301 ) } ,
2009-03-24 10:36:48 +01:00
{ PCI_DEVICE ( PCI_VENDOR_ID_BROADCOM , 0x4306 ) } ,
2007-09-18 15:12:50 -04:00
{ PCI_DEVICE ( PCI_VENDOR_ID_BROADCOM , 0x4307 ) } ,
{ PCI_DEVICE ( PCI_VENDOR_ID_BROADCOM , 0x4311 ) } ,
{ PCI_DEVICE ( PCI_VENDOR_ID_BROADCOM , 0x4312 ) } ,
2008-12-25 00:39:28 +01:00
{ PCI_DEVICE ( PCI_VENDOR_ID_BROADCOM , 0x4315 ) } ,
2007-09-18 15:12:50 -04:00
{ PCI_DEVICE ( PCI_VENDOR_ID_BROADCOM , 0x4318 ) } ,
2010-11-19 21:25:21 -06:00
{ PCI_DEVICE ( PCI_VENDOR_ID_BCM_GVC , 0x4318 ) } ,
2007-09-18 15:12:50 -04:00
{ PCI_DEVICE ( PCI_VENDOR_ID_BROADCOM , 0x4319 ) } ,
{ PCI_DEVICE ( PCI_VENDOR_ID_BROADCOM , 0x4320 ) } ,
{ PCI_DEVICE ( PCI_VENDOR_ID_BROADCOM , 0x4321 ) } ,
2012-05-10 00:22:46 +02:00
{ PCI_DEVICE ( PCI_VENDOR_ID_BROADCOM , 0x4322 ) } ,
{ PCI_DEVICE ( PCI_VENDOR_ID_BROADCOM , 43222 ) } ,
2007-09-18 15:12:50 -04:00
{ PCI_DEVICE ( PCI_VENDOR_ID_BROADCOM , 0x4324 ) } ,
{ PCI_DEVICE ( PCI_VENDOR_ID_BROADCOM , 0x4325 ) } ,
2007-11-09 16:56:25 -06:00
{ PCI_DEVICE ( PCI_VENDOR_ID_BROADCOM , 0x4328 ) } ,
2008-01-03 19:03:09 +01:00
{ PCI_DEVICE ( PCI_VENDOR_ID_BROADCOM , 0x4329 ) } ,
2008-12-24 12:44:09 +01:00
{ PCI_DEVICE ( PCI_VENDOR_ID_BROADCOM , 0x432b ) } ,
2012-06-10 22:11:56 +02:00
{ PCI_DEVICE ( PCI_VENDOR_ID_BROADCOM , 0x432c ) } ,
2012-10-25 18:39:28 +02:00
{ PCI_DEVICE ( PCI_VENDOR_ID_BROADCOM , 0x4350 ) } ,
2014-07-28 21:01:06 +02:00
{ PCI_DEVICE ( PCI_VENDOR_ID_BROADCOM , 0x4351 ) } ,
2007-09-18 15:12:50 -04:00
{ 0 , } ,
} ;
MODULE_DEVICE_TABLE ( pci , b43_pci_bridge_tbl ) ;
static struct pci_driver b43_pci_bridge_driver = {
. name = " b43-pci-bridge " ,
. id_table = b43_pci_bridge_tbl ,
} ;
int __init b43_pci_ssb_bridge_init ( void )
{
return ssb_pcihost_register ( & b43_pci_bridge_driver ) ;
}
void __exit b43_pci_ssb_bridge_exit ( void )
{
ssb_pcihost_unregister ( & b43_pci_bridge_driver ) ;
}