aboutsummaryrefslogtreecommitdiffstats
path: root/net/mac80211/ieee80211.c
diff options
context:
space:
mode:
authorJohannes Berg <johannes@sipsolutions.net>2007-10-28 09:17:44 -0400
committerDavid S. Miller <davem@sunset.davemloft.net>2007-11-11 00:59:23 -0500
commitac71c691e6a5ce991fe221d3bdb0c972f617aa37 (patch)
treea3641b416579fbb8368e04e1a88f68e0da8dfe39 /net/mac80211/ieee80211.c
parent8a8f1c0437a77cce29c1cb6089f01f22a6d9ca6e (diff)
mac80211: make simple rate control algorithm built-in
Too frequently people do not have module autoloading enabled or fail to install the rate control module correctly, hence their hardware probing fails due to no rate control algorithm being available. This makes the 'simple' algorithm built into the mac80211 module unless EMBEDDED is enabled in which case it can be disabled (eg. if the wanted driver requires another rate control algorithm.) Signed-off-by: Johannes Berg <johannes@sipsolutions.net> Acked-by: Michael Buesch <mb@bu3sch.de> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net/mac80211/ieee80211.c')
-rw-r--r--net/mac80211/ieee80211.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/net/mac80211/ieee80211.c b/net/mac80211/ieee80211.c
index f484ca7ade9c..52ba6ef90685 100644
--- a/net/mac80211/ieee80211.c
+++ b/net/mac80211/ieee80211.c
@@ -1233,8 +1233,17 @@ static int __init ieee80211_init(void)
1233 1233
1234 BUILD_BUG_ON(sizeof(struct ieee80211_tx_packet_data) > sizeof(skb->cb)); 1234 BUILD_BUG_ON(sizeof(struct ieee80211_tx_packet_data) > sizeof(skb->cb));
1235 1235
1236#ifdef CONFIG_MAC80211_RCSIMPLE
1237 ret = ieee80211_rate_control_register(&mac80211_rcsimple);
1238 if (ret)
1239 return ret;
1240#endif
1241
1236 ret = ieee80211_wme_register(); 1242 ret = ieee80211_wme_register();
1237 if (ret) { 1243 if (ret) {
1244#ifdef CONFIG_MAC80211_RCSIMPLE
1245 ieee80211_rate_control_unregister(&mac80211_rcsimple);
1246#endif
1238 printk(KERN_DEBUG "ieee80211_init: failed to " 1247 printk(KERN_DEBUG "ieee80211_init: failed to "
1239 "initialize WME (err=%d)\n", ret); 1248 "initialize WME (err=%d)\n", ret);
1240 return ret; 1249 return ret;
@@ -1248,6 +1257,10 @@ static int __init ieee80211_init(void)
1248 1257
1249static void __exit ieee80211_exit(void) 1258static void __exit ieee80211_exit(void)
1250{ 1259{
1260#ifdef CONFIG_MAC80211_RCSIMPLE
1261 ieee80211_rate_control_unregister(&mac80211_rcsimple);
1262#endif
1263
1251 ieee80211_wme_unregister(); 1264 ieee80211_wme_unregister();
1252 ieee80211_debugfs_netdev_exit(); 1265 ieee80211_debugfs_netdev_exit();
1253} 1266}