<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux.git/drivers/net/wireless/broadcom/b43, branch v4.13</title>
<subtitle>Linux kernel source tree</subtitle>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/'/>
<entry>
<title>b43: Add missing MODULE_FIRMWARE()</title>
<updated>2017-05-22T09:02:46+00:00</updated>
<author>
<name>Takashi Iwai</name>
<email>tiwai@suse.de</email>
</author>
<published>2017-05-04T09:27:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=3c89a72ad80c64bdbd5ff851ee9c328a191f7e01'/>
<id>3c89a72ad80c64bdbd5ff851ee9c328a191f7e01</id>
<content type='text'>
Some firmware entries were forgotten to be added via MODULE_FIRMWARE(), which
may result in the non-functional state when the driver is loaded in initrd.

Link: http://bugzilla.opensuse.org/show_bug.cgi?id=1037344
Fixes: 15be8e89cdd9 ("b43: add more bcma cores")
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
Signed-off-by: Kalle Valo &lt;kvalo@codeaurora.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Some firmware entries were forgotten to be added via MODULE_FIRMWARE(), which
may result in the non-functional state when the driver is loaded in initrd.

Link: http://bugzilla.opensuse.org/show_bug.cgi?id=1037344
Fixes: 15be8e89cdd9 ("b43: add more bcma cores")
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
Signed-off-by: Kalle Valo &lt;kvalo@codeaurora.org&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>wireless: Set NL80211_EXT_FEATURE_CQM_RSSI_LIST in multiple drivers</title>
<updated>2017-03-06T08:21:39+00:00</updated>
<author>
<name>Andrew Zaborowski</name>
<email>andrew.zaborowski@intel.com</email>
</author>
<published>2017-02-10T03:50:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=ae44b502669d0cd1f167cdb48994292aa20fd3dd'/>
<id>ae44b502669d0cd1f167cdb48994292aa20fd3dd</id>
<content type='text'>
Set the NL80211_EXT_FEATURE_CQM_RSSI_LIST wiphy extended feature
wholesale in all mac80211-based drivers that do not set the
IEEE80211_VIF_BEACON_FILTER flags on their interfaces.  mac80211 will
be processing supplied RSSI values in ieee80211_rx_mgmt_beacon and
will detect when the thresholds set by
ieee80211_set_cqm_rssi_range_config are crossed.  Remaining (few)
drivers need code to enable the firmware to monitor the thresholds.
This is mostly only compile-tested.

Signed-off-by: Andrew Zaborowski &lt;andrew.zaborowski@intel.com&gt;
Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Set the NL80211_EXT_FEATURE_CQM_RSSI_LIST wiphy extended feature
wholesale in all mac80211-based drivers that do not set the
IEEE80211_VIF_BEACON_FILTER flags on their interfaces.  mac80211 will
be processing supplied RSSI values in ieee80211_rx_mgmt_beacon and
will detect when the thresholds set by
ieee80211_set_cqm_rssi_range_config are crossed.  Remaining (few)
drivers need code to enable the firmware to monitor the thresholds.
This is mostly only compile-tested.

Signed-off-by: Andrew Zaborowski &lt;andrew.zaborowski@intel.com&gt;
Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>wireless: deprecate WDS and disable by default</title>
<updated>2016-10-27T07:08:43+00:00</updated>
<author>
<name>Johannes Berg</name>
<email>johannes.berg@intel.com</email>
</author>
<published>2016-10-18T08:28:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=8f20542386c57bc5f40a09e38d2772d84c0b2afa'/>
<id>8f20542386c57bc5f40a09e38d2772d84c0b2afa</id>
<content type='text'>
The old WDS 4-addr frame support is very limited, e.g.
 * no encryption is possible on such links
 * it cannot support rate/HT/VHT negotiation
 * management APIs are very restricted

These make the WDS legacy mode useless in practice.

All of these are resolved by the 4-addr AP/client support,
so there's also no reason to improve WDS in the future.

Therefore, add a Kconfig option to disable legacy WDS.
This gives people an "emergency valve" while they migrate
to the better-supported 4-addr AP/client option; we plan
to remove it (and the associated cfg80211/mac80211 code,
which is the ultimate goal) in the future.

Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The old WDS 4-addr frame support is very limited, e.g.
 * no encryption is possible on such links
 * it cannot support rate/HT/VHT negotiation
 * management APIs are very restricted

These make the WDS legacy mode useless in practice.

All of these are resolved by the 4-addr AP/client support,
so there's also no reason to improve WDS in the future.

Therefore, add a Kconfig option to disable legacy WDS.
This gives people an "emergency valve" while they migrate
to the better-supported 4-addr AP/client option; we plan
to remove it (and the associated cfg80211/mac80211 code,
which is the ultimate goal) in the future.

Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>b43: fix debugfs crash</title>
<updated>2016-09-21T10:13:34+00:00</updated>
<author>
<name>Christian Lamparter</name>
<email>chunkeey@googlemail.com</email>
</author>
<published>2016-09-17T19:43:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=51b275a6fe5601834b717351d6cbdb89bd1f308b'/>
<id>51b275a6fe5601834b717351d6cbdb89bd1f308b</id>
<content type='text'>
This patch fixes a crash that happens because b43's
debugfs code expects file-&gt;f_op to be a pointer to
its own b43_debugfs_fops struct. This is no longer
the case since commit 9fd4dcece43a
("debugfs: prevent access to possibly dead file_operations at file open")

Reviewed-by: Nicolai Stange &lt;nicstange@gmail.com&gt;
Signed-off-by: Christian Lamparter &lt;chunkeey@gmail.com&gt;
Cc: stable &lt;stable@vger.kernel.org&gt; # 4.7+
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch fixes a crash that happens because b43's
debugfs code expects file-&gt;f_op to be a pointer to
its own b43_debugfs_fops struct. This is no longer
the case since commit 9fd4dcece43a
("debugfs: prevent access to possibly dead file_operations at file open")

Reviewed-by: Nicolai Stange &lt;nicstange@gmail.com&gt;
Signed-off-by: Christian Lamparter &lt;chunkeey@gmail.com&gt;
Cc: stable &lt;stable@vger.kernel.org&gt; # 4.7+
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>b43: Completely remove support for phy_a</title>
<updated>2016-06-16T15:23:18+00:00</updated>
<author>
<name>Guenter Roeck</name>
<email>linux@roeck-us.net</email>
</author>
<published>2016-06-04T14:54:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=afdfdc481ea96ef1fac95ade8ec29c5e14333d2f'/>
<id>afdfdc481ea96ef1fac95ade8ec29c5e14333d2f</id>
<content type='text'>
Per Michael Büsch: "All a-phy code is usused", so remove it all.

Cc: Michael Büsch &lt;m@bues.ch&gt;
Signed-off-by: Guenter Roeck &lt;linux@roeck-us.net&gt;
Signed-off-by: Kalle Valo &lt;kvalo@codeaurora.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Per Michael Büsch: "All a-phy code is usused", so remove it all.

Cc: Michael Büsch &lt;m@bues.ch&gt;
Signed-off-by: Guenter Roeck &lt;linux@roeck-us.net&gt;
Signed-off-by: Kalle Valo &lt;kvalo@codeaurora.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>b43: Remove unused phy_a code</title>
<updated>2016-06-16T15:23:17+00:00</updated>
<author>
<name>Guenter Roeck</name>
<email>linux@roeck-us.net</email>
</author>
<published>2016-06-04T14:54:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=9791333a840f292ab32746264803f957de3aa3a9'/>
<id>9791333a840f292ab32746264803f957de3aa3a9</id>
<content type='text'>
gcc-6 reports the following error with -Werror=unused-const-variable.

drivers/net/wireless/broadcom/b43/phy_a.c:576:40: error:
	'b43_phyops_a' defined but not used

Per Michael Büsch: "All a-phy code is usused", so remove it all,
and move the remaining Type-G initialization code into phy_g.c.

Reported-by: Fengguang Wu &lt;fengguang.wu@intel.com&gt; [0-day test robot]
Cc: Michael Büsch &lt;m@bues.ch&gt;
Signed-off-by: Guenter Roeck &lt;linux@roeck-us.net&gt;
Signed-off-by: Kalle Valo &lt;kvalo@codeaurora.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
gcc-6 reports the following error with -Werror=unused-const-variable.

drivers/net/wireless/broadcom/b43/phy_a.c:576:40: error:
	'b43_phyops_a' defined but not used

Per Michael Büsch: "All a-phy code is usused", so remove it all,
and move the remaining Type-G initialization code into phy_g.c.

Reported-by: Fengguang Wu &lt;fengguang.wu@intel.com&gt; [0-day test robot]
Cc: Michael Büsch &lt;m@bues.ch&gt;
Signed-off-by: Guenter Roeck &lt;linux@roeck-us.net&gt;
Signed-off-by: Kalle Valo &lt;kvalo@codeaurora.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>b43: only hardcode LED behavior if SPROM doesn't encode any</title>
<updated>2016-06-16T15:14:46+00:00</updated>
<author>
<name>Lucas Stach</name>
<email>dev@lynxeye.de</email>
</author>
<published>2016-06-03T21:04:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=508f1222ba4e14e0737a3a1b39aed9e3e8a21fc7'/>
<id>508f1222ba4e14e0737a3a1b39aed9e3e8a21fc7</id>
<content type='text'>
Only hardcode the LED behavior if the SROM doesn't provide any for all
LEDs of the card. This avoids instantiating LED triggers for unconnected
LEDs, while (hopefully) keeping things working for old cards with a
blank SROM.

Signed-off-by: Lucas Stach &lt;dev@lynxeye.de&gt;
Signed-off-by: Kalle Valo &lt;kvalo@codeaurora.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Only hardcode the LED behavior if the SROM doesn't provide any for all
LEDs of the card. This avoids instantiating LED triggers for unconnected
LEDs, while (hopefully) keeping things working for old cards with a
blank SROM.

Signed-off-by: Lucas Stach &lt;dev@lynxeye.de&gt;
Signed-off-by: Kalle Valo &lt;kvalo@codeaurora.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>b43: don't unconditionally fall back to CCK if the rate is 6MB OFDM.</title>
<updated>2016-06-04T15:00:45+00:00</updated>
<author>
<name>Adrian Chadd</name>
<email>adrian@freebsd.org</email>
</author>
<published>2016-05-17T03:25:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=d0b03439f7845ad9a72cc0f0cbb1ed34a5de5a08'/>
<id>d0b03439f7845ad9a72cc0f0cbb1ed34a5de5a08</id>
<content type='text'>
Check the current PHY operating mode (gmode) to see if we should
fall back from 6MB OFDM to 11MB CCK.  For 5GHz operation this isn't
allowed.

Note, the fallback lookup is only done for RTS rates; normal fallback
rates are done via mac80211 and aren't affected by this change.

Signed-off-by: Adrian Chadd &lt;adrian@freebsd.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>
Check the current PHY operating mode (gmode) to see if we should
fall back from 6MB OFDM to 11MB CCK.  For 5GHz operation this isn't
allowed.

Note, the fallback lookup is only done for RTS rates; normal fallback
rates are done via mac80211 and aren't affected by this change.

Signed-off-by: Adrian Chadd &lt;adrian@freebsd.org&gt;
Signed-off-by: Kalle Valo &lt;kvalo@codeaurora.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>cfg80211: remove enum ieee80211_band</title>
<updated>2016-04-12T13:56:15+00:00</updated>
<author>
<name>Johannes Berg</name>
<email>johannes.berg@intel.com</email>
</author>
<published>2016-04-12T13:56:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=57fbcce37be7c1d2622b56587c10ade00e96afa3'/>
<id>57fbcce37be7c1d2622b56587c10ade00e96afa3</id>
<content type='text'>
This enum is already perfectly aliased to enum nl80211_band, and
the only reason for it is that we get IEEE80211_NUM_BANDS out of
it. There's no really good reason to not declare the number of
bands in nl80211 though, so do that and remove the cfg80211 one.

Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This enum is already perfectly aliased to enum nl80211_band, and
the only reason for it is that we get IEEE80211_NUM_BANDS out of
it. There's no really good reason to not declare the number of
bands in nl80211 though, so do that and remove the cfg80211 one.

Signed-off-by: Johannes Berg &lt;johannes.berg@intel.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
