Thomas Gleixner | ec8f24b | 2019-05-19 13:07:45 +0100 | [diff] [blame^] | 1 | # SPDX-License-Identifier: GPL-2.0-only |
Larry Finger | 75388ac | 2007-09-25 16:46:54 -0700 | [diff] [blame] | 2 | config B43LEGACY |
| 3 | tristate "Broadcom 43xx-legacy wireless support (mac80211 stack)" |
John W. Linville | 133d7c6 | 2009-10-28 16:29:30 -0400 | [diff] [blame] | 4 | depends on SSB_POSSIBLE && MAC80211 && HAS_DMA |
Larry Finger | 75388ac | 2007-09-25 16:46:54 -0700 | [diff] [blame] | 5 | select SSB |
| 6 | select FW_LOADER |
Larry Finger | 75388ac | 2007-09-25 16:46:54 -0700 | [diff] [blame] | 7 | ---help--- |
| 8 | b43legacy is a driver for 802.11b devices from Broadcom (BCM4301 and |
| 9 | BCM4303) and early model 802.11g chips (BCM4306 Ver. 2) used in the |
| 10 | Linksys WPC54G V1 PCMCIA devices. |
| 11 | |
| 12 | Newer 802.11g and 802.11a devices need b43. |
| 13 | |
| 14 | It is safe to include both b43 and b43legacy as the underlying glue |
| 15 | layer will automatically load the correct version for your device. |
| 16 | |
| 17 | This driver uses V3 firmware, which must be installed separately using |
| 18 | b43-fwcutter. |
| 19 | |
| 20 | This driver can be built as a module (recommended) that will be |
| 21 | called "b43legacy". If unsure, say M. |
| 22 | |
| 23 | # Auto-select SSB PCI-HOST support, if possible |
| 24 | config B43LEGACY_PCI_AUTOSELECT |
| 25 | bool |
| 26 | depends on B43LEGACY && SSB_PCIHOST_POSSIBLE |
| 27 | select SSB_PCIHOST |
Alexey Zaytsev | c708453 | 2008-02-23 12:59:26 +0300 | [diff] [blame] | 28 | select SSB_B43_PCI_BRIDGE |
Larry Finger | 75388ac | 2007-09-25 16:46:54 -0700 | [diff] [blame] | 29 | default y |
| 30 | |
| 31 | # Auto-select SSB PCICORE driver, if possible |
| 32 | config B43LEGACY_PCICORE_AUTOSELECT |
| 33 | bool |
| 34 | depends on B43LEGACY && SSB_DRIVER_PCICORE_POSSIBLE |
| 35 | select SSB_DRIVER_PCICORE |
| 36 | default y |
| 37 | |
Larry Finger | ba48f7b | 2007-10-12 23:04:51 -0500 | [diff] [blame] | 38 | # LED support |
Stefano Brivio | 59f1b15 | 2007-11-08 00:28:00 +0100 | [diff] [blame] | 39 | # This config option automatically enables b43legacy LEDS support, |
| 40 | # if it's possible. |
Larry Finger | ba48f7b | 2007-10-12 23:04:51 -0500 | [diff] [blame] | 41 | config B43LEGACY_LEDS |
| 42 | bool |
Stefano Brivio | 59f1b15 | 2007-11-08 00:28:00 +0100 | [diff] [blame] | 43 | depends on B43LEGACY && MAC80211_LEDS && (LEDS_CLASS = y || LEDS_CLASS = B43LEGACY) |
Larry Finger | 93bb7f3 | 2007-10-10 22:44:22 -0500 | [diff] [blame] | 44 | default y |
| 45 | |
Larry Finger | 910cfee | 2009-04-01 10:42:36 -0500 | [diff] [blame] | 46 | # This config option automatically enables b43 HW-RNG support, |
| 47 | # if the HW-RNG core is enabled. |
| 48 | config B43LEGACY_HWRNG |
| 49 | bool |
| 50 | depends on B43LEGACY && (HW_RANDOM = y || HW_RANDOM = B43LEGACY) |
| 51 | default y |
| 52 | |
Larry Finger | 75388ac | 2007-09-25 16:46:54 -0700 | [diff] [blame] | 53 | config B43LEGACY_DEBUG |
| 54 | bool "Broadcom 43xx-legacy debugging" |
| 55 | depends on B43LEGACY |
| 56 | default y |
| 57 | ---help--- |
| 58 | Say Y, because this information will help you get the driver running. |
| 59 | This option generates a minimum of log output. |
| 60 | |
| 61 | config B43LEGACY_DMA |
| 62 | bool |
| 63 | depends on B43LEGACY |
| 64 | |
| 65 | config B43LEGACY_PIO |
| 66 | bool |
| 67 | depends on B43LEGACY |
| 68 | |
| 69 | choice |
| 70 | prompt "Broadcom 43xx-legacy data transfer mode" |
| 71 | depends on B43LEGACY |
| 72 | default B43LEGACY_DMA_AND_PIO_MODE |
| 73 | |
| 74 | config B43LEGACY_DMA_AND_PIO_MODE |
| 75 | bool "DMA + PIO" |
| 76 | select B43LEGACY_DMA |
| 77 | select B43LEGACY_PIO |
| 78 | ---help--- |
| 79 | Include both, Direct Memory Access (DMA) and Programmed I/O (PIO) |
| 80 | data transfer modes. The mode actually used is selectable through |
| 81 | the module parameter "pio". With pio=0 as a module parameter, the |
| 82 | default DMA is used, otherwise PIO is used. |
| 83 | |
| 84 | If unsure, choose this option. |
| 85 | |
| 86 | config B43LEGACY_DMA_MODE |
| 87 | bool "DMA (Direct Memory Access) only" |
| 88 | select B43LEGACY_DMA |
| 89 | ---help--- |
| 90 | Only include Direct Memory Access (DMA). |
| 91 | This reduces the size of the driver module, by omitting the PIO code. |
| 92 | |
| 93 | config B43LEGACY_PIO_MODE |
| 94 | bool "PIO (Programmed I/O) only" |
| 95 | select B43LEGACY_PIO |
| 96 | ---help--- |
| 97 | Only include Programmed I/O (PIO). |
| 98 | This reduces the size of the driver module, by omitting the DMA code. |
| 99 | Please note that PIO transfers are slow (compared to DMA). |
| 100 | |
| 101 | Also note that not all devices of the b43legacy series support PIO. |
| 102 | |
| 103 | You should use PIO only if DMA does not work for you. |
| 104 | |
| 105 | endchoice |