|
@@ -338,6 +338,21 @@ enum mac80211_rate_control_flags {
|
|
*
|
|
*
|
|
* When used for transmit status reporting, the driver should
|
|
* When used for transmit status reporting, the driver should
|
|
* always report the rate along with the flags it used.
|
|
* always report the rate along with the flags it used.
|
|
|
|
+ *
|
|
|
|
+ * &struct ieee80211_tx_info contains an array of these structs
|
|
|
|
+ * in the control information, and it will be filled by the rate
|
|
|
|
+ * control algorithm according to what should be sent. For example,
|
|
|
|
+ * if this array contains, in the format { <idx>, <count> } the
|
|
|
|
+ * information
|
|
|
|
+ * { 3, 2 }, { 2, 2 }, { 1, 4 }, { -1, 0 }, { -1, 0 }
|
|
|
|
+ * then this means that the frame should be transmitted
|
|
|
|
+ * up to twice at rate 3, up to twice at rate 2, and up to four
|
|
|
|
+ * times at rate 1 if it doesn't get acknowledged. Say it gets
|
|
|
|
+ * acknowledged by the peer after the fifth attempt, the status
|
|
|
|
+ * information should then contain
|
|
|
|
+ * { 3, 2 }, { 2, 2 }, { 1, 1 }, { -1, 0 } ...
|
|
|
|
+ * since it was transmitted twice at rate 3, twice at rate 2
|
|
|
|
+ * and once at rate 1 after which we received an acknowledgement.
|
|
*/
|
|
*/
|
|
struct ieee80211_tx_rate {
|
|
struct ieee80211_tx_rate {
|
|
s8 idx;
|
|
s8 idx;
|