This patch adds a number of configuration options to the MadWifi package. You can
[openwrt/svn-archive/archive.git] / package / madwifi / Config.in
1 # MadWifi configuration
2
3 config MADWIFI_DEBUG
4 bool "Enable compilation of debugging features"
5 depends on EXPERIMENTAL
6 default n
7
8 choice
9 prompt "Bus selection"
10 default MADWIFI_BUS_DEFAULT
11 help
12 This option controls how MadWifi communicates with the hardware.
13
14 config MADWIFI_BUS_DEFAULT
15 bool "Use default bus"
16 help
17 This makes MadWifi determine the needed bus based on the target
18 hardware. This will generally work most of the time, but there are some
19 cases where you need to override it.
20
21 config MADWIFI_BUS_PCI
22 bool "Use PCI bus"
23 depends on PCI_SUPPORT
24
25 config MADWIFI_BUS_AHB
26 bool "Use AHB bus"
27 depends on TARGET_atheros
28
29 endchoice
30
31 choice
32 prompt "HAL selection"
33 default MADWIFI_HAL_DEFAULT
34 help
35 This option controls how MadWifi communicates with the hardware.
36
37 config MADWIFI_HAL_DEFAULT
38 bool "Use default HAL"
39 help
40 This makes MadWifi determine the needed HAL based on the target
41 hardware. This will generally work most of the time, but there are some
42 cases where you need to override it.
43
44 config MADWIFI_HAL_MIPS_BE_ELF
45 bool "Use MIPS big endian ELF HAL"
46 depends on mips
47 depends on BIG_ENDIAN
48
49 config MADWIFI_HAL_MIPS_LE_ELF
50 bool "Use MIPS little endian ELF HAL"
51 depends on mips
52 depends on !BIG_ENDIAN
53
54 config MADWIFI_HAL_I386_ELF
55 bool "Use i386 ELF HAL"
56 depends on TARGET_x86
57
58 config MADWIFI_HAL_XSCALE_BE_ELF
59 bool "Use XScale big endian ELF HAL"
60 depends TARGET_ixp4xx
61 depends on BIG_ENDIAN
62
63 config MADWIFI_HAL_XSCALE_LE_ELF
64 bool "Use XScale little endian ELF HAL"
65 depends TARGET_iop32x
66 depends on !BIG_ENDIAN
67
68 config MADWIFI_HAL_ARMV4_LE_ELF
69 bool "Use ARMV4 little endian ELF HAL"
70 depends TARGET_storm
71 depends on !BIG_ENDIAN
72
73 config MADWIFI_HAL_AP30
74 bool "Use AP30 HAL"
75 depends on TARGET_atheros
76
77 config MADWIFI_HAL_AP43
78 bool "Use AP43 HAL"
79 depends on TARGET_atheros
80
81 config MADWIFI_HAL_AP51
82 bool "Use AP51 HAL"
83 depends on TARGET_atheros
84
85 config MADWIFI_HAL_AP61
86 bool "Use AP61 HAL"
87 depends on TARGET_atheros
88
89 endchoice
90
91 choice
92 prompt "Rate control algorithm selection"
93 default MADWIFI_RCA_MINSTREL
94 help
95 This option controls how MadWifi chooses its bitrate.
96
97 config MADWIFI_RCA_MINSTREL
98 bool "Use the Minstrel rate control algorithm"
99 help
100 This code is takes a wandering minstrel approach. Wander around the
101 different rates, singing wherever you can. And then, look at the
102 performance, and make a choice. Note that the wandering minstrel will
103 always wander in directions where he/she feels he/she will get paid
104 the best for his/her work.
105
106 config MADWIFI_RCA_ONOE
107 bool "Use the Onoe rate control algorithm"
108 help
109 Onoe is a credit based RCA where the value of the credit is determined
110 by the frequency of successful, erroneous and retransmissions
111 accumulated during a fixed invocation period of 1000 ms. If less than
112 10% of the packets need to be retransmitted at a particular rate, Onoe
113 keeps increasing its credit point till the threshold value of 10 is
114 reached. At this point, the current transmission rate is increased to
115 the next available higher rate and the process repeated with credit
116 score of zero. Similar logic holds for deducting the credit score and
117 moving to a lower bit-rate for failed packet
118 transmission/retransmission attempts. However, once a bit-rate has
119 been marked as failure in the previous attempt, Onoe will not attempt
120 to select that bit-rate until 10 seconds have elapsed since the last
121 attempt. Due to the manner in which it operates, Onoe is conservative
122 in rate selection and is less sensitive to individual packet failure.
123
124 config MADWIFI_RCA_AMRR
125 bool "Use the AMRR rate control algorithm"
126 help
127 AMRR uses Binary Exponential Backoff (BEB) technique to adapt the
128 length (threshold) of the sampling period used to change the values of
129 bit-rate and transmission count parameters. It uses probe packets and
130 depending on their transmission status adaptively changes the threshold
131 value. The adaptation mechanism ensures fewer failed
132 transmission/retransmission and higher throughput by not switching to a
133 higher rate as specified by the backoff mechanism. In addition to this,
134 the AMRR employs heuristics to capture the short-term variations of the
135 channel by judiciously setting the rate and transmission count
136 parameters.
137
138 config MADWIFI_RCA_SAMPLERATE
139 bool "Use the SampleRate rate control algorithm"
140 help
141 SampleRate decides on the transmission bit-rate based on the past
142 history of performance; it keeps a record of the number of successive
143 failures, the number of successful transmits and the total transmission
144 time along with the destination for that bit-rate. Stale samples are
145 removed based on a EWMA windowing mechanism. If in the sampling
146 process, no successful acknowledgment is received or the number of
147 packets sent is multiple of 10 on a specific link, it transmits the
148 packet with the highest rate which has not failed 4 successive times.
149 Other than that it transmits packets at the rate which has the lowest
150 average transmission time.
151
152 endchoice