Use a separate config option for the b43 pci to ssb bridge.
The bridge code was unnecessary enabled by the b44 driver, but it prevents the bcm43xx driver from being loaded, as the bridge claims the same pci ids. Now we enable the birdge only if the b43{legacy} drivers are selected. Signed-off-by: Alexey Zaytsev <alexey.zaytsev@gmail.com> Acked-by: Larry Finger <Larry.Finger@lwfinger.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
parent
4b7524a42e
commit
c7084535c9
5 changed files with 10 additions and 3 deletions
|
@ -32,6 +32,7 @@ config B43_PCI_AUTOSELECT
|
||||||
bool
|
bool
|
||||||
depends on B43 && SSB_PCIHOST_POSSIBLE
|
depends on B43 && SSB_PCIHOST_POSSIBLE
|
||||||
select SSB_PCIHOST
|
select SSB_PCIHOST
|
||||||
|
select SSB_B43_PCI_BRIDGE
|
||||||
default y
|
default y
|
||||||
|
|
||||||
# Auto-select SSB PCICORE driver, if possible
|
# Auto-select SSB PCICORE driver, if possible
|
||||||
|
|
|
@ -25,6 +25,7 @@ config B43LEGACY_PCI_AUTOSELECT
|
||||||
bool
|
bool
|
||||||
depends on B43LEGACY && SSB_PCIHOST_POSSIBLE
|
depends on B43LEGACY && SSB_PCIHOST_POSSIBLE
|
||||||
select SSB_PCIHOST
|
select SSB_PCIHOST
|
||||||
|
select SSB_B43_PCI_BRIDGE
|
||||||
default y
|
default y
|
||||||
|
|
||||||
# Auto-select SSB PCICORE driver, if possible
|
# Auto-select SSB PCICORE driver, if possible
|
||||||
|
|
|
@ -35,6 +35,11 @@ config SSB_PCIHOST
|
||||||
|
|
||||||
If unsure, say Y
|
If unsure, say Y
|
||||||
|
|
||||||
|
config SSB_B43_PCI_BRIDGE
|
||||||
|
bool
|
||||||
|
depends on SSB_PCIHOST
|
||||||
|
default n
|
||||||
|
|
||||||
config SSB_PCMCIAHOST_POSSIBLE
|
config SSB_PCMCIAHOST_POSSIBLE
|
||||||
bool
|
bool
|
||||||
depends on SSB && (PCMCIA = y || PCMCIA = SSB) && EXPERIMENTAL
|
depends on SSB && (PCMCIA = y || PCMCIA = SSB) && EXPERIMENTAL
|
||||||
|
|
|
@ -14,6 +14,6 @@ ssb-$(CONFIG_SSB_DRIVER_PCICORE) += driver_pcicore.o
|
||||||
|
|
||||||
# b43 pci-ssb-bridge driver
|
# b43 pci-ssb-bridge driver
|
||||||
# Not strictly a part of SSB, but kept here for convenience
|
# Not strictly a part of SSB, but kept here for convenience
|
||||||
ssb-$(CONFIG_SSB_PCIHOST) += b43_pci_bridge.o
|
ssb-$(CONFIG_SSB_B43_PCI_BRIDGE) += b43_pci_bridge.o
|
||||||
|
|
||||||
obj-$(CONFIG_SSB) += ssb.o
|
obj-$(CONFIG_SSB) += ssb.o
|
||||||
|
|
|
@ -120,10 +120,10 @@ extern int ssb_devices_thaw(struct ssb_bus *bus);
|
||||||
extern struct ssb_bus *ssb_pci_dev_to_bus(struct pci_dev *pdev);
|
extern struct ssb_bus *ssb_pci_dev_to_bus(struct pci_dev *pdev);
|
||||||
|
|
||||||
/* b43_pci_bridge.c */
|
/* b43_pci_bridge.c */
|
||||||
#ifdef CONFIG_SSB_PCIHOST
|
#ifdef CONFIG_SSB_B43_PCI_BRIDGE
|
||||||
extern int __init b43_pci_ssb_bridge_init(void);
|
extern int __init b43_pci_ssb_bridge_init(void);
|
||||||
extern void __exit b43_pci_ssb_bridge_exit(void);
|
extern void __exit b43_pci_ssb_bridge_exit(void);
|
||||||
#else /* CONFIG_SSB_PCIHOST */
|
#else /* CONFIG_SSB_B43_PCI_BRIDGR */
|
||||||
static inline int b43_pci_ssb_bridge_init(void)
|
static inline int b43_pci_ssb_bridge_init(void)
|
||||||
{
|
{
|
||||||
return 0;
|
return 0;
|
||||||
|
|
Loading…
Reference in a new issue