1config B43
2	tristate "Broadcom 43xx wireless support (mac80211 stack)"
3	depends on SSB_POSSIBLE && MAC80211 && HAS_DMA
4	select SSB
5	select FW_LOADER
6	---help---
7	  b43 is a driver for the Broadcom 43xx series wireless devices.
8
9	  Check "lspci" for something like
10	  "Broadcom Corporation BCM43XX 802.11 Wireless LAN Controller"
11	  to determine whether you own such a device.
12
13	  This driver supports the new BCM43xx IEEE 802.11G devices, but not
14	  the old IEEE 802.11B devices. Old devices are supported by
15	  the b43legacy driver.
16	  Note that this has nothing to do with the standard that your AccessPoint
17	  supports (A, B, G or a combination).
18	  IEEE 802.11G devices can talk to IEEE 802.11B AccessPoints.
19
20	  It is safe to include both b43 and b43legacy as the underlying glue
21	  layer will automatically load the correct version for your device.
22
23	  This driver uses V4 firmware, which must be installed separately using
24	  b43-fwcutter.
25
26	  This driver can be built as a module (recommended) that will be called "b43".
27	  If unsure, say M.
28
29config B43_BCMA
30	bool "Support for BCMA bus"
31	depends on B43 && (BCMA = y || BCMA = B43)
32	default y
33
34config B43_BCMA_EXTRA
35	bool "Hardware support that overlaps with the brcmsmac driver"
36	depends on B43_BCMA
37	default n if BRCMSMAC || BRCMSMAC_MODULE
38	default	y
39
40config B43_SSB
41	bool
42	depends on B43 && (SSB = y || SSB = B43)
43	default y
44
45# Auto-select SSB PCI-HOST support, if possible
46config B43_PCI_AUTOSELECT
47	bool
48	depends on B43 && SSB_PCIHOST_POSSIBLE
49	select SSB_PCIHOST
50	select SSB_B43_PCI_BRIDGE
51	default y
52
53# Auto-select SSB PCICORE driver, if possible
54config B43_PCICORE_AUTOSELECT
55	bool
56	depends on B43 && SSB_DRIVER_PCICORE_POSSIBLE
57	select SSB_DRIVER_PCICORE
58	default y
59
60config B43_PCMCIA
61	bool "Broadcom 43xx PCMCIA device support"
62	depends on B43 && SSB_PCMCIAHOST_POSSIBLE
63	select SSB_PCMCIAHOST
64	---help---
65	  Broadcom 43xx PCMCIA device support.
66
67	  Support for 16bit PCMCIA devices.
68	  Please note that most PC-CARD devices are _NOT_ 16bit PCMCIA
69	  devices, but 32bit CardBUS devices. CardBUS devices are supported
70	  out of the box by b43.
71
72	  With this config option you can drive b43 cards in
73	  CompactFlash formfactor in a PCMCIA adaptor.
74	  CF b43 cards can sometimes be found in handheld PCs.
75
76	  It's safe to select Y here, even if you don't have a B43 PCMCIA device.
77
78	  If unsure, say N.
79
80config B43_SDIO
81	bool "Broadcom 43xx SDIO device support (EXPERIMENTAL)"
82	depends on B43 && SSB_SDIOHOST_POSSIBLE && EXPERIMENTAL
83	select SSB_SDIOHOST
84	---help---
85	  Broadcom 43xx device support for Soft-MAC SDIO devices.
86
87	  With this config option you can drive Soft-MAC b43 cards with a
88	  Secure Digital I/O interface.
89	  This includes the WLAN daughter card found on the Nintendo Wii
90	  video game console.
91	  Note that this does not support Broadcom 43xx Full-MAC devices.
92
93	  It's safe to select Y here, even if you don't have a B43 SDIO device.
94
95	  If unsure, say N.
96
97#Data transfers to the device via PIO. We want it as a fallback even
98# if we can do DMA.
99config B43_BCMA_PIO
100	bool
101	depends on B43_BCMA
102	select BCMA_BLOCKIO
103	default y
104
105config B43_PIO
106	bool
107	depends on B43
108	select SSB_BLOCKIO
109	default y
110
111config B43_PHY_N
112	bool "Support for 802.11n (N-PHY) devices (EXPERIMENTAL)"
113	depends on B43 && EXPERIMENTAL
114	---help---
115	  Support for the N-PHY.
116
117	  This enables support for devices with N-PHY.
118
119	  Say N if you expect high stability and performance. Saying Y will not
120	  affect other devices support and may provide support for basic needs.
121
122config B43_PHY_LP
123	bool "Support for low-power (LP-PHY) devices"
124	depends on B43
125	default y
126	---help---
127	  Support for the LP-PHY.
128	  The LP-PHY is a low-power PHY built into some notebooks
129	  and embedded devices. It supports 802.11a/b/g
130	  (802.11a support is optional, and currently disabled).
131
132config B43_PHY_HT
133	bool "Support for HT-PHY (high throughput) devices (EXPERIMENTAL)"
134	depends on B43 && EXPERIMENTAL
135	---help---
136	  Support for the HT-PHY.
137
138	  Enables support for BCM4331 and possibly other chipsets with that PHY.
139
140config B43_PHY_LCN
141	bool "Support for LCN-PHY devices (BROKEN)"
142	depends on B43 && BROKEN
143	---help---
144	  Support for the LCN-PHY.
145
146	  Say N, this is BROKEN and crashes driver.
147
148# This config option automatically enables b43 LEDS support,
149# if it's possible.
150config B43_LEDS
151	bool
152	depends on B43 && MAC80211_LEDS && (LEDS_CLASS = y || LEDS_CLASS = B43)
153	default y
154
155# This config option automatically enables b43 HW-RNG support,
156# if the HW-RNG core is enabled.
157config B43_HWRNG
158	bool
159	depends on B43 && (HW_RANDOM = y || HW_RANDOM = B43)
160	default y
161
162config B43_DEBUG
163	bool "Broadcom 43xx debugging"
164	depends on B43
165	---help---
166	  Broadcom 43xx debugging.
167
168	  This adds additional runtime sanity checks and statistics to the driver.
169	  These checks and statistics might me expensive and hurt runtime performance
170	  of your system.
171	  This also adds the b43 debugfs interface.
172
173	  Do not enable this, unless you are debugging the driver.
174
175	  Say N, if you are a distributor or user building a release kernel
176	  for production use.
177	  Only say Y, if you are debugging a problem in the b43 driver sourcecode.
178