From: Kalle Valo Date: Thu, 22 Jan 2015 12:49:44 +0000 (+0200) Subject: Merge commit 'c1e140bf79d817d4a7aa9932eb98b0359c87af33' from mac80211-next X-Git-Tag: v4.0-rc1~133^2~10^2~143 X-Git-Url: http://git.cascardo.info/?p=cascardo%2Flinux.git;a=commitdiff_plain;h=6b03e32d575917d048875a182bd2dd8924036000 Merge commit 'c1e140bf79d817d4a7aa9932eb98b0359c87af33' from mac80211-next Patch "ath9k: Fix no-ack frame status" needs these mac80211 patches: commit 5cf16616e152dd5c274a65954c77f64892d025a8 Author: Sujith Manoharan Date: Wed Dec 10 21:26:11 2014 +0530 mac80211: Fix accounting of multicast frames commit 6b127c71fbdd3daacfd8b9f80b8e6ebfb70a889e Author: Sujith Manoharan Date: Wed Dec 10 21:26:10 2014 +0530 mac80211: Move IEEE80211_TX_CTL_PS_RESPONSE Conflicts: drivers/net/wireless/ath/wil6210/cfg80211.c drivers/staging/rtl8723au/os_dep/ioctl_cfg80211.c --- 6b03e32d575917d048875a182bd2dd8924036000 diff --cc drivers/net/wireless/ath/wil6210/cfg80211.c index 5c79f1d62103,e72a95d1ced6..bd013fdb86dc --- a/drivers/net/wireless/ath/wil6210/cfg80211.c +++ b/drivers/net/wireless/ath/wil6210/cfg80211.c @@@ -162,8 -162,8 +162,8 @@@ int wil_cid_fill_sinfo(struct wil6210_p sinfo->tx_packets = stats->tx_packets; sinfo->tx_failed = stats->tx_errors; - if (test_bit(wil_status_fwconnected, &wil->status)) { + if (test_bit(wil_status_fwconnected, wil->status)) { - sinfo->filled |= STATION_INFO_SIGNAL; + sinfo->filled |= BIT(NL80211_STA_INFO_SIGNAL); sinfo->signal = reply.evt.sqi; } diff --cc drivers/net/wireless/ti/wlcore/main.c index e90fb781a6a1,a2133b1fd631..0a9d9a1b2d85 --- a/drivers/net/wireless/ti/wlcore/main.c +++ b/drivers/net/wireless/ti/wlcore/main.c @@@ -5650,21 -5371,15 +5651,21 @@@ static void wlcore_op_sta_rc_update(str u32 changed) { struct wl12xx_vif *wlvif = wl12xx_vif_to_data(vif); - struct wl1271 *wl = hw->priv; - wlcore_hw_sta_rc_update(wl, wlvif, sta, changed); + wl1271_debug(DEBUG_MAC80211, "mac80211 sta_rc_update"); + + if (!(changed & IEEE80211_RC_BW_CHANGED)) + return; + + /* this callback is atomic, so schedule a new work */ + wlvif->rc_update_bw = sta->bandwidth; + ieee80211_queue_work(hw, &wlvif->rc_update_work); } - static int wlcore_op_get_rssi(struct ieee80211_hw *hw, - struct ieee80211_vif *vif, - struct ieee80211_sta *sta, - s8 *rssi_dbm) + static void wlcore_op_sta_statistics(struct ieee80211_hw *hw, + struct ieee80211_vif *vif, + struct ieee80211_sta *sta, + struct station_info *sinfo) { struct wl1271 *wl = hw->priv; struct wl12xx_vif *wlvif = wl12xx_vif_to_data(vif); @@@ -5891,9 -5607,8 +5894,9 @@@ static const struct ieee80211_ops wl127 .change_chanctx = wlcore_op_change_chanctx, .assign_vif_chanctx = wlcore_op_assign_vif_chanctx, .unassign_vif_chanctx = wlcore_op_unassign_vif_chanctx, + .switch_vif_chanctx = wlcore_op_switch_vif_chanctx, .sta_rc_update = wlcore_op_sta_rc_update, - .get_rssi = wlcore_op_get_rssi, + .sta_statistics = wlcore_op_sta_statistics, CFG80211_TESTMODE_CMD(wl1271_tm_cmd) };