Merge master.kernel.org:/pub/scm/linux/kernel/git/lethal/sh-2.6
[linux-2.6] / drivers / net / wireless / bcm43xx / Kconfig
1 config BCM43XX
2         tristate "Broadcom BCM43xx wireless support"
3         depends on PCI && IEEE80211 && IEEE80211_SOFTMAC && WLAN_80211 && EXPERIMENTAL
4         select WIRELESS_EXT
5         select FW_LOADER
6         select HW_RANDOM
7         ---help---
8           This is an experimental driver for the Broadcom 43xx wireless chip,
9           found in the Apple Airport Extreme and various other devices.
10
11 config BCM43XX_DEBUG
12         bool "Broadcom BCM43xx debugging (RECOMMENDED)"
13         depends on BCM43XX
14         default y
15         ---help---
16           Broadcom 43xx debugging messages.
17           Say Y, because the driver is still very experimental and
18           this will help you get it running.
19
20 config BCM43XX_DMA
21         bool
22         depends on BCM43XX
23
24 config BCM43XX_PIO
25         bool
26         depends on BCM43XX
27
28 choice
29         prompt "BCM43xx data transfer mode"
30         depends on BCM43XX
31         default BCM43XX_DMA_AND_PIO_MODE
32
33 config BCM43XX_DMA_AND_PIO_MODE
34         bool "DMA + PIO"
35         select BCM43XX_DMA
36         select BCM43XX_PIO
37         ---help---
38           Include both, Direct Memory Access (DMA) and Programmed I/O (PIO)
39           data transfer modes.
40           The actually used mode is selectable through the module
41           parameter "pio". If the module parameter is pio=0, DMA is used.
42           Otherwise PIO is used. DMA is default.
43
44           If unsure, choose this option.
45
46 config BCM43XX_DMA_MODE
47         bool "DMA (Direct Memory Access) only"
48         select BCM43XX_DMA
49         ---help---
50           Only include Direct Memory Access (DMA).
51           This reduces the size of the driver module, by omitting the PIO code.
52
53 config BCM43XX_PIO_MODE
54         bool "PIO (Programmed I/O) only"
55         select BCM43XX_PIO
56         ---help---
57           Only include Programmed I/O (PIO).
58           This reduces the size of the driver module, by omitting the DMA code.
59           Please note that PIO transfers are slow (compared to DMA).
60
61           Also note that not all devices of the 43xx series support PIO.
62           The 4306 (Apple Airport Extreme and others) supports PIO, while
63           the 4318 is known to _not_ support PIO.
64
65           Only use PIO, if DMA does not work for you.
66
67 endchoice