ath11k: Add support for STA to handle beacon miss
PATCH 1/1 ath11k: Add support for STA to handle beacon miss
When AP goes down without any indication to STA, firmware detects missing beacon, and sends wmi roam event with reason BEACON_MISS to the host.
Added support for STA mode to trigger disassociation from AP, on receiving this event from firmware.
Tested-on: IPQ8074 hw2.0 AHB WLAN.HK.2.4.0.1-01717-QCAHKSWPL_SILICONZ-1
Tested-on: QCA6390 hw2.0 PCI WLAN.HST.1.0.1-01740-QCAHSTSWPLZ_V2_TO_X86-1
--- drivers/net/wireless/ath/ath11k/core.h | 2 + drivers/net/wireless/ath/ath11k/mac.c | 79 +++++++++++++++++++++++++++++++--- drivers/net/wireless/ath/ath11k/mac.h | 2 + drivers/net/wireless/ath/ath11k/wmi.c | 11 ++--- 4 files changed, 81 insertions(+), 13 deletions(-)
drivers/net/wireless/ath/ath11k/core.h +2 -0
@@ -34,6 +34,7 @@#define ATH11K_PRB_RSP_DROP_THRESHOLD ((ATH11K_TX_MGMT_TARGET_MAX_SUPPORT_WMI * 3) / 4)#define ATH11K_INVALID_HW_MAC_ID 0xFF +#define ATH11K_CONNECTION_LOSS_HZ (3 * HZ)extern unsigned int ath11k_frame_mode;
@@ -235,6 +236,7 @@ struct ath11k_vif {u32 aid;u8 bssid[ETH_ALEN ];struct cfg80211_bitrate_mask bitrate_mask; +struct delayed_work connection_loss_work;int num_legacy_stations;int rtscts_prot_mode;int txpower;
drivers/net/wireless/ath/ath11k/mac.c +74 -5
103 lines not on this page · raw message
drivers/net/wireless/ath/ath11k/mac.h +2 -0
@@ -150,4 +150,6 @@ int ath11k_mac_tx_mgmt_pending_free(int buf_id, void *skb, void *ctx);u8 ath11k_mac_bw_to_mac80211_bw (u8 bw);enum ath11k_supported_bw ath11k_mac_mac80211_bw_to_ath11k_bw (enum rate_info_bw bw);enum hal_encrypt_type ath11k_dp_tx_get_encrypt_type (u32 cipher); +void ath11k_mac_handle_beacon (struct ath11k *ar,struct sk_buff *skb); +void ath11k_mac_handle_beacon_miss (struct ath11k *ar,u32 vdev_id);#endif
drivers/net/wireless/ath/ath11k/wmi.c +3 -8
@@ -6171,10 +6171,8 @@ static void ath11k_mgmt_rx_event(struct ath11k_base *ab, struct sk_buff *skb) } } -/* TODO: Pending handle beacon implementation -*if (ieee80211_is_beacon(hdr->frame_control)) -* ath11k_mac_handle_beacon(ar, skb); -*/ +if (ieee80211_is_beacon (hdr->frame_control)) +ath11k_mac_handle_beacon (ar, skb); ath11k_dbg(ab, ATH11K_DBG_MGMT, "event mgmt rx skb %pK len %d ftype %02x stype %02x\n",
@@ -6393,10 +6391,7 @@ static void ath11k_roam_event(struct ath11k_base *ab, struct sk_buff *skb)switch (roam_ev.reason) {case WMI_ROAM_REASON_BEACON_MISS : -/* TODO: Pending beacon miss and connection_loss_work -* implementation -* ath11k_mac_handle_beacon_miss(ar, vdev_id); -*/ +ath11k_mac_handle_beacon_miss (ar, roam_ev.vdev_id);break ;case WMI_ROAM_REASON_BETTER_AP :case WMI_ROAM_REASON_LOW_RSSI :
Signature · 7 lines
2.7.4 -- ath11k mailing list [email protected] http://lists.infradead.org/mailman/listinfo/ath11k
Quoted 4 lines · Lavanya Suresh
When AP goes down without any indication to STA, firmware detects missing beacon, and sends wmi roam event with reason
BEACON_MISSto the host.
Quoted 8 lines
Added support for STA mode to trigger disassociation from AP, on receiving this event from firmware.
Tested-on: IPQ8074 hw2.0 AHB WLAN.HK.2.4.0.1-01717-QCAHKSWPL_SILICONZ-1
Tested-on: QCA6390 hw2.0 PCI WLAN.HST.1.0.1-01740-QCAHSTSWPLZ_V2_TO_X86-1Signed-off-by Lavanya Suresh <[email protected]>Signed-off-by Kalle Valo <[email protected]>
Patch applied to ath-next branch of ath.git, thanks.
26f697923729 ath11k: Add support for STA to handle beacon miss
Signature · 3 lines
https://patchwork.kernel.org/project/linux-wireless/patch/[email protected]/ https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches
Quoted 4 lines · Lavanya Suresh
When AP goes down without any indication to STA, firmware detects missing beacon, and sends wmi roam event with reason
BEACON_MISSto the host.
Quoted 8 lines
Added support for STA mode to trigger disassociation from AP, on receiving this event from firmware.
Tested-on: IPQ8074 hw2.0 AHB WLAN.HK.2.4.0.1-01717-QCAHKSWPL_SILICONZ-1
Tested-on: QCA6390 hw2.0 PCI WLAN.HST.1.0.1-01740-QCAHSTSWPLZ_V2_TO_X86-1Signed-off-by Lavanya Suresh <[email protected]>Signed-off-by Kalle Valo <[email protected]>
Patch applied to ath-next branch of ath.git, thanks.
26f697923729 ath11k: Add support for STA to handle beacon miss
Signature · 9 lines
https://patchwork.kernel.org/project/linux-wireless/patch/[email protected]/ https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches -- ath11k mailing list [email protected] http://lists.infradead.org/mailman/listinfo/ath11k