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>
This commit is contained in:
Andres Salomon 2010-02-25 19:18:47 -05:00 committed by John W. Linville
parent 1da3f88222
commit c2ef355bf3

View file

@ -15,8 +15,12 @@ comment "CFG80211 needs to be enabled for MAC80211"
if MAC80211 != n if MAC80211 != n
config MAC80211_HAS_RC
def_bool n
config MAC80211_RC_PID config MAC80211_RC_PID
bool "PID controller based rate control algorithm" if EMBEDDED bool "PID controller based rate control algorithm" if EMBEDDED
select MAC80211_HAS_RC
---help--- ---help---
This option enables a TX rate control algorithm for This option enables a TX rate control algorithm for
mac80211 that uses a PID controller to select the TX mac80211 that uses a PID controller to select the TX
@ -24,12 +28,14 @@ config MAC80211_RC_PID
config MAC80211_RC_MINSTREL config MAC80211_RC_MINSTREL
bool "Minstrel" if EMBEDDED bool "Minstrel" if EMBEDDED
select MAC80211_HAS_RC
default y default y
---help--- ---help---
This option enables the 'minstrel' TX rate control algorithm This option enables the 'minstrel' TX rate control algorithm
choice choice
prompt "Default rate control algorithm" prompt "Default rate control algorithm"
depends on MAC80211_HAS_RC
default MAC80211_RC_DEFAULT_MINSTREL default MAC80211_RC_DEFAULT_MINSTREL
---help--- ---help---
This option selects the default rate control algorithm This option selects the default rate control algorithm
@ -62,6 +68,9 @@ config MAC80211_RC_DEFAULT
endif endif
comment "Some wireless drivers require a rate control algorithm"
depends on MAC80211_HAS_RC=n
config MAC80211_MESH config MAC80211_MESH
bool "Enable mac80211 mesh networking (pre-802.11s) support" bool "Enable mac80211 mesh networking (pre-802.11s) support"
depends on MAC80211 && EXPERIMENTAL depends on MAC80211 && EXPERIMENTAL