blob: fba856032ca550586a963a9477a6a28d06542c7b [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
Albert Herranz3dbba8e22009-09-10 19:34:49 +020074config B43_SDIO
Kees Cookafd19ef2013-01-22 10:30:38 -080075 bool "Broadcom 43xx SDIO device support"
Rafał Miłecki1db10592014-05-18 13:41:33 +020076 depends on B43 && B43_SSB && SSB_SDIOHOST_POSSIBLE
Albert Herranz3dbba8e22009-09-10 19:34:49 +020077 select SSB_SDIOHOST
78 ---help---
79 Broadcom 43xx device support for Soft-MAC SDIO devices.
80
81 With this config option you can drive Soft-MAC b43 cards with a
82 Secure Digital I/O interface.
83 This includes the WLAN daughter card found on the Nintendo Wii
84 video game console.
85 Note that this does not support Broadcom 43xx Full-MAC devices.
86
87 It's safe to select Y here, even if you don't have a B43 SDIO device.
88
89 If unsure, say N.
90
Linus Torvalds9e3bd912010-02-26 10:34:27 -080091#Data transfers to the device via PIO. We want it as a fallback even
92# if we can do DMA.
Rafał Miłecki8c8b9642011-07-06 18:05:14 +020093config B43_BCMA_PIO
94 bool
Zhao, Gangcc1ad9d2014-02-16 22:31:37 +080095 depends on B43 && B43_BCMA
Rafał Miłecki8c8b9642011-07-06 18:05:14 +020096 select BCMA_BLOCKIO
97 default y
98
Linus Torvalds9e3bd912010-02-26 10:34:27 -080099config B43_PIO
100 bool
Rafał Miłeckifbe057d2014-05-10 19:14:09 +0200101 depends on B43 && B43_SSB
Linus Torvalds9e3bd912010-02-26 10:34:27 -0800102 select SSB_BLOCKIO
103 default y
104
Rafał Miłecki418378f2014-06-20 17:22:01 +0200105config B43_PHY_G
106 bool "Support for G-PHY (802.11g) devices"
107 depends on B43 && B43_SSB
108 default y
109 ---help---
110 This PHY type can be found in the following chipsets:
111 PCI: BCM4306, BCM4311, BCM4318
112 SoC: BCM4712, BCM5352E
113
Rafał Miłecki692d2c02010-12-07 21:56:00 +0100114config B43_PHY_N
Rafał Miłeckied7f75b2014-07-30 15:38:00 +0200115 bool "Support for N-PHY (the main 802.11n series) devices"
Kees Cookafd19ef2013-01-22 10:30:38 -0800116 depends on B43
Hauke Mehrtens6b692f32013-06-09 18:59:43 +0200117 default y
Michael Bueschd5c71e42008-01-04 17:06:29 +0100118 ---help---
Rafał Miłeckied7f75b2014-07-30 15:38:00 +0200119 This PHY type can be found in the following chipsets:
120 PCI: BCM4321, BCM4322,
121 BCM43222, BCM43224, BCM43225,
122 BCM43131, BCM43217, BCM43227, BCM43228
123 SoC: BCM4716, BCM4717, BCM4718, BCM5356, BCM5357, BCM5358
Michael Bueschd5c71e42008-01-04 17:06:29 +0100124
Michael Buesche63e4362008-08-30 10:55:48 +0200125config B43_PHY_LP
Rafał Miłeckied7f75b2014-07-30 15:38:00 +0200126 bool "Support for LP-PHY (low-power 802.11g) devices"
Rafał Miłeckibd7c8a52014-05-10 19:52:18 +0200127 depends on B43 && B43_SSB
Gábor Stefanik867b2ef2009-08-27 17:24:23 +0200128 default y
Michael Buesche63e4362008-08-30 10:55:48 +0200129 ---help---
Gábor Stefanik86b28922009-08-16 20:22:41 +0200130 The LP-PHY is a low-power PHY built into some notebooks
Larry Finger53dd4b92011-07-30 11:30:27 -0500131 and embedded devices. It supports 802.11a/b/g
Gábor Stefanik86b28922009-08-16 20:22:41 +0200132 (802.11a support is optional, and currently disabled).
Michael Buesche63e4362008-08-30 10:55:48 +0200133
Rafał Miłeckid7520b12011-06-13 16:20:06 +0200134config B43_PHY_HT
Rafał Miłeckied7f75b2014-07-30 15:38:00 +0200135 bool "Support for HT-PHY (high throughput 802.11n) devices"
Rafał Miłecki7c2332b2013-03-04 16:39:10 +0100136 depends on B43 && B43_BCMA
Hauke Mehrtens6b692f32013-06-09 18:59:43 +0200137 default y
Rafał Miłeckid7520b12011-06-13 16:20:06 +0200138 ---help---
Rafał Miłeckied7f75b2014-07-30 15:38:00 +0200139 This PHY type with 3x3:3 MIMO can be found in the BCM4331 PCI chipset.
Rafał Miłeckid7520b12011-06-13 16:20:06 +0200140
Rafał Miłecki1d738e62011-07-07 15:25:27 +0200141config B43_PHY_LCN
142 bool "Support for LCN-PHY devices (BROKEN)"
143 depends on B43 && BROKEN
144 ---help---
145 Support for the LCN-PHY.
146
147 Say N, this is BROKEN and crashes driver.
148
Rafał Miłecki3f7bb3f2015-01-25 18:01:37 +0100149config B43_PHY_AC
150 bool "Support for AC-PHY (802.11ac) devices (BROKEN)"
151 depends on B43 && B43_BCMA && BROKEN
152 ---help---
153 This PHY type can be found in the following chipsets:
154 PCI: BCM4352, BCM4360
155
156 Say N, this is BROKEN and crashes driver.
157
Michael Bueschbdb3f752007-11-07 21:24:07 +0100158# This config option automatically enables b43 LEDS support,
159# if it's possible.
Michael Buesch21954c32007-09-27 15:31:40 +0200160config B43_LEDS
161 bool
Michael Bueschbdb3f752007-11-07 21:24:07 +0100162 depends on B43 && MAC80211_LEDS && (LEDS_CLASS = y || LEDS_CLASS = B43)
Michael Buesch8e9f7522007-09-27 21:35:34 +0200163 default y
164
Michael Buesch616de352009-03-29 13:19:31 +0200165# This config option automatically enables b43 HW-RNG support,
166# if the HW-RNG core is enabled.
167config B43_HWRNG
168 bool
169 depends on B43 && (HW_RANDOM = y || HW_RANDOM = B43)
170 default y
171
Michael Buesche4d6b792007-09-18 15:39:42 -0400172config B43_DEBUG
173 bool "Broadcom 43xx debugging"
174 depends on B43
175 ---help---
Michael Buesch060210f2009-01-25 15:49:59 +0100176 Broadcom 43xx debugging.
Michael Buesche4d6b792007-09-18 15:39:42 -0400177
Michael Buesch060210f2009-01-25 15:49:59 +0100178 This adds additional runtime sanity checks and statistics to the driver.
W. Trevor Kinga8291482013-02-21 07:34:42 -0500179 These checks and statistics might be expensive and hurt the runtime
180 performance of your system.
Michael Buesch060210f2009-01-25 15:49:59 +0100181 This also adds the b43 debugfs interface.
182
183 Do not enable this, unless you are debugging the driver.
184
185 Say N, if you are a distributor or user building a release kernel
186 for production use.
187 Only say Y, if you are debugging a problem in the b43 driver sourcecode.