wlan-ap-Telecominfraproject/feeds/qca/hostapd/patches/r04-004-hostapd-Update-EHT-capabilities-IE-as-per-draft-3.0.patch
John Crispin 008ca9618d
Some checks failed
Build OpenWrt/uCentral images / build (cig_wf186h) (push) Has been cancelled
Build OpenWrt/uCentral images / build (cig_wf186w) (push) Has been cancelled
Build OpenWrt/uCentral images / build (cig_wf188n) (push) Has been cancelled
Build OpenWrt/uCentral images / build (cig_wf189) (push) Has been cancelled
Build OpenWrt/uCentral images / build (cig_wf196) (push) Has been cancelled
Build OpenWrt/uCentral images / build (cybertan_eww631-a1) (push) Has been cancelled
Build OpenWrt/uCentral images / build (cybertan_eww631-b1) (push) Has been cancelled
Build OpenWrt/uCentral images / build (edgecore_eap101) (push) Has been cancelled
Build OpenWrt/uCentral images / build (edgecore_eap102) (push) Has been cancelled
Build OpenWrt/uCentral images / build (edgecore_eap104) (push) Has been cancelled
Build OpenWrt/uCentral images / build (edgecore_eap105) (push) Has been cancelled
Build OpenWrt/uCentral images / build (edgecore_eap111) (push) Has been cancelled
Build OpenWrt/uCentral images / build (edgecore_eap112) (push) Has been cancelled
Build OpenWrt/uCentral images / build (edgecore_oap101) (push) Has been cancelled
Build OpenWrt/uCentral images / build (edgecore_oap101-6e) (push) Has been cancelled
Build OpenWrt/uCentral images / build (edgecore_oap101e) (push) Has been cancelled
Build OpenWrt/uCentral images / build (edgecore_oap101e-6e) (push) Has been cancelled
Build OpenWrt/uCentral images / build (hfcl_ion4x) (push) Has been cancelled
Build OpenWrt/uCentral images / build (hfcl_ion4x_2) (push) Has been cancelled
Build OpenWrt/uCentral images / build (hfcl_ion4x_3) (push) Has been cancelled
Build OpenWrt/uCentral images / build (hfcl_ion4x_w) (push) Has been cancelled
Build OpenWrt/uCentral images / build (hfcl_ion4xe) (push) Has been cancelled
Build OpenWrt/uCentral images / build (hfcl_ion4xi) (push) Has been cancelled
Build OpenWrt/uCentral images / build (hfcl_ion4xi_w) (push) Has been cancelled
Build OpenWrt/uCentral images / build (indio_um-305ax) (push) Has been cancelled
Build OpenWrt/uCentral images / build (sercomm_ap72tip) (push) Has been cancelled
Build OpenWrt/uCentral images / build (sonicfi_rap630c-311g) (push) Has been cancelled
Build OpenWrt/uCentral images / build (sonicfi_rap630w-211g) (push) Has been cancelled
Build OpenWrt/uCentral images / build (sonicfi_rap630w-311g) (push) Has been cancelled
Build OpenWrt/uCentral images / build (udaya_a6-id2) (push) Has been cancelled
Build OpenWrt/uCentral images / build (udaya_a6-od2) (push) Has been cancelled
Build OpenWrt/uCentral images / build (wallys_dr5018) (push) Has been cancelled
Build OpenWrt/uCentral images / build (wallys_dr6018) (push) Has been cancelled
Build OpenWrt/uCentral images / build (wallys_dr6018-v4) (push) Has been cancelled
Build OpenWrt/uCentral images / build (yuncore_ax820) (push) Has been cancelled
Build OpenWrt/uCentral images / build (yuncore_ax840) (push) Has been cancelled
Build OpenWrt/uCentral images / build (yuncore_fap640) (push) Has been cancelled
Build OpenWrt/uCentral images / build (yuncore_fap650) (push) Has been cancelled
Build OpenWrt/uCentral images / build (yuncore_fap655) (push) Has been cancelled
Build OpenWrt/uCentral images / trigger-testing (push) Has been cancelled
Build OpenWrt/uCentral images / create-x64_vm-ami (push) Has been cancelled
ipq95xx: import ath12.4-cs kernel and drivers
Signed-off-by: John Crispin <john@phrozen.org>
2024-10-20 09:25:13 +02:00

84 lines
3.2 KiB
Diff

From 62051edd3806db6265e2ec3d5b8192abbba36905 Mon Sep 17 00:00:00 2001
From: Yuvarani V <quic_yuvarani@quicinc.com>
Date: Thu, 23 Nov 2023 13:05:03 +0530
Subject: [PATCH] hostapd: Update EHT capabilities IE as per draft 3.0
Update EHT capabilities IE definitions as per 11be draft 3.0
specification.
Add the below EHT capabilities IE definitions,
EHT MAC Capabilities(Draft 3.1 - 9.4.2.313.2):
Two BQRs Support - B11(1 Bit)
EHT Link Adaptation Support - B12,B13(2 Bits)
EHT PHY Capabilities(Draft 3.1 - 9.4.2.313.3):
20 MHz-Only Limited Capabilities Support - B66(1 Bit)
20 MHz-Only Triggered MU Beamforming Full BW Feedback And
DL MU-MIMO - B67(1 Bit)
20 MHz-Only M-RU Support - B68(1 Bit)
Signed-off-by: Yuvarani V <quic_yuvarani@quicinc.com>
---
src/ap/ap_config.h | 3 +++
src/ap/ieee802_11_eht.c | 12 ++++++++++++
src/common/ieee802_11_defs.h | 8 ++++++++
3 files changed, 23 insertions(+)
--- a/src/ap/ap_config.h
+++ b/src/ap/ap_config.h
@@ -1012,6 +1012,9 @@ struct eht_phy_capabilities_info {
bool non_ofdma_ulmumimo_80mhz;
bool non_ofdma_ulmumimo_160mhz;
bool non_ofdma_ulmumimo_320mhz;
+ bool caps_20mhz_only;
+ bool trigger_mubf_fl_bw_fb_dlmumimo_20mhz_only;
+ bool mru_supp_20mhz_only;
};
/**
--- a/src/ap/ieee802_11_eht.c
+++ b/src/ap/ieee802_11_eht.c
@@ -183,6 +183,18 @@ u8 * hostapd_eid_eht_capab(struct hostap
cap->phy_cap[EHT_PHYCAP_MU_CAPABILITY_IDX] &=
~EHT_PHYCAP_NON_OFDMA_UL_MU_MIMO_320MHZ;
+ if (!hapd->iface->conf->eht_phy_capab.caps_20mhz_only)
+ cap->phy_cap[EHT_PHYCAP_20MHZ_ONLY_CAPS_IDX] &=
+ ~EHT_PHYCAP_20MHZ_ONLY_CAPS;
+
+ if (!hapd->iface->conf->eht_phy_capab.trigger_mubf_fl_bw_fb_dlmumimo_20mhz_only)
+ cap->phy_cap[EHT_PHYCAP_20MHZ_ONLY_TRIGGER_MUBF_FL_BW_FB_DLMUMIMO_IDX] &=
+ ~EHT_PHYCAP_20MHZ_ONLY_TRIGGER_MUBF_FL_BW_FB_DLMUMIMO;
+
+ if (!hapd->iface->conf->eht_phy_capab.mru_supp_20mhz_only)
+ cap->phy_cap[EHT_PHYCAP_20MHZ_ONLY_MRU_SUPP_IDX] &=
+ ~EHT_PHYCAP_20MHZ_ONLY_MRU_SUPP;
+
pos = cap->optional;
mcs_nss_len = ieee80211_eht_mcs_set_size(mode->mode,
--- a/src/common/ieee802_11_defs.h
+++ b/src/common/ieee802_11_defs.h
@@ -2559,6 +2559,8 @@ struct ieee80211_eht_operation {
#define EHT_MACCAP_MAX_MPDU_LEN_7991 BIT(6)
#define EHT_MACCAP_MAX_MPDU_LEN_11454 BIT(7)
#define EHT_MACCAP_MAX_AMPDU_LEN_EXP_EXT BIT(8)
+#define EHT_MACCAP_TWO_BQRS_SUPP BIT(11)
+#define EHT_MACCAP_EHT_LINK_ADAPTATION_SUPP (BIT(12) | BIT(13))
/* Figure 9-1002ag: EHT PHY Capabilities Information field format
* _IDX indicates the octet index within the field */
@@ -2585,6 +2587,12 @@ struct ieee80211_eht_operation {
#define EHT_PHYCAP_MU_BEAMFORMER_MASK (EHT_PHYCAP_MU_BEAMFORMER_80MHZ | \
EHT_PHYCAP_MU_BEAMFORMER_160MHZ | \
EHT_PHYCAP_MU_BEAMFORMER_320MHZ)
+#define EHT_PHYCAP_20MHZ_ONLY_CAPS_IDX 8
+#define EHT_PHYCAP_20MHZ_ONLY_CAPS ((u8) BIT(2))
+#define EHT_PHYCAP_20MHZ_ONLY_TRIGGER_MUBF_FL_BW_FB_DLMUMIMO_IDX 8
+#define EHT_PHYCAP_20MHZ_ONLY_TRIGGER_MUBF_FL_BW_FB_DLMUMIMO ((u8) BIT(3))
+#define EHT_PHYCAP_20MHZ_ONLY_MRU_SUPP_IDX 8
+#define EHT_PHYCAP_20MHZ_ONLY_MRU_SUPP ((u8) BIT(4))
/* Figure 9-1002ah: Supported EHT-MCS and NSS Set field format */
#define EHT_PHYCAP_MCS_NSS_LEN_20MHZ_ONLY 4