summaryrefslogtreecommitdiffstats
path: root/target/linux/brcm47xx/patches-2.6.23/400-b43-pci_ssb_bridge.patch
blob: 6a7eabed28472641c81d43f80a80a5ca9b0e4de8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
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_ */