diff options
Diffstat (limited to 'package/kernel/mac80211/patches/brcm/325-v5.0-brcmfmac-support-STA-info-struct-v7.patch')
-rw-r--r-- | package/kernel/mac80211/patches/brcm/325-v5.0-brcmfmac-support-STA-info-struct-v7.patch | 80 |
1 files changed, 0 insertions, 80 deletions
diff --git a/package/kernel/mac80211/patches/brcm/325-v5.0-brcmfmac-support-STA-info-struct-v7.patch b/package/kernel/mac80211/patches/brcm/325-v5.0-brcmfmac-support-STA-info-struct-v7.patch deleted file mode 100644 index 8ff42462b0..0000000000 --- a/package/kernel/mac80211/patches/brcm/325-v5.0-brcmfmac-support-STA-info-struct-v7.patch +++ /dev/null @@ -1,80 +0,0 @@ -From 4282ff17e557d319e1b988fa4f582792cfaf6fff Mon Sep 17 00:00:00 2001 -From: Dan Haab <riproute@gmail.com> -Date: Fri, 9 Nov 2018 09:38:55 -0700 -Subject: [PATCH] brcmfmac: support STA info struct v7 -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -The newest firmwares provide STA info using v7 of the struct. As v7 -isn't backward compatible, a union is needed. - -Even though brcmfmac does not use any of the new info it's important to -provide the proper struct buffer. Without this change new firmwares will -fallback to the very limited v3 instead of something in between such as -v4. - -Signed-off-by: Dan Haab <dan.haab@luxul.com> -Reviewed-by: Rafał Miłecki <rafal@milecki.pl> -Reviewed-by: Arend van Spriel <arend.vanspriel@broadcom.com> -Signed-off-by: Kalle Valo <kvalo@codeaurora.org> ---- - .../broadcom/brcm80211/brcmfmac/fwil_types.h | 40 +++++++++++++++---- - 1 file changed, 33 insertions(+), 7 deletions(-) - ---- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwil_types.h -+++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/fwil_types.h -@@ -176,6 +176,8 @@ - - #define BRCMF_VHT_CAP_MCS_MAP_NSS_MAX 8 - -+#define BRCMF_HE_CAP_MCS_MAP_NSS_MAX 8 -+ - /* MAX_CHUNK_LEN is the maximum length for data passing to firmware in each - * ioctl. It is relatively small because firmware has small maximum size input - * playload restriction for ioctls. -@@ -601,13 +603,37 @@ struct brcmf_sta_info_le { - __le32 rx_pkts_retried; /* # rx with retry bit set */ - __le32 tx_rate_fallback; /* lowest fallback TX rate */ - -- /* Fields valid for ver >= 5 */ -- struct { -- __le32 count; /* # rates in this set */ -- u8 rates[BRCMF_MAXRATES_IN_SET]; /* rates in 500kbps units w/hi bit set if basic */ -- u8 mcs[BRCMF_MCSSET_LEN]; /* supported mcs index bit map */ -- __le16 vht_mcs[BRCMF_VHT_CAP_MCS_MAP_NSS_MAX]; /* supported mcs index bit map per nss */ -- } rateset_adv; -+ union { -+ struct { -+ struct { -+ __le32 count; /* # rates in this set */ -+ u8 rates[BRCMF_MAXRATES_IN_SET]; /* rates in 500kbps units w/hi bit set if basic */ -+ u8 mcs[BRCMF_MCSSET_LEN]; /* supported mcs index bit map */ -+ __le16 vht_mcs[BRCMF_VHT_CAP_MCS_MAP_NSS_MAX]; /* supported mcs index bit map per nss */ -+ } rateset_adv; -+ } v5; -+ -+ struct { -+ __le32 rx_dur_total; /* total user RX duration (estimated) */ -+ __le16 chanspec; /** chanspec this sta is on */ -+ __le16 pad_1; -+ struct { -+ __le16 version; /* version */ -+ __le16 len; /* length */ -+ __le32 count; /* # rates in this set */ -+ u8 rates[BRCMF_MAXRATES_IN_SET]; /* rates in 500kbps units w/hi bit set if basic */ -+ u8 mcs[BRCMF_MCSSET_LEN]; /* supported mcs index bit map */ -+ __le16 vht_mcs[BRCMF_VHT_CAP_MCS_MAP_NSS_MAX]; /* supported mcs index bit map per nss */ -+ __le16 he_mcs[BRCMF_HE_CAP_MCS_MAP_NSS_MAX]; /* supported he mcs index bit map per nss */ -+ } rateset_adv; /* rateset along with mcs index bitmap */ -+ __le16 wpauth; /* authentication type */ -+ u8 algo; /* crypto algorithm */ -+ u8 pad_2; -+ __le32 tx_rspec; /* Rate of last successful tx frame */ -+ __le32 rx_rspec; /* Rate of last successful rx frame */ -+ __le32 wnm_cap; /* wnm capabilities */ -+ } v7; -+ }; - }; - - struct brcmf_chanspec_list { |