qcacld-3.0: Introduce 11ax capabilities for tdls

Introduce HE cap IEs in addstareq. Also, Add
HE capabilities in frames for TDLS Setup Req,
Setup Rsp, Discovery Rsp. Add He Operations
in TDLS setup Confirm.

Implement APIs under feature WLAN_FEATURE_11AX
which will be used to:
1) Fill HE capabilities in TDLS Discovery Response,
   TDLS Setup Request, TDLS Setup Response.
2) Fill HE operations in TDLS Setup Confirm.
3) Convert he_capa capabilities from station
   parameters to tdls tDot11fIEhe_cap type.
4) Set Chan width based on session, peer
   capabilities.

Change-Id: If36b1a3c3eed0e6026043494a097673f9d74b580
CRs-Fixed: 2883443
这个提交包含在:
Utkarsh Bhatnagar
2021-02-23 19:15:03 +05:30
提交者 snandini
父节点 b90ca5f670
当前提交 fb5ff5a539
修改 5 个文件,包含 393 行新增17 行删除

查看文件

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2017-2020 The Linux Foundation. All rights reserved.
* Copyright (c) 2017-2021 The Linux Foundation. All rights reserved.
*
* Permission to use, copy, modify, and/or distribute this software for
* any purpose with or without fee is hereby granted, provided that the
@@ -761,6 +761,21 @@ struct vhtcap {
struct vhtmcsinfo supp_mcs;
};
/**
* struct hecap - HE capabilities
*
* This structure is the "HE capabilities element" as
* described in 802.11ax D4.0 section 9.4.2.232.3
* @mac_cap_info: MAC capability info
* @phycap_info: Phy Capability info
*/
#ifdef WLAN_FEATURE_11AX
struct hecap {
uint8_t mac_cap_info[6];
uint8_t phycap_info[11];
};
#endif
struct tdls_update_peer_params {
uint8_t peer_addr[QDF_MAC_ADDR_SIZE];
uint32_t peer_type;
@@ -773,6 +788,10 @@ struct tdls_update_peer_params {
struct htcap_cmn_ie ht_cap;
uint8_t vhtcap_present;
struct vhtcap vht_cap;
#ifdef WLAN_FEATURE_11AX
uint8_t he_cap_len;
struct hecap he_cap;
#endif
uint8_t uapsd_queues;
uint8_t max_sp;
uint8_t supported_channels_len;
@@ -1295,6 +1314,8 @@ struct tdls_send_mgmt_request {
* @ht_cap: ht capability
* @vhtcap_present: vht capability present
* @vht_cap: vht capability
* @he_cap_len: he capability length
* @he_cap: he capability
* @uapsd_queues: uapsd queue as sSirMacQosInfoStation
* @max_sp: maximum service period
*/
@@ -1314,6 +1335,10 @@ struct tdls_add_sta_req {
struct htcap_cmn_ie ht_cap;
uint8_t vhtcap_present;
struct vhtcap vht_cap;
#ifdef WLAN_FEATURE_11AX
uint8_t he_cap_len;
struct hecap he_cap;
#endif
uint8_t uapsd_queues;
uint8_t max_sp;
bool is_pmf;