<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux.git/drivers/net/wireless/ralink, branch v4.12</title>
<subtitle>Linux kernel source tree</subtitle>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/'/>
<entry>
<title>mac80211: separate encoding/bandwidth from flags</title>
<updated>2017-04-28T08:41:45+00:00</updated>
<author>
<name>Johannes Berg</name>
<email>johannes.berg@intel.com</email>
</author>
<published>2017-04-26T10:14:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=da6a4352e7c867f81d7336f6517e819b3cce06bf'/>
<id>da6a4352e7c867f81d7336f6517e819b3cce06bf</id>
<content type='text'>
We currently use a lot of flags that are mutually incompatible,
separate this out into actual encoding and bandwidth enum values.

Much of this again done with spatch, with manual post-editing,
mostly to add the switch statements and get rid of the conversions.

@@
expression status;
@@
-status-&gt;enc_flags |= RX_ENC_FLAG_80MHZ
+status-&gt;bw = RATE_INFO_BW_80
@@
expression status;
@@
-status-&gt;enc_flags |= RX_ENC_FLAG_40MHZ
+status-&gt;bw = RATE_INFO_BW_40
@@
expression status;
@@
-status-&gt;enc_flags |= RX_ENC_FLAG_20MHZ
+status-&gt;bw = RATE_INFO_BW_20
@@
expression status;
@@
-status-&gt;enc_flags |= RX_ENC_FLAG_160MHZ
+status-&gt;bw = RATE_INFO_BW_160
@@
expression status;
@@
-status-&gt;enc_flags |= RX_ENC_FLAG_5MHZ
+status-&gt;bw = RATE_INFO_BW_5
@@
expression status;
@@
-status-&gt;enc_flags |= RX_ENC_FLAG_10MHZ
+status-&gt;bw = RATE_INFO_BW_10

@@
expression status;
@@
-status-&gt;enc_flags |= RX_ENC_FLAG_VHT
+status-&gt;encoding = RX_ENC_VHT
@@
expression status;
@@
-status-&gt;enc_flags |= RX_ENC_FLAG_HT
+status-&gt;encoding = RX_ENC_HT
@@
expression status;
@@
-status.enc_flags |= RX_ENC_FLAG_VHT
+status.encoding = RX_ENC_VHT
@@
expression status;
@@
-status.enc_flags |= RX_ENC_FLAG_HT
+status.encoding = RX_ENC_HT

@@
expression status;
@@
-(status-&gt;enc_flags &amp; RX_ENC_FLAG_HT)
+(status-&gt;encoding == RX_ENC_HT)
@@
expression status;
@@
-(status-&gt;enc_flags &amp; RX_ENC_FLAG_VHT)
+(status-&gt;encoding == RX_ENC_VHT)

@@
expression status;
@@
-(status-&gt;enc_flags &amp; RX_ENC_FLAG_5MHZ)
+(status-&gt;bw == RATE_INFO_BW_5)
@@
expression status;
@@
-(status-&gt;enc_flags &amp; RX_ENC_FLAG_10MHZ)
+(status-&gt;bw == RATE_INFO_BW_10)
@@
expression status;
@@
-(status-&gt;enc_flags &amp; RX_ENC_FLAG_40MHZ)
+(status-&gt;bw == RATE_INFO_BW_40)
@@
expression status;
@@
-(status-&gt;enc_flags &amp; RX_ENC_FLAG_80MHZ)
+(status-&gt;bw == RATE_INFO_BW_80)
@@
expression status;
@@
-(status-&gt;enc_flags &amp; RX_ENC_FLAG_160MHZ)
+(status-&gt;bw == RATE_INFO_BW_160)

Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
We currently use a lot of flags that are mutually incompatible,
separate this out into actual encoding and bandwidth enum values.

Much of this again done with spatch, with manual post-editing,
mostly to add the switch statements and get rid of the conversions.

@@
expression status;
@@
-status-&gt;enc_flags |= RX_ENC_FLAG_80MHZ
+status-&gt;bw = RATE_INFO_BW_80
@@
expression status;
@@
-status-&gt;enc_flags |= RX_ENC_FLAG_40MHZ
+status-&gt;bw = RATE_INFO_BW_40
@@
expression status;
@@
-status-&gt;enc_flags |= RX_ENC_FLAG_20MHZ
+status-&gt;bw = RATE_INFO_BW_20
@@
expression status;
@@
-status-&gt;enc_flags |= RX_ENC_FLAG_160MHZ
+status-&gt;bw = RATE_INFO_BW_160
@@
expression status;
@@
-status-&gt;enc_flags |= RX_ENC_FLAG_5MHZ
+status-&gt;bw = RATE_INFO_BW_5
@@
expression status;
@@
-status-&gt;enc_flags |= RX_ENC_FLAG_10MHZ
+status-&gt;bw = RATE_INFO_BW_10

@@
expression status;
@@
-status-&gt;enc_flags |= RX_ENC_FLAG_VHT
+status-&gt;encoding = RX_ENC_VHT
@@
expression status;
@@
-status-&gt;enc_flags |= RX_ENC_FLAG_HT
+status-&gt;encoding = RX_ENC_HT
@@
expression status;
@@
-status.enc_flags |= RX_ENC_FLAG_VHT
+status.encoding = RX_ENC_VHT
@@
expression status;
@@
-status.enc_flags |= RX_ENC_FLAG_HT
+status.encoding = RX_ENC_HT

@@
expression status;
@@
-(status-&gt;enc_flags &amp; RX_ENC_FLAG_HT)
+(status-&gt;encoding == RX_ENC_HT)
@@
expression status;
@@
-(status-&gt;enc_flags &amp; RX_ENC_FLAG_VHT)
+(status-&gt;encoding == RX_ENC_VHT)

@@
expression status;
@@
-(status-&gt;enc_flags &amp; RX_ENC_FLAG_5MHZ)
+(status-&gt;bw == RATE_INFO_BW_5)
@@
expression status;
@@
-(status-&gt;enc_flags &amp; RX_ENC_FLAG_10MHZ)
+(status-&gt;bw == RATE_INFO_BW_10)
@@
expression status;
@@
-(status-&gt;enc_flags &amp; RX_ENC_FLAG_40MHZ)
+(status-&gt;bw == RATE_INFO_BW_40)
@@
expression status;
@@
-(status-&gt;enc_flags &amp; RX_ENC_FLAG_80MHZ)
+(status-&gt;bw == RATE_INFO_BW_80)
@@
expression status;
@@
-(status-&gt;enc_flags &amp; RX_ENC_FLAG_160MHZ)
+(status-&gt;bw == RATE_INFO_BW_160)

Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>mac80211: clean up rate encoding bits in RX status</title>
<updated>2017-04-28T08:41:38+00:00</updated>
<author>
<name>Johannes Berg</name>
<email>johannes.berg@intel.com</email>
</author>
<published>2017-04-26T09:13:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=7fdd69c5af2160236e97668bc1fb7d70855c66ae'/>
<id>7fdd69c5af2160236e97668bc1fb7d70855c66ae</id>
<content type='text'>
In preparation for adding support for HE rates, clean up
the driver report encoding for rate/bandwidth reporting
on RX frames.

Much of this patch was done with the following spatch:

@@
expression status;
@@
-status-&gt;flag &amp; (RX_FLAG_HT | RX_FLAG_VHT)
+status-&gt;enc_flags &amp; (RX_ENC_FLAG_HT | RX_ENC_FLAG_VHT)

@@
assignment operator op;
expression status;
@@
-status-&gt;flag op RX_FLAG_SHORTPRE
+status-&gt;enc_flags op RX_ENC_FLAG_SHORTPRE
@@
expression status;
@@
-status-&gt;flag &amp; RX_FLAG_SHORTPRE
+status-&gt;enc_flags &amp; RX_ENC_FLAG_SHORTPRE

@@
assignment operator op;
expression status;
@@
-status-&gt;flag op RX_FLAG_HT
+status-&gt;enc_flags op RX_ENC_FLAG_HT
@@
expression status;
@@
-status-&gt;flag &amp; RX_FLAG_HT
+status-&gt;enc_flags &amp; RX_ENC_FLAG_HT

@@
assignment operator op;
expression status;
@@
-status-&gt;flag op RX_FLAG_40MHZ
+status-&gt;enc_flags op RX_ENC_FLAG_40MHZ
@@
expression status;
@@
-status-&gt;flag &amp; RX_FLAG_40MHZ
+status-&gt;enc_flags &amp; RX_ENC_FLAG_40MHZ

@@
assignment operator op;
expression status;
@@
-status-&gt;flag op RX_FLAG_SHORT_GI
+status-&gt;enc_flags op RX_ENC_FLAG_SHORT_GI
@@
expression status;
@@
-status-&gt;flag &amp; RX_FLAG_SHORT_GI
+status-&gt;enc_flags &amp; RX_ENC_FLAG_SHORT_GI

@@
assignment operator op;
expression status;
@@
-status-&gt;flag op RX_FLAG_HT_GF
+status-&gt;enc_flags op RX_ENC_FLAG_HT_GF
@@
expression status;
@@
-status-&gt;flag &amp; RX_FLAG_HT_GF
+status-&gt;enc_flags &amp; RX_ENC_FLAG_HT_GF

@@
assignment operator op;
expression status;
@@
-status-&gt;flag op RX_FLAG_VHT
+status-&gt;enc_flags op RX_ENC_FLAG_VHT
@@
expression status;
@@
-status-&gt;flag &amp; RX_FLAG_VHT
+status-&gt;enc_flags &amp; RX_ENC_FLAG_VHT

@@
assignment operator op;
expression status;
@@
-status-&gt;flag op RX_FLAG_STBC_MASK
+status-&gt;enc_flags op RX_ENC_FLAG_STBC_MASK
@@
expression status;
@@
-status-&gt;flag &amp; RX_FLAG_STBC_MASK
+status-&gt;enc_flags &amp; RX_ENC_FLAG_STBC_MASK

@@
assignment operator op;
expression status;
@@
-status-&gt;flag op RX_FLAG_LDPC
+status-&gt;enc_flags op RX_ENC_FLAG_LDPC
@@
expression status;
@@
-status-&gt;flag &amp; RX_FLAG_LDPC
+status-&gt;enc_flags &amp; RX_ENC_FLAG_LDPC

@@
assignment operator op;
expression status;
@@
-status-&gt;flag op RX_FLAG_10MHZ
+status-&gt;enc_flags op RX_ENC_FLAG_10MHZ
@@
expression status;
@@
-status-&gt;flag &amp; RX_FLAG_10MHZ
+status-&gt;enc_flags &amp; RX_ENC_FLAG_10MHZ

@@
assignment operator op;
expression status;
@@
-status-&gt;flag op RX_FLAG_5MHZ
+status-&gt;enc_flags op RX_ENC_FLAG_5MHZ
@@
expression status;
@@
-status-&gt;flag &amp; RX_FLAG_5MHZ
+status-&gt;enc_flags &amp; RX_ENC_FLAG_5MHZ

@@
assignment operator op;
expression status;
@@
-status-&gt;vht_flag op RX_VHT_FLAG_80MHZ
+status-&gt;enc_flags op RX_ENC_FLAG_80MHZ
@@
expression status;
@@
-status-&gt;vht_flag &amp; RX_VHT_FLAG_80MHZ
+status-&gt;enc_flags &amp; RX_ENC_FLAG_80MHZ

@@
assignment operator op;
expression status;
@@
-status-&gt;vht_flag op RX_VHT_FLAG_160MHZ
+status-&gt;enc_flags op RX_ENC_FLAG_160MHZ
@@
expression status;
@@
-status-&gt;vht_flag &amp; RX_VHT_FLAG_160MHZ
+status-&gt;enc_flags &amp; RX_ENC_FLAG_160MHZ

@@
assignment operator op;
expression status;
@@
-status-&gt;vht_flag op RX_VHT_FLAG_BF
+status-&gt;enc_flags op RX_ENC_FLAG_BF
@@
expression status;
@@
-status-&gt;vht_flag &amp; RX_VHT_FLAG_BF
+status-&gt;enc_flags &amp; RX_ENC_FLAG_BF

@@
assignment operator op;
expression status, STBC;
@@
-status-&gt;flag op STBC &lt;&lt; RX_FLAG_STBC_SHIFT
+status-&gt;enc_flags op STBC &lt;&lt; RX_ENC_FLAG_STBC_SHIFT

@@
assignment operator op;
expression status;
@@
-status.flag op RX_FLAG_SHORTPRE
+status.enc_flags op RX_ENC_FLAG_SHORTPRE
@@
expression status;
@@
-status.flag &amp; RX_FLAG_SHORTPRE
+status.enc_flags &amp; RX_ENC_FLAG_SHORTPRE

@@
assignment operator op;
expression status;
@@
-status.flag op RX_FLAG_HT
+status.enc_flags op RX_ENC_FLAG_HT
@@
expression status;
@@
-status.flag &amp; RX_FLAG_HT
+status.enc_flags &amp; RX_ENC_FLAG_HT

@@
assignment operator op;
expression status;
@@
-status.flag op RX_FLAG_40MHZ
+status.enc_flags op RX_ENC_FLAG_40MHZ
@@
expression status;
@@
-status.flag &amp; RX_FLAG_40MHZ
+status.enc_flags &amp; RX_ENC_FLAG_40MHZ

@@
assignment operator op;
expression status;
@@
-status.flag op RX_FLAG_SHORT_GI
+status.enc_flags op RX_ENC_FLAG_SHORT_GI
@@
expression status;
@@
-status.flag &amp; RX_FLAG_SHORT_GI
+status.enc_flags &amp; RX_ENC_FLAG_SHORT_GI

@@
assignment operator op;
expression status;
@@
-status.flag op RX_FLAG_HT_GF
+status.enc_flags op RX_ENC_FLAG_HT_GF
@@
expression status;
@@
-status.flag &amp; RX_FLAG_HT_GF
+status.enc_flags &amp; RX_ENC_FLAG_HT_GF

@@
assignment operator op;
expression status;
@@
-status.flag op RX_FLAG_VHT
+status.enc_flags op RX_ENC_FLAG_VHT
@@
expression status;
@@
-status.flag &amp; RX_FLAG_VHT
+status.enc_flags &amp; RX_ENC_FLAG_VHT

@@
assignment operator op;
expression status;
@@
-status.flag op RX_FLAG_STBC_MASK
+status.enc_flags op RX_ENC_FLAG_STBC_MASK
@@
expression status;
@@
-status.flag &amp; RX_FLAG_STBC_MASK
+status.enc_flags &amp; RX_ENC_FLAG_STBC_MASK

@@
assignment operator op;
expression status;
@@
-status.flag op RX_FLAG_LDPC
+status.enc_flags op RX_ENC_FLAG_LDPC
@@
expression status;
@@
-status.flag &amp; RX_FLAG_LDPC
+status.enc_flags &amp; RX_ENC_FLAG_LDPC

@@
assignment operator op;
expression status;
@@
-status.flag op RX_FLAG_10MHZ
+status.enc_flags op RX_ENC_FLAG_10MHZ
@@
expression status;
@@
-status.flag &amp; RX_FLAG_10MHZ
+status.enc_flags &amp; RX_ENC_FLAG_10MHZ

@@
assignment operator op;
expression status;
@@
-status.flag op RX_FLAG_5MHZ
+status.enc_flags op RX_ENC_FLAG_5MHZ
@@
expression status;
@@
-status.flag &amp; RX_FLAG_5MHZ
+status.enc_flags &amp; RX_ENC_FLAG_5MHZ

@@
assignment operator op;
expression status;
@@
-status.vht_flag op RX_VHT_FLAG_80MHZ
+status.enc_flags op RX_ENC_FLAG_80MHZ
@@
expression status;
@@
-status.vht_flag &amp; RX_VHT_FLAG_80MHZ
+status.enc_flags &amp; RX_ENC_FLAG_80MHZ

@@
assignment operator op;
expression status;
@@
-status.vht_flag op RX_VHT_FLAG_160MHZ
+status.enc_flags op RX_ENC_FLAG_160MHZ
@@
expression status;
@@
-status.vht_flag &amp; RX_VHT_FLAG_160MHZ
+status.enc_flags &amp; RX_ENC_FLAG_160MHZ

@@
assignment operator op;
expression status;
@@
-status.vht_flag op RX_VHT_FLAG_BF
+status.enc_flags op RX_ENC_FLAG_BF
@@
expression status;
@@
-status.vht_flag &amp; RX_VHT_FLAG_BF
+status.enc_flags &amp; RX_ENC_FLAG_BF

@@
assignment operator op;
expression status, STBC;
@@
-status.flag op STBC &lt;&lt; RX_FLAG_STBC_SHIFT
+status.enc_flags op STBC &lt;&lt; RX_ENC_FLAG_STBC_SHIFT

@@
@@
-RX_FLAG_STBC_SHIFT
+RX_ENC_FLAG_STBC_SHIFT

Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
In preparation for adding support for HE rates, clean up
the driver report encoding for rate/bandwidth reporting
on RX frames.

Much of this patch was done with the following spatch:

@@
expression status;
@@
-status-&gt;flag &amp; (RX_FLAG_HT | RX_FLAG_VHT)
+status-&gt;enc_flags &amp; (RX_ENC_FLAG_HT | RX_ENC_FLAG_VHT)

@@
assignment operator op;
expression status;
@@
-status-&gt;flag op RX_FLAG_SHORTPRE
+status-&gt;enc_flags op RX_ENC_FLAG_SHORTPRE
@@
expression status;
@@
-status-&gt;flag &amp; RX_FLAG_SHORTPRE
+status-&gt;enc_flags &amp; RX_ENC_FLAG_SHORTPRE

@@
assignment operator op;
expression status;
@@
-status-&gt;flag op RX_FLAG_HT
+status-&gt;enc_flags op RX_ENC_FLAG_HT
@@
expression status;
@@
-status-&gt;flag &amp; RX_FLAG_HT
+status-&gt;enc_flags &amp; RX_ENC_FLAG_HT

@@
assignment operator op;
expression status;
@@
-status-&gt;flag op RX_FLAG_40MHZ
+status-&gt;enc_flags op RX_ENC_FLAG_40MHZ
@@
expression status;
@@
-status-&gt;flag &amp; RX_FLAG_40MHZ
+status-&gt;enc_flags &amp; RX_ENC_FLAG_40MHZ

@@
assignment operator op;
expression status;
@@
-status-&gt;flag op RX_FLAG_SHORT_GI
+status-&gt;enc_flags op RX_ENC_FLAG_SHORT_GI
@@
expression status;
@@
-status-&gt;flag &amp; RX_FLAG_SHORT_GI
+status-&gt;enc_flags &amp; RX_ENC_FLAG_SHORT_GI

@@
assignment operator op;
expression status;
@@
-status-&gt;flag op RX_FLAG_HT_GF
+status-&gt;enc_flags op RX_ENC_FLAG_HT_GF
@@
expression status;
@@
-status-&gt;flag &amp; RX_FLAG_HT_GF
+status-&gt;enc_flags &amp; RX_ENC_FLAG_HT_GF

@@
assignment operator op;
expression status;
@@
-status-&gt;flag op RX_FLAG_VHT
+status-&gt;enc_flags op RX_ENC_FLAG_VHT
@@
expression status;
@@
-status-&gt;flag &amp; RX_FLAG_VHT
+status-&gt;enc_flags &amp; RX_ENC_FLAG_VHT

@@
assignment operator op;
expression status;
@@
-status-&gt;flag op RX_FLAG_STBC_MASK
+status-&gt;enc_flags op RX_ENC_FLAG_STBC_MASK
@@
expression status;
@@
-status-&gt;flag &amp; RX_FLAG_STBC_MASK
+status-&gt;enc_flags &amp; RX_ENC_FLAG_STBC_MASK

@@
assignment operator op;
expression status;
@@
-status-&gt;flag op RX_FLAG_LDPC
+status-&gt;enc_flags op RX_ENC_FLAG_LDPC
@@
expression status;
@@
-status-&gt;flag &amp; RX_FLAG_LDPC
+status-&gt;enc_flags &amp; RX_ENC_FLAG_LDPC

@@
assignment operator op;
expression status;
@@
-status-&gt;flag op RX_FLAG_10MHZ
+status-&gt;enc_flags op RX_ENC_FLAG_10MHZ
@@
expression status;
@@
-status-&gt;flag &amp; RX_FLAG_10MHZ
+status-&gt;enc_flags &amp; RX_ENC_FLAG_10MHZ

@@
assignment operator op;
expression status;
@@
-status-&gt;flag op RX_FLAG_5MHZ
+status-&gt;enc_flags op RX_ENC_FLAG_5MHZ
@@
expression status;
@@
-status-&gt;flag &amp; RX_FLAG_5MHZ
+status-&gt;enc_flags &amp; RX_ENC_FLAG_5MHZ

@@
assignment operator op;
expression status;
@@
-status-&gt;vht_flag op RX_VHT_FLAG_80MHZ
+status-&gt;enc_flags op RX_ENC_FLAG_80MHZ
@@
expression status;
@@
-status-&gt;vht_flag &amp; RX_VHT_FLAG_80MHZ
+status-&gt;enc_flags &amp; RX_ENC_FLAG_80MHZ

@@
assignment operator op;
expression status;
@@
-status-&gt;vht_flag op RX_VHT_FLAG_160MHZ
+status-&gt;enc_flags op RX_ENC_FLAG_160MHZ
@@
expression status;
@@
-status-&gt;vht_flag &amp; RX_VHT_FLAG_160MHZ
+status-&gt;enc_flags &amp; RX_ENC_FLAG_160MHZ

@@
assignment operator op;
expression status;
@@
-status-&gt;vht_flag op RX_VHT_FLAG_BF
+status-&gt;enc_flags op RX_ENC_FLAG_BF
@@
expression status;
@@
-status-&gt;vht_flag &amp; RX_VHT_FLAG_BF
+status-&gt;enc_flags &amp; RX_ENC_FLAG_BF

@@
assignment operator op;
expression status, STBC;
@@
-status-&gt;flag op STBC &lt;&lt; RX_FLAG_STBC_SHIFT
+status-&gt;enc_flags op STBC &lt;&lt; RX_ENC_FLAG_STBC_SHIFT

@@
assignment operator op;
expression status;
@@
-status.flag op RX_FLAG_SHORTPRE
+status.enc_flags op RX_ENC_FLAG_SHORTPRE
@@
expression status;
@@
-status.flag &amp; RX_FLAG_SHORTPRE
+status.enc_flags &amp; RX_ENC_FLAG_SHORTPRE

@@
assignment operator op;
expression status;
@@
-status.flag op RX_FLAG_HT
+status.enc_flags op RX_ENC_FLAG_HT
@@
expression status;
@@
-status.flag &amp; RX_FLAG_HT
+status.enc_flags &amp; RX_ENC_FLAG_HT

@@
assignment operator op;
expression status;
@@
-status.flag op RX_FLAG_40MHZ
+status.enc_flags op RX_ENC_FLAG_40MHZ
@@
expression status;
@@
-status.flag &amp; RX_FLAG_40MHZ
+status.enc_flags &amp; RX_ENC_FLAG_40MHZ

@@
assignment operator op;
expression status;
@@
-status.flag op RX_FLAG_SHORT_GI
+status.enc_flags op RX_ENC_FLAG_SHORT_GI
@@
expression status;
@@
-status.flag &amp; RX_FLAG_SHORT_GI
+status.enc_flags &amp; RX_ENC_FLAG_SHORT_GI

@@
assignment operator op;
expression status;
@@
-status.flag op RX_FLAG_HT_GF
+status.enc_flags op RX_ENC_FLAG_HT_GF
@@
expression status;
@@
-status.flag &amp; RX_FLAG_HT_GF
+status.enc_flags &amp; RX_ENC_FLAG_HT_GF

@@
assignment operator op;
expression status;
@@
-status.flag op RX_FLAG_VHT
+status.enc_flags op RX_ENC_FLAG_VHT
@@
expression status;
@@
-status.flag &amp; RX_FLAG_VHT
+status.enc_flags &amp; RX_ENC_FLAG_VHT

@@
assignment operator op;
expression status;
@@
-status.flag op RX_FLAG_STBC_MASK
+status.enc_flags op RX_ENC_FLAG_STBC_MASK
@@
expression status;
@@
-status.flag &amp; RX_FLAG_STBC_MASK
+status.enc_flags &amp; RX_ENC_FLAG_STBC_MASK

@@
assignment operator op;
expression status;
@@
-status.flag op RX_FLAG_LDPC
+status.enc_flags op RX_ENC_FLAG_LDPC
@@
expression status;
@@
-status.flag &amp; RX_FLAG_LDPC
+status.enc_flags &amp; RX_ENC_FLAG_LDPC

@@
assignment operator op;
expression status;
@@
-status.flag op RX_FLAG_10MHZ
+status.enc_flags op RX_ENC_FLAG_10MHZ
@@
expression status;
@@
-status.flag &amp; RX_FLAG_10MHZ
+status.enc_flags &amp; RX_ENC_FLAG_10MHZ

@@
assignment operator op;
expression status;
@@
-status.flag op RX_FLAG_5MHZ
+status.enc_flags op RX_ENC_FLAG_5MHZ
@@
expression status;
@@
-status.flag &amp; RX_FLAG_5MHZ
+status.enc_flags &amp; RX_ENC_FLAG_5MHZ

@@
assignment operator op;
expression status;
@@
-status.vht_flag op RX_VHT_FLAG_80MHZ
+status.enc_flags op RX_ENC_FLAG_80MHZ
@@
expression status;
@@
-status.vht_flag &amp; RX_VHT_FLAG_80MHZ
+status.enc_flags &amp; RX_ENC_FLAG_80MHZ

@@
assignment operator op;
expression status;
@@
-status.vht_flag op RX_VHT_FLAG_160MHZ
+status.enc_flags op RX_ENC_FLAG_160MHZ
@@
expression status;
@@
-status.vht_flag &amp; RX_VHT_FLAG_160MHZ
+status.enc_flags &amp; RX_ENC_FLAG_160MHZ

@@
assignment operator op;
expression status;
@@
-status.vht_flag op RX_VHT_FLAG_BF
+status.enc_flags op RX_ENC_FLAG_BF
@@
expression status;
@@
-status.vht_flag &amp; RX_VHT_FLAG_BF
+status.enc_flags &amp; RX_ENC_FLAG_BF

@@
assignment operator op;
expression status, STBC;
@@
-status.flag op STBC &lt;&lt; RX_FLAG_STBC_SHIFT
+status.enc_flags op STBC &lt;&lt; RX_ENC_FLAG_STBC_SHIFT

@@
@@
-RX_FLAG_STBC_SHIFT
+RX_ENC_FLAG_STBC_SHIFT

Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge tag 'wireless-drivers-next-for-davem-2017-04-21' of git://git.kernel.org/pub/scm/linux/kernel/git/kvalo/wireless-drivers-next</title>
<updated>2017-04-24T16:25:01+00:00</updated>
<author>
<name>David S. Miller</name>
<email>davem@davemloft.net</email>
</author>
<published>2017-04-24T16:25:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=ac2291ce1f17a99c052378927f2d3bcd6b0045a6'/>
<id>ac2291ce1f17a99c052378927f2d3bcd6b0045a6</id>
<content type='text'>
Kalle Valo says:

====================
wireless-drivers-next patches for 4.12

Quite a lot of patches for rtlwifi and iwlwifi this time, but changes
also for other active wireless drivers.

Major changes:

ath9k

* add support for Dell Wireless 1601 PCI device

* add debugfs file to manually override noise floor

ath10k

* bump up FW API to 6 for a new QCA6174 firmware branch

wil6210

* support 8 kB RX buffers

iwlwifi

* work to support A000 devices continues

* add support for FW API 30

* add Geographical and Dynamic Specific Absorption Rate (SAR) support

* support a few new PCI device IDs

rtlwifi

* work on adding Bluetooth coexistance support, not finished yet
====================

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Kalle Valo says:

====================
wireless-drivers-next patches for 4.12

Quite a lot of patches for rtlwifi and iwlwifi this time, but changes
also for other active wireless drivers.

Major changes:

ath9k

* add support for Dell Wireless 1601 PCI device

* add debugfs file to manually override noise floor

ath10k

* bump up FW API to 6 for a new QCA6174 firmware branch

wil6210

* support 8 kB RX buffers

iwlwifi

* work to support A000 devices continues

* add support for FW API 30

* add Geographical and Dynamic Specific Absorption Rate (SAR) support

* support a few new PCI device IDs

rtlwifi

* work on adding Bluetooth coexistance support, not finished yet
====================

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge tag 'mac80211-next-for-davem-2017-04-18' of git://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211-next</title>
<updated>2017-04-20T17:54:40+00:00</updated>
<author>
<name>David S. Miller</name>
<email>davem@davemloft.net</email>
</author>
<published>2017-04-20T17:54:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=028f43bc64401ead2bf86adcef1b7ffdbb170509'/>
<id>028f43bc64401ead2bf86adcef1b7ffdbb170509</id>
<content type='text'>
Johannes Berg says:

====================
My last pull request has been a while, we now have:
 * connection quality monitoring with multiple thresholds
 * support for FILS shared key authentication offload
 * pre-CAC regulatory compliance - only ETSI allows this
 * sanity check for some rate confusion that hit ChromeOS
   (but nobody else uses it, evidently)
 * some documentation updates
 * lots of cleanups
====================

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Johannes Berg says:

====================
My last pull request has been a while, we now have:
 * connection quality monitoring with multiple thresholds
 * support for FILS shared key authentication offload
 * pre-CAC regulatory compliance - only ETSI allows this
 * sanity check for some rate confusion that hit ChromeOS
   (but nobody else uses it, evidently)
 * some documentation updates
 * lots of cleanups
====================

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>rt2800: fix mt7620 E2 channel registers</title>
<updated>2017-04-20T11:00:54+00:00</updated>
<author>
<name>Tomislav Požega</name>
<email>pozega.tomislav@gmail.com</email>
</author>
<published>2017-04-18T09:52:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=a0597834dc0e1af68f48f92b31617b360a14dfc8'/>
<id>a0597834dc0e1af68f48f92b31617b360a14dfc8</id>
<content type='text'>
update RF register 47 and 54 values according to vendor driver

Signed-off-by: Tomislav Požega &lt;pozega.tomislav@gmail.com&gt;
Signed-off-by: Daniel Golle &lt;daniel@makrotopia.org&gt;
Signed-off-by: Kalle Valo &lt;kvalo@codeaurora.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
update RF register 47 and 54 values according to vendor driver

Signed-off-by: Tomislav Požega &lt;pozega.tomislav@gmail.com&gt;
Signed-off-by: Daniel Golle &lt;daniel@makrotopia.org&gt;
Signed-off-by: Kalle Valo &lt;kvalo@codeaurora.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>rt2800: fix mt7620 vco calibration registers</title>
<updated>2017-04-20T11:00:32+00:00</updated>
<author>
<name>Tomislav Požega</name>
<email>pozega.tomislav@gmail.com</email>
</author>
<published>2017-04-18T09:32:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=4bd96b5d3379b00164f454084bbe0ea7d9f752a7'/>
<id>4bd96b5d3379b00164f454084bbe0ea7d9f752a7</id>
<content type='text'>
Use register values from init LNA function instead of the ones from
restore LNA function. Apply register values based on rx path
configuration.

Signed-off-by: Tomislav Požega &lt;pozega.tomislav@gmail.com&gt;
Signed-off-by: Daniel Golle &lt;daniel@makrotopia.org&gt;
Signed-off-by: Kalle Valo &lt;kvalo@codeaurora.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Use register values from init LNA function instead of the ones from
restore LNA function. Apply register values based on rx path
configuration.

Signed-off-by: Tomislav Požega &lt;pozega.tomislav@gmail.com&gt;
Signed-off-by: Daniel Golle &lt;daniel@makrotopia.org&gt;
Signed-off-by: Kalle Valo &lt;kvalo@codeaurora.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>rt2800: do VCO calibration after programming ALC</title>
<updated>2017-04-20T11:00:00+00:00</updated>
<author>
<name>Daniel Golle</name>
<email>daniel@makrotopia.org</email>
</author>
<published>2017-04-17T19:32:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=2031badabf269067f9bc581fea946a27229e4030'/>
<id>2031badabf269067f9bc581fea946a27229e4030</id>
<content type='text'>
Somehow AP doesn't come up and the first scan fails if we don't do
VCO calibration every time.
The vendor driver duplicates the VCO calibration function into the
channel switching logic, we can do the same with less duplication.

Signed-off-by: Daniel Golle &lt;daniel@makrotopia.org&gt;
Signed-off-by: Kalle Valo &lt;kvalo@codeaurora.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Somehow AP doesn't come up and the first scan fails if we don't do
VCO calibration every time.
The vendor driver duplicates the VCO calibration function into the
channel switching logic, we can do the same with less duplication.

Signed-off-by: Daniel Golle &lt;daniel@makrotopia.org&gt;
Signed-off-by: Kalle Valo &lt;kvalo@codeaurora.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>rt2800: fix LNA gain assignment for MT7620</title>
<updated>2017-04-20T10:59:59+00:00</updated>
<author>
<name>Daniel Golle</name>
<email>daniel@makrotopia.org</email>
</author>
<published>2017-04-17T19:30:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=225a644aae03ffe2ec186cd994cd5ab241130035'/>
<id>225a644aae03ffe2ec186cd994cd5ab241130035</id>
<content type='text'>
The base value used for MT7620 differs from Rt5392 which resulted in
quite bad RX signal quality. Fix this by using the correct base value as
well as the LNA calibration values for HT20.

Reported-by: Tom Psyborg &lt;pozega.tomislav@gmail.com&gt;
Signed-off-by: Daniel Golle &lt;daniel@makrotopia.org&gt;
Signed-off-by: Kalle Valo &lt;kvalo@codeaurora.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The base value used for MT7620 differs from Rt5392 which resulted in
quite bad RX signal quality. Fix this by using the correct base value as
well as the LNA calibration values for HT20.

Reported-by: Tom Psyborg &lt;pozega.tomislav@gmail.com&gt;
Signed-off-by: Daniel Golle &lt;daniel@makrotopia.org&gt;
Signed-off-by: Kalle Valo &lt;kvalo@codeaurora.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>rt2x00: reverse external PA capability flag logic</title>
<updated>2017-04-13T14:12:32+00:00</updated>
<author>
<name>Daniel Golle</name>
<email>daniel@makrotopia.org</email>
</author>
<published>2017-04-10T13:29:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=1f242a3de702d5a19c479685d35b050837122724'/>
<id>1f242a3de702d5a19c479685d35b050837122724</id>
<content type='text'>
Consequently refer to external PA instead of inverting the logic and
use an internal PA capability flag which is a bit confusing.
Currently this is used for Rt3352 only, but MT7620A also allows for an
external PA which will be supported by a follow up patch.

Signed-off-by: Daniel Golle &lt;daniel@makrotopia.org&gt;
Acked-by: Stanislaw Gruszka &lt;sgruszka@redhat.com&gt;
Signed-off-by: Kalle Valo &lt;kvalo@codeaurora.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Consequently refer to external PA instead of inverting the logic and
use an internal PA capability flag which is a bit confusing.
Currently this is used for Rt3352 only, but MT7620A also allows for an
external PA which will be supported by a follow up patch.

Signed-off-by: Daniel Golle &lt;daniel@makrotopia.org&gt;
Acked-by: Stanislaw Gruszka &lt;sgruszka@redhat.com&gt;
Signed-off-by: Kalle Valo &lt;kvalo@codeaurora.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>rt2x00: add support for MT7620</title>
<updated>2017-03-22T09:04:52+00:00</updated>
<author>
<name>Roman Yeryomin</name>
<email>roman@advem.lv</email>
</author>
<published>2017-03-20T23:43:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=41977e86c984fcdddb454a3d7887de5d47b5f530'/>
<id>41977e86c984fcdddb454a3d7887de5d47b5f530</id>
<content type='text'>
Basic support for MT7620 built-in wireless radio was added to
OpenWrt in r41441. It has seen some heavy cleaning and refactoring
since in order to match the Kernel's code quality standards.

Signed-off-by: Roman Yeryomin &lt;roman@advem.lv&gt;
Signed-off-by: Daniel Golle &lt;daniel@makrotopia.org&gt;
Acked-by: Stanislaw Gruszka &lt;sgruszka@redhat.com&gt;
Signed-off-by: Kalle Valo &lt;kvalo@codeaurora.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Basic support for MT7620 built-in wireless radio was added to
OpenWrt in r41441. It has seen some heavy cleaning and refactoring
since in order to match the Kernel's code quality standards.

Signed-off-by: Roman Yeryomin &lt;roman@advem.lv&gt;
Signed-off-by: Daniel Golle &lt;daniel@makrotopia.org&gt;
Acked-by: Stanislaw Gruszka &lt;sgruszka@redhat.com&gt;
Signed-off-by: Kalle Valo &lt;kvalo@codeaurora.org&gt;
</pre>
</div>
</content>
</entry>
</feed>
