build algorithms into the mac80211 module
authorAdrian Bunk <bunk@kernel.org>
Thu, 26 Jun 2008 10:38:13 +0000 (13:38 +0300)
committerJohn W. Linville <linville@tuxdriver.com>
Mon, 30 Jun 2008 21:37:34 +0000 (17:37 -0400)
commite5f5e7339cd95d07937e6f8081b46fba86c742a7
tree9526b93d4272d978349b825d90e10a5710d08f00
parentbf998f686430107fb8790ef6713f8e352a3deede
build algorithms into the mac80211 module

The old infrastructure was:
- the default algorithm is built into mac80211
- other algorithms get into their own modules

The implementation of this complicated scheme was horrible
(just look at net/mac80211/Makefile), and anyone adding a new
algorithm would most likely not get it right at his first attempt.

This patch therefore builds all enabled algorithms into the mac80211
module.

The user interface for the rate control algorithms changes as follows:
- first the user can choose which algorithms to enable (currently only
  MAC80211_RC_PID is available)
- if more than one algorithm is enabled (currently not possible since
  only one algorithm is present) the user then chooses the default one

Note:
- MAC80211_RC_PID is always enables for CONFIG_EMBEDDED=n

Technical changes:
- all selected algorithms get into the mac80211 module
- net/mac80211/Makefile can now become much less complicated
- support for rc80211_pid_algo.c being modular is no longer required
- this includes unexporting mesh_plink_broken

Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
net/mac80211/Kconfig
net/mac80211/Makefile
net/mac80211/mesh_pathtbl.c
net/mac80211/rate.h
net/mac80211/rc80211_pid_algo.c