1<html><head><meta http-equiv="Content-Type" content="text/html; charset=ANSI_X3.4-1968"><title>struct ieee80211_tx_rate</title><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"><link rel="home" href="index.html" title="The 802.11 subsystems &#8211; for kernel developers"><link rel="up" href="bk02pt01ch04s05.html" title="functions/definitions"><link rel="prev" href="API-enum-mac80211-rate-control-flags.html" title="enum mac80211_rate_control_flags"><link rel="next" href="API-struct-ieee80211-tx-info.html" title="struct ieee80211_tx_info"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center"><span class="phrase">struct ieee80211_tx_rate</span></th></tr><tr><td width="20%" align="left"><a accesskey="p" href="API-enum-mac80211-rate-control-flags.html">Prev</a>&#160;</td><th width="60%" align="center">functions/definitions</th><td width="20%" align="right">&#160;<a accesskey="n" href="API-struct-ieee80211-tx-info.html">Next</a></td></tr></table><hr></div><div class="refentry"><a name="API-struct-ieee80211-tx-rate"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>struct ieee80211_tx_rate &#8212; 
2  rate selection/status
3 </p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><pre class="programlisting">
4struct ieee80211_tx_rate {
5  s8 idx;
6  u16 count:5;
7  u16 flags:11;
8};  </pre></div><div class="refsect1"><a name="idp1113690436"></a><h2>Members</h2><div class="variablelist"><dl class="variablelist"><dt><span class="term">idx</span></dt><dd><p>
9rate index to attempt to send with
10      </p></dd><dt><span class="term">count</span></dt><dd><p>
11number of tries in this rate before going to the next rate
12      </p></dd><dt><span class="term">flags</span></dt><dd><p>
13rate control flags (<span class="structname">enum</span> mac80211_rate_control_flags)
14      </p></dd></dl></div></div><div class="refsect1"><a name="idp1113693388"></a><h2>Description</h2><p>
15   A value of -1 for <em class="parameter"><code>idx</code></em> indicates an invalid rate and, if used
16   in an array of retry rates, that no more rates should be tried.
17   </p><p>
18
19   When used for transmit status reporting, the driver should
20   always report the rate along with the flags it used.
21   </p><p>
22
23   <span class="structname">struct ieee80211_tx_info</span> contains an array of these structs
24   in the control information, and it will be filled by the rate
25   control algorithm according to what should be sent. For example,
26   if this array contains, in the format { &lt;idx&gt;, &lt;count&gt; } the
27   information
28   { 3, 2 }, { 2, 2 }, { 1, 4 }, { -1, 0 }, { -1, 0 }
29   then this means that the frame should be transmitted
30   up to twice at rate 3, up to twice at rate 2, and up to four
31   times at rate 1 if it doesn't get acknowledged. Say it gets
32   acknowledged by the peer after the fifth attempt, the status
33   information should then contain
34   { 3, 2 }, { 2, 2 }, { 1, 1 }, { -1, 0 } ...
35   since it was transmitted twice at rate 3, twice at rate 2
36   and once at rate 1 after which we received an acknowledgement.
37</p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="API-enum-mac80211-rate-control-flags.html">Prev</a>&#160;</td><td width="20%" align="center"><a accesskey="u" href="bk02pt01ch04s05.html">Up</a></td><td width="40%" align="right">&#160;<a accesskey="n" href="API-struct-ieee80211-tx-info.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top"><span class="phrase">enum mac80211_rate_control_flags</span>&#160;</td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top">&#160;<span class="phrase">struct ieee80211_tx_info</span></td></tr></table></div></body></html>
38