diff options
| author | Andres Salomon <dilinger@collabora.co.uk> | 2010-02-25 19:18:47 -0500 |
|---|---|---|
| committer | John W. Linville <linville@tuxdriver.com> | 2010-03-10 17:09:40 -0500 |
| commit | c2ef355bf3ef0b8006b96128726684fba47ac928 (patch) | |
| tree | f2c483da2b117cc708d7d7bce355012a27e3cc67 /net | |
| parent | 1da3f88222579135569ad52d1c82a7393cf87178 (diff) | |
mac80211: give warning if building w/out rate ctrl algorithm
I discovered that if EMBEDDED=y, one can accidentally build a mac80211 stack
and drivers w/ no rate control algorithm. For drivers like RTL8187 that don't
supply their own RC algorithms, this will cause ieee80211_register_hw to
fail (making the driver unusable).
This will tell kconfig to provide a warning if no rate control algorithms
have been selected. That'll at least warn the user; users that know that
their drivers supply a rate control algorithm can safely ignore the
warning, and those who don't know (or who expect to be using multiple
drivers) can select a default RC algorithm.
Signed-off-by: Andres Salomon <dilinger@collabora.co.uk>
Cc: stable@kernel.org
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net')
| -rw-r--r-- | net/mac80211/Kconfig | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/net/mac80211/Kconfig b/net/mac80211/Kconfig index a952b7f8c648..334c359da5e8 100644 --- a/net/mac80211/Kconfig +++ b/net/mac80211/Kconfig | |||
| @@ -15,8 +15,12 @@ comment "CFG80211 needs to be enabled for MAC80211" | |||
| 15 | 15 | ||
| 16 | if MAC80211 != n | 16 | if MAC80211 != n |
| 17 | 17 | ||
| 18 | config MAC80211_HAS_RC | ||
| 19 | def_bool n | ||
| 20 | |||
| 18 | config MAC80211_RC_PID | 21 | config MAC80211_RC_PID |
| 19 | bool "PID controller based rate control algorithm" if EMBEDDED | 22 | bool "PID controller based rate control algorithm" if EMBEDDED |
| 23 | select MAC80211_HAS_RC | ||
| 20 | ---help--- | 24 | ---help--- |
| 21 | This option enables a TX rate control algorithm for | 25 | This option enables a TX rate control algorithm for |
| 22 | mac80211 that uses a PID controller to select the TX | 26 | mac80211 that uses a PID controller to select the TX |
| @@ -24,12 +28,14 @@ config MAC80211_RC_PID | |||
| 24 | 28 | ||
| 25 | config MAC80211_RC_MINSTREL | 29 | config MAC80211_RC_MINSTREL |
| 26 | bool "Minstrel" if EMBEDDED | 30 | bool "Minstrel" if EMBEDDED |
| 31 | select MAC80211_HAS_RC | ||
| 27 | default y | 32 | default y |
| 28 | ---help--- | 33 | ---help--- |
| 29 | This option enables the 'minstrel' TX rate control algorithm | 34 | This option enables the 'minstrel' TX rate control algorithm |
| 30 | 35 | ||
| 31 | choice | 36 | choice |
| 32 | prompt "Default rate control algorithm" | 37 | prompt "Default rate control algorithm" |
| 38 | depends on MAC80211_HAS_RC | ||
| 33 | default MAC80211_RC_DEFAULT_MINSTREL | 39 | default MAC80211_RC_DEFAULT_MINSTREL |
| 34 | ---help--- | 40 | ---help--- |
| 35 | This option selects the default rate control algorithm | 41 | This option selects the default rate control algorithm |
| @@ -62,6 +68,9 @@ config MAC80211_RC_DEFAULT | |||
| 62 | 68 | ||
| 63 | endif | 69 | endif |
| 64 | 70 | ||
| 71 | comment "Some wireless drivers require a rate control algorithm" | ||
| 72 | depends on MAC80211_HAS_RC=n | ||
| 73 | |||
| 65 | config MAC80211_MESH | 74 | config MAC80211_MESH |
| 66 | bool "Enable mac80211 mesh networking (pre-802.11s) support" | 75 | bool "Enable mac80211 mesh networking (pre-802.11s) support" |
| 67 | depends on MAC80211 && EXPERIMENTAL | 76 | depends on MAC80211 && EXPERIMENTAL |
