blob: 759fb8d41fc9553b4cbd760f92668c9666b48d7a [file] [log] [blame]
Michael Buesche4d6b792007-09-18 15:39:42 -04001config B43
2 tristate "Broadcom 43xx wireless support (mac80211 stack)"
Rafał Miłeckifbe057d2014-05-10 19:14:09 +02003 depends on (BCMA_POSSIBLE || SSB_POSSIBLE) && MAC80211 && HAS_DMA
4 select BCMA if B43_BCMA
5 select SSB if B43_SSB
Michael Buesche4d6b792007-09-18 15:39:42 -04006 select FW_LOADER
Michael Buesche4d6b792007-09-18 15:39:42 -04007 ---help---
8 b43 is a driver for the Broadcom 43xx series wireless devices.
9
10 Check "lspci" for something like
11 "Broadcom Corporation BCM43XX 802.11 Wireless LAN Controller"
12 to determine whether you own such a device.
13
14 This driver supports the new BCM43xx IEEE 802.11G devices, but not
15 the old IEEE 802.11B devices. Old devices are supported by
16 the b43legacy driver.
17 Note that this has nothing to do with the standard that your AccessPoint
18 supports (A, B, G or a combination).
19 IEEE 802.11G devices can talk to IEEE 802.11B AccessPoints.
20
21 It is safe to include both b43 and b43legacy as the underlying glue
22 layer will automatically load the correct version for your device.
23
24 This driver uses V4 firmware, which must be installed separately using
25 b43-fwcutter.
26
27 This driver can be built as a module (recommended) that will be called "b43".
28 If unsure, say M.
29
Rafał Miłecki3c65ab62011-06-02 09:56:04 +020030config B43_BCMA
Rafał Miłeckifbe057d2014-05-10 19:14:09 +020031 bool
Rafał Miłecki3c65ab62011-06-02 09:56:04 +020032
Rafał Miłeckiaec7ffd2011-06-14 08:18:59 +020033config B43_SSB
34 bool
Rafał Miłeckifbe057d2014-05-10 19:14:09 +020035
36choice
37 prompt "Supported bus types"
38 depends on B43
Rafał Miłecki740bb822014-06-10 13:32:05 +020039 default B43_BUSES_BCMA_AND_SSB
Rafał Miłeckifbe057d2014-05-10 19:14:09 +020040
41config B43_BUSES_BCMA_AND_SSB
42 bool "BCMA and SSB"
43 depends on BCMA_POSSIBLE && SSB_POSSIBLE
44 select B43_BCMA
45 select B43_SSB
46
47config B43_BUSES_BCMA
48 bool "BCMA only"
49 depends on BCMA_POSSIBLE
50 select B43_BCMA
51
52config B43_BUSES_SSB
53 bool "SSB only"
54 depends on SSB_POSSIBLE
55 select B43_SSB
56
57endchoice
Rafał Miłeckiaec7ffd2011-06-14 08:18:59 +020058
Michael Buesche4d6b792007-09-18 15:39:42 -040059# Auto-select SSB PCI-HOST support, if possible
60config B43_PCI_AUTOSELECT
61 bool
62 depends on B43 && SSB_PCIHOST_POSSIBLE
63 select SSB_PCIHOST
Alexey Zaytsevc7084532008-02-23 12:59:26 +030064 select SSB_B43_PCI_BRIDGE
Michael Buesche4d6b792007-09-18 15:39:42 -040065 default y
66
67# Auto-select SSB PCICORE driver, if possible
68config B43_PCICORE_AUTOSELECT
69 bool
70 depends on B43 && SSB_DRIVER_PCICORE_POSSIBLE
71 select SSB_DRIVER_PCICORE
72 default y
73
74config B43_PCMCIA
Michael Bueschfd413da2009-09-06 14:49:43 +020075 bool "Broadcom 43xx PCMCIA device support"
Rafał Miłecki1db10592014-05-18 13:41:33 +020076 depends on B43 && B43_SSB && SSB_PCMCIAHOST_POSSIBLE
Michael Buesche4d6b792007-09-18 15:39:42 -040077 select SSB_PCMCIAHOST
78 ---help---
79 Broadcom 43xx PCMCIA device support.
80
81 Support for 16bit PCMCIA devices.
82 Please note that most PC-CARD devices are _NOT_ 16bit PCMCIA
83 devices, but 32bit CardBUS devices. CardBUS devices are supported
84 out of the box by b43.
85
86 With this config option you can drive b43 cards in
87 CompactFlash formfactor in a PCMCIA adaptor.
88 CF b43 cards can sometimes be found in handheld PCs.
89
90 It's safe to select Y here, even if you don't have a B43 PCMCIA device.
91
92 If unsure, say N.
93
Albert Herranz3dbba8e22009-09-10 19:34:49 +020094config B43_SDIO
Kees Cookafd19ef2013-01-22 10:30:38 -080095 bool "Broadcom 43xx SDIO device support"
Rafał Miłecki1db10592014-05-18 13:41:33 +020096 depends on B43 && B43_SSB && SSB_SDIOHOST_POSSIBLE
Albert Herranz3dbba8e22009-09-10 19:34:49 +020097 select SSB_SDIOHOST
98 ---help---
99 Broadcom 43xx device support for Soft-MAC SDIO devices.
100
101 With this config option you can drive Soft-MAC b43 cards with a
102 Secure Digital I/O interface.
103 This includes the WLAN daughter card found on the Nintendo Wii
104 video game console.
105 Note that this does not support Broadcom 43xx Full-MAC devices.
106
107 It's safe to select Y here, even if you don't have a B43 SDIO device.
108
109 If unsure, say N.
110
Linus Torvalds9e3bd912010-02-26 10:34:27 -0800111#Data transfers to the device via PIO. We want it as a fallback even
112# if we can do DMA.
Rafał Miłecki8c8b9642011-07-06 18:05:14 +0200113config B43_BCMA_PIO
114 bool
Zhao, Gangcc1ad9d2014-02-16 22:31:37 +0800115 depends on B43 && B43_BCMA
Rafał Miłecki8c8b9642011-07-06 18:05:14 +0200116 select BCMA_BLOCKIO
117 default y
118
Linus Torvalds9e3bd912010-02-26 10:34:27 -0800119config B43_PIO
120 bool
Rafał Miłeckifbe057d2014-05-10 19:14:09 +0200121 depends on B43 && B43_SSB
Linus Torvalds9e3bd912010-02-26 10:34:27 -0800122 select SSB_BLOCKIO
123 default y
124
Rafał Miłecki418378f2014-06-20 17:22:01 +0200125config B43_PHY_G
126 bool "Support for G-PHY (802.11g) devices"
127 depends on B43 && B43_SSB
128 default y
129 ---help---
130 This PHY type can be found in the following chipsets:
131 PCI: BCM4306, BCM4311, BCM4318
132 SoC: BCM4712, BCM5352E
133
Rafał Miłecki692d2c02010-12-07 21:56:00 +0100134config B43_PHY_N
Rafał Miłeckied7f75b2014-07-30 15:38:00 +0200135 bool "Support for N-PHY (the main 802.11n series) devices"
Kees Cookafd19ef2013-01-22 10:30:38 -0800136 depends on B43
Hauke Mehrtens6b692f32013-06-09 18:59:43 +0200137 default y
Michael Bueschd5c71e42008-01-04 17:06:29 +0100138 ---help---
Rafał Miłeckied7f75b2014-07-30 15:38:00 +0200139 This PHY type can be found in the following chipsets:
140 PCI: BCM4321, BCM4322,
141 BCM43222, BCM43224, BCM43225,
142 BCM43131, BCM43217, BCM43227, BCM43228
143 SoC: BCM4716, BCM4717, BCM4718, BCM5356, BCM5357, BCM5358
Michael Bueschd5c71e42008-01-04 17:06:29 +0100144
Michael Buesche63e4362008-08-30 10:55:48 +0200145config B43_PHY_LP
Rafał Miłeckied7f75b2014-07-30 15:38:00 +0200146 bool "Support for LP-PHY (low-power 802.11g) devices"
Rafał Miłeckibd7c8a52014-05-10 19:52:18 +0200147 depends on B43 && B43_SSB
Gábor Stefanik867b2ef2009-08-27 17:24:23 +0200148 default y
Michael Buesche63e4362008-08-30 10:55:48 +0200149 ---help---
Gábor Stefanik86b28922009-08-16 20:22:41 +0200150 The LP-PHY is a low-power PHY built into some notebooks
Larry Finger53dd4b92011-07-30 11:30:27 -0500151 and embedded devices. It supports 802.11a/b/g
Gábor Stefanik86b28922009-08-16 20:22:41 +0200152 (802.11a support is optional, and currently disabled).
Michael Buesche63e4362008-08-30 10:55:48 +0200153
Rafał Miłeckid7520b12011-06-13 16:20:06 +0200154config B43_PHY_HT
Rafał Miłeckied7f75b2014-07-30 15:38:00 +0200155 bool "Support for HT-PHY (high throughput 802.11n) devices"
Rafał Miłecki7c2332b2013-03-04 16:39:10 +0100156 depends on B43 && B43_BCMA
Hauke Mehrtens6b692f32013-06-09 18:59:43 +0200157 default y
Rafał Miłeckid7520b12011-06-13 16:20:06 +0200158 ---help---
Rafał Miłeckied7f75b2014-07-30 15:38:00 +0200159 This PHY type with 3x3:3 MIMO can be found in the BCM4331 PCI chipset.
Rafał Miłeckid7520b12011-06-13 16:20:06 +0200160
Rafał Miłecki1d738e62011-07-07 15:25:27 +0200161config B43_PHY_LCN
162 bool "Support for LCN-PHY devices (BROKEN)"
163 depends on B43 && BROKEN
164 ---help---
165 Support for the LCN-PHY.
166
167 Say N, this is BROKEN and crashes driver.
168
Rafał Miłecki3f7bb3f2015-01-25 18:01:37 +0100169config B43_PHY_AC
170 bool "Support for AC-PHY (802.11ac) devices (BROKEN)"
171 depends on B43 && B43_BCMA && BROKEN
172 ---help---
173 This PHY type can be found in the following chipsets:
174 PCI: BCM4352, BCM4360
175
176 Say N, this is BROKEN and crashes driver.
177
Michael Bueschbdb3f752007-11-07 21:24:07 +0100178# This config option automatically enables b43 LEDS support,
179# if it's possible.
Michael Buesch21954c32007-09-27 15:31:40 +0200180config B43_LEDS
181 bool
Michael Bueschbdb3f752007-11-07 21:24:07 +0100182 depends on B43 && MAC80211_LEDS && (LEDS_CLASS = y || LEDS_CLASS = B43)
Michael Buesch8e9f7522007-09-27 21:35:34 +0200183 default y
184
Michael Buesch616de352009-03-29 13:19:31 +0200185# This config option automatically enables b43 HW-RNG support,
186# if the HW-RNG core is enabled.
187config B43_HWRNG
188 bool
189 depends on B43 && (HW_RANDOM = y || HW_RANDOM = B43)
190 default y
191
Michael Buesche4d6b792007-09-18 15:39:42 -0400192config B43_DEBUG
193 bool "Broadcom 43xx debugging"
194 depends on B43
195 ---help---
Michael Buesch060210f2009-01-25 15:49:59 +0100196 Broadcom 43xx debugging.
Michael Buesche4d6b792007-09-18 15:39:42 -0400197
Michael Buesch060210f2009-01-25 15:49:59 +0100198 This adds additional runtime sanity checks and statistics to the driver.
W. Trevor Kinga8291482013-02-21 07:34:42 -0500199 These checks and statistics might be expensive and hurt the runtime
200 performance of your system.
Michael Buesch060210f2009-01-25 15:49:59 +0100201 This also adds the b43 debugfs interface.
202
203 Do not enable this, unless you are debugging the driver.
204
205 Say N, if you are a distributor or user building a release kernel
206 for production use.
207 Only say Y, if you are debugging a problem in the b43 driver sourcecode.