diff options
Diffstat (limited to 'target/linux/brcm47xx/patches-2.6.23')
| -rw-r--r-- | target/linux/brcm47xx/patches-2.6.23/400-b43-pci_ssb_bridge.patch | 111 | 
1 files changed, 111 insertions, 0 deletions
diff --git a/target/linux/brcm47xx/patches-2.6.23/400-b43-pci_ssb_bridge.patch b/target/linux/brcm47xx/patches-2.6.23/400-b43-pci_ssb_bridge.patch new file mode 100644 index 000000000..6a7eabed2 --- /dev/null +++ b/target/linux/brcm47xx/patches-2.6.23/400-b43-pci_ssb_bridge.patch @@ -0,0 +1,111 @@ +diff -Naur linux-2.6.23.1.orig/drivers/ssb/b43_pci_bridge.c linux-2.6.23.1/drivers/ssb/b43_pci_bridge.c +--- linux-2.6.23.1.orig/drivers/ssb/b43_pci_bridge.c	2007-11-09 16:48:55.000000000 +0100 ++++ linux-2.6.23.1/drivers/ssb/b43_pci_bridge.c	1970-01-01 01:00:00.000000000 +0100 +@@ -1,48 +0,0 @@ +-/* +- * Broadcom 43xx PCI-SSB bridge module +- * +- * This technically is a seperate PCI driver module, but +- * because of its small size we include it in the SSB core +- * instead of creating a standalone module. +- * +- * Copyright 2007  Michael Buesch <mb@bu3sch.de> +- * +- * Licensed under the GNU/GPL. See COPYING for details. +- */ +- +-#include <linux/pci.h> +-#include <linux/ssb/ssb.h> +- +-#include "ssb_private.h" +- +- +-static const struct pci_device_id b43_pci_bridge_tbl[] = { +-	{ PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4301) }, +-	{ PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4307) }, +-	{ PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4311) }, +-	{ PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4312) }, +-	{ PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4318) }, +-	{ PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4319) }, +-	{ PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4320) }, +-	{ PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4321) }, +-	{ PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4324) }, +-	{ PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4325) }, +-	{ 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); +-} +diff -Naur linux-2.6.23.1.orig/drivers/ssb/main.c linux-2.6.23.1/drivers/ssb/main.c +--- linux-2.6.23.1.orig/drivers/ssb/main.c	2007-11-09 16:48:55.000000000 +0100 ++++ linux-2.6.23.1/drivers/ssb/main.c	2007-11-09 22:11:32.000000000 +0100 +@@ -1142,21 +1142,12 @@ + 	if (err) + 		bus_unregister(&ssb_bustype); +  +-	err = b43_pci_ssb_bridge_init(); +-	if (err) { +-		ssb_printk(KERN_ERR "Broadcom 43xx PCI-SSB-bridge " +-			   "initialization failed"); +-		/* don't fail SSB init because of this */ +-		err = 0; +-	} +- + 	return err; + } + subsys_initcall(ssb_modinit); +  + static void __exit ssb_modexit(void) + { +-	b43_pci_ssb_bridge_exit(); + 	bus_unregister(&ssb_bustype); + } + module_exit(ssb_modexit) +diff -Naur linux-2.6.23.1.orig/drivers/ssb/Makefile linux-2.6.23.1/drivers/ssb/Makefile +--- linux-2.6.23.1.orig/drivers/ssb/Makefile	2007-11-09 16:48:55.000000000 +0100 ++++ linux-2.6.23.1/drivers/ssb/Makefile	2007-11-09 22:30:32.000000000 +0100 +@@ -11,8 +11,4 @@ + ssb-$(CONFIG_SSB_DRIVER_EXTIF)		+= driver_extif.o + ssb-$(CONFIG_SSB_DRIVER_PCICORE)	+= driver_pcicore.o +  +-# b43 pci-ssb-bridge driver +-# Not strictly a part of SSB, but kept here for convenience +-ssb-$(CONFIG_SSB_PCIHOST)		+= b43_pci_bridge.o +- + obj-$(CONFIG_SSB)			+= ssb.o +diff -Naur linux-2.6.23.1.orig/drivers/ssb/ssb_private.h linux-2.6.23.1/drivers/ssb/ssb_private.h +--- linux-2.6.23.1.orig/drivers/ssb/ssb_private.h	2007-11-09 16:48:55.000000000 +0100 ++++ linux-2.6.23.1/drivers/ssb/ssb_private.h	2007-11-09 22:11:11.000000000 +0100 +@@ -119,18 +119,4 @@ + extern int ssb_devices_thaw(struct ssb_bus *bus); + extern struct ssb_bus *ssb_pci_dev_to_bus(struct pci_dev *pdev); +  +-/* b43_pci_bridge.c */ +-#ifdef CONFIG_SSB_PCIHOST +-extern int __init b43_pci_ssb_bridge_init(void); +-extern void __exit b43_pci_ssb_bridge_exit(void); +-#else /* CONFIG_SSB_PCIHOST */ +-static inline int b43_pci_ssb_bridge_init(void) +-{ +-	return 0; +-} +-static inline void b43_pci_ssb_bridge_exit(void) +-{ +-} +-#endif /* CONFIG_SSB_PCIHOST */ +- + #endif /* LINUX_SSB_PRIVATE_H_ */  | 
