# MadWifi configuration config MADWIFI_DEBUG bool "Enable compilation of debugging features" depends on EXPERIMENTAL default n choice prompt "Bus selection" default MADWIFI_BUS_DEFAULT help This option controls how MadWifi communicates with the hardware. config MADWIFI_BUS_DEFAULT bool "Use default bus" help This makes MadWifi determine the needed bus based on the target hardware. This will generally work most of the time, but there are some cases where you need to override it. config MADWIFI_BUS_PCI bool "Use PCI bus" depends on PCI_SUPPORT config MADWIFI_BUS_AHB bool "Use AHB bus" depends on TARGET_atheros endchoice choice prompt "HAL selection" default MADWIFI_HAL_DEFAULT help This option controls how MadWifi communicates with the hardware. config MADWIFI_HAL_DEFAULT bool "Use default HAL" help This makes MadWifi determine the needed HAL based on the target hardware. This will generally work most of the time, but there are some cases where you need to override it. config MADWIFI_HAL_MIPS_BE_ELF bool "Use MIPS big endian ELF HAL" depends on mips depends on BIG_ENDIAN config MADWIFI_HAL_MIPS_LE_ELF bool "Use MIPS little endian ELF HAL" depends on mips depends on !BIG_ENDIAN config MADWIFI_HAL_I386_ELF bool "Use i386 ELF HAL" depends on TARGET_x86 config MADWIFI_HAL_XSCALE_BE_ELF bool "Use XScale big endian ELF HAL" depends TARGET_ixp4xx depends on BIG_ENDIAN config MADWIFI_HAL_XSCALE_LE_ELF bool "Use XScale little endian ELF HAL" depends TARGET_iop32x depends on !BIG_ENDIAN config MADWIFI_HAL_ARMV4_LE_ELF bool "Use ARMV4 little endian ELF HAL" depends TARGET_storm depends on !BIG_ENDIAN config MADWIFI_HAL_AP30 bool "Use AP30 HAL" depends on TARGET_atheros config MADWIFI_HAL_AP43 bool "Use AP43 HAL" depends on TARGET_atheros config MADWIFI_HAL_AP51 bool "Use AP51 HAL" depends on TARGET_atheros config MADWIFI_HAL_AP61 bool "Use AP61 HAL" depends on TARGET_atheros endchoice choice prompt "Rate control algorithm selection" default MADWIFI_RCA_MINSTREL help This option controls how MadWifi chooses its bitrate. config MADWIFI_RCA_MINSTREL bool "Use the Minstrel rate control algorithm" help This code is takes a wandering minstrel approach. Wander around the different rates, singing wherever you can. And then, look at the performance, and make a choice. Note that the wandering minstrel will always wander in directions where he/she feels he/she will get paid the best for his/her work. config MADWIFI_RCA_ONOE bool "Use the Onoe rate control algorithm" help Onoe is a credit based RCA where the value of the credit is determined by the frequency of successful, erroneous and retransmissions accumulated during a fixed invocation period of 1000 ms. If less than 10% of the packets need to be retransmitted at a particular rate, Onoe keeps increasing its credit point till the threshold value of 10 is reached. At this point, the current transmission rate is increased to the next available higher rate and the process repeated with credit score of zero. Similar logic holds for deducting the credit score and moving to a lower bit-rate for failed packet transmission/retransmission attempts. However, once a bit-rate has been marked as failure in the previous attempt, Onoe will not attempt to select that bit-rate until 10 seconds have elapsed since the last attempt. Due to the manner in which it operates, Onoe is conservative in rate selection and is less sensitive to individual packet failure. config MADWIFI_RCA_AMRR bool "Use the AMRR rate control algorithm" help AMRR uses Binary Exponential Backoff (BEB) technique to adapt the length (threshold) of the sampling period used to change the values of bit-rate and transmission count parameters. It uses probe packets and depending on their transmission status adaptively changes the threshold value. The adaptation mechanism ensures fewer failed transmission/retransmission and higher throughput by not switching to a higher rate as specified by the backoff mechanism. In addition to this, the AMRR employs heuristics to capture the short-term variations of the channel by judiciously setting the rate and transmission count parameters. config MADWIFI_RCA_SAMPLERATE bool "Use the SampleRate rate control algorithm" help SampleRate decides on the transmission bit-rate based on the past history of performance; it keeps a record of the number of successive failures, the number of successful transmits and the total transmission time along with the destination for that bit-rate. Stale samples are removed based on a EWMA windowing mechanism. If in the sampling process, no successful acknowledgment is received or the number of packets sent is multiple of 10 on a specific link, it transmits the packet with the highest rate which has not failed 4 successive times. Other than that it transmits packets at the rate which has the lowest average transmission time. endchoice