File tree Expand file tree Collapse file tree 7 files changed +868
-0
lines changed Expand file tree Collapse file tree 7 files changed +868
-0
lines changed Original file line number Diff line number Diff line change @@ -22,6 +22,11 @@ config MAC80211_RC_PID
22
22
mac80211 that uses a PID controller to select the TX
23
23
rate.
24
24
25
+ config MAC80211_RC_MINSTREL
26
+ bool "Minstrel"
27
+ ---help---
28
+ This option enables the 'minstrel' TX rate control algorithm
29
+
25
30
choice
26
31
prompt "Default rate control algorithm"
27
32
default MAC80211_RC_DEFAULT_PID
@@ -39,11 +44,19 @@ config MAC80211_RC_DEFAULT_PID
39
44
default rate control algorithm. You should choose
40
45
this unless you know what you are doing.
41
46
47
+ config MAC80211_RC_DEFAULT_MINSTREL
48
+ bool "Minstrel"
49
+ depends on MAC80211_RC_MINSTREL
50
+ ---help---
51
+ Select Minstrel as the default rate control algorithm.
52
+
53
+
42
54
endchoice
43
55
44
56
config MAC80211_RC_DEFAULT
45
57
string
46
58
default "pid" if MAC80211_RC_DEFAULT_PID
59
+ default "minstrel" if MAC80211_RC_DEFAULT_MINSTREL
47
60
default ""
48
61
49
62
endmenu
Original file line number Diff line number Diff line change @@ -41,4 +41,8 @@ mac80211-$(CONFIG_MAC80211_MESH) += \
41
41
rc80211_pid-y := rc80211_pid_algo.o
42
42
rc80211_pid-$(CONFIG_MAC80211_DEBUGFS) += rc80211_pid_debugfs.o
43
43
44
+ rc80211_minstrel-y := rc80211_minstrel.o
45
+ rc80211_minstrel-$(CONFIG_MAC80211_DEBUGFS) += rc80211_minstrel_debugfs.o
46
+
44
47
mac80211-$(CONFIG_MAC80211_RC_PID) += $(rc80211_pid-y )
48
+ mac80211-$(CONFIG_MAC80211_RC_MINSTREL) += $(rc80211_minstrel-y )
Original file line number Diff line number Diff line change @@ -1015,6 +1015,10 @@ static int __init ieee80211_init(void)
1015
1015
BUILD_BUG_ON (offsetof(struct ieee80211_tx_info , driver_data ) +
1016
1016
IEEE80211_TX_INFO_DRIVER_DATA_SIZE > sizeof (skb -> cb ));
1017
1017
1018
+ ret = rc80211_minstrel_init ();
1019
+ if (ret )
1020
+ return ret ;
1021
+
1018
1022
ret = rc80211_pid_init ();
1019
1023
if (ret )
1020
1024
return ret ;
@@ -1027,6 +1031,7 @@ static int __init ieee80211_init(void)
1027
1031
static void __exit ieee80211_exit (void )
1028
1032
{
1029
1033
rc80211_pid_exit ();
1034
+ rc80211_minstrel_exit ();
1030
1035
1031
1036
/*
1032
1037
* For key todo, it'll be empty by now but the work
Original file line number Diff line number Diff line change @@ -125,4 +125,18 @@ static inline void rc80211_pid_exit(void)
125
125
}
126
126
#endif
127
127
128
+ #ifdef CONFIG_MAC80211_RC_MINSTREL
129
+ extern int rc80211_minstrel_init (void );
130
+ extern void rc80211_minstrel_exit (void );
131
+ #else
132
+ static inline int rc80211_minstrel_init (void )
133
+ {
134
+ return 0 ;
135
+ }
136
+ static inline void rc80211_minstrel_exit (void )
137
+ {
138
+ }
139
+ #endif
140
+
141
+
128
142
#endif /* IEEE80211_RATE_H */
You can’t perform that action at this time.
0 commit comments