qcacld-3.0: Add APIs to update 11be target capabilities

As part of 11be enhancements, firmware will send the 11be hardware
capabilities that are supported by the device. Add new HDD APIs to
store these 11be capabilities in the host driver.

Change-Id: Ib3baa41ea3d8ef2ce49b88e4b48d8bc29556cd66
CRs-Fixed: 2908045
此提交包含在:
bings
2021-02-01 23:22:53 +05:30
提交者 snandini
父節點 8b9c2b1322
當前提交 9c55e8a7d9
共有 3 個檔案被更改,包括 92 行新增0 行删除

5
Kbuild
查看文件

@@ -241,6 +241,10 @@ ifeq ($(CONFIG_WLAN_FEATURE_11AX), y)
HDD_OBJS += $(HDD_SRC_DIR)/wlan_hdd_he.o
endif
ifeq ($(CONFIG_WLAN_FEATURE_11BE), y)
HDD_OBJS += $(HDD_SRC_DIR)/wlan_hdd_eht.o
endif
ifeq ($(CONFIG_WLAN_FEATURE_TWT), y)
HDD_OBJS += $(HDD_SRC_DIR)/wlan_hdd_twt.o
endif
@@ -3451,6 +3455,7 @@ cppflags-$(CONFIG_RXDMA_ERR_PKT_DROP) += -DRXDMA_ERR_PKT_DROP
cppflags-$(CONFIG_MAX_ALLOC_PAGE_SIZE) += -DMAX_ALLOC_PAGE_SIZE
cppflags-$(CONFIG_DELIVERY_TO_STACK_STATUS_CHECK) += -DDELIVERY_TO_STACK_STATUS_CHECK
cppflags-$(CONFIG_WLAN_TRACE_HIDE_MAC_ADDRESS) += -DWLAN_TRACE_HIDE_MAC_ADDRESS
cppflags-$(CONFIG_WLAN_FEATURE_11BE) += -DWLAN_FEATURE_11BE
cppflags-$(CONFIG_LITHIUM) += -DFIX_TXDMA_LIMITATION
cppflags-$(CONFIG_LITHIUM) += -DFEATURE_AST

55
core/hdd/inc/wlan_hdd_eht.h 一般檔案
查看文件

@@ -0,0 +1,55 @@
/*
* Copyright (c) 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 above
* copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
* WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
* ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
* WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/**
* DOC : wlan_hdd_eht.h
*
* WLAN Host Device Driver file for 802.11be (Extremely High Throughput)
* support.
*
*/
#if !defined(WLAN_HDD_EHT_H)
#define WLAN_HDD_EHT_H
#ifdef WLAN_FEATURE_11BE
/**
* hdd_update_tgt_eht_cap() - Update EHT related capabilities
* @hdd_ctx: HDD context
* @eht_cap: Target EHT capabilities
*
* This function updates WNI CFG with Target capabilities received as part of
* Default values present in WNI CFG are the values supported by FW/HW.
* INI should be introduced if user control is required to control the value.
*
* Return: None
*/
void hdd_update_tgt_eht_cap(struct hdd_context *hdd_ctx,
struct wma_tgt_cfg *cfg);
/**
* hdd_update_eht_cap_in_cfg() - update EHT cap in global CFG
* @hdd_ctx: pointer to hdd context
*
* This API will update the EHT config in CFG after taking intersection
* of INI and firmware capabilities provided reading CFG
*
* Return: 0 on success and errno on failure
*/
int hdd_update_eht_cap_in_cfg(struct hdd_context *hdd_ctx);
#endif
#endif /* if !defined(WLAN_HDD_EHT_H)*/

32
core/hdd/src/wlan_hdd_eht.c 一般檔案
查看文件

@@ -0,0 +1,32 @@
/*
* Copyright (c) 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 above
* copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
* WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
* ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
* WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/**
* DOC : wlan_hdd_eht.c
*
* WLAN Host Device Driver file for 802.11be (Extremely High Throughput)
* support.
*
*/
#include "wlan_hdd_main.h"
#include "wlan_hdd_eht.h"
#include "wlan_mlme_ucfg_api.h"
void hdd_update_tgt_eht_cap(struct hdd_context *hdd_ctx,
struct wma_tgt_cfg *cfg)
{
}