qcacmn: Add support to get fwr phymode for frequency
Currently, wifi-pos uses channel number to get the fwr phymode. For adding 6g support wifi-pos need to get the phymode from frequency instead of channel number As a part of fix, Add handler for getting phymode based on frequency CRs-Fixed: 2617903 Change-Id: I007edebe41bf5ca750a1262c85043f628dc9f89f
This commit is contained in:

committed by
nshrivas

orang tua
f63aaef3d3
melakukan
2250592dcd
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2017-2019 The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2017-2020 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
|
||||
@@ -350,6 +350,32 @@ QDF_STATUS wifi_pos_register_get_phy_mode_cb(
|
||||
return QDF_STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
QDF_STATUS wifi_pos_register_get_fw_phy_mode_for_freq_cb(
|
||||
struct wlan_objmgr_psoc *psoc,
|
||||
void (*handler)(uint32_t, uint32_t, uint32_t *))
|
||||
{
|
||||
struct wifi_pos_psoc_priv_obj *wifi_pos_psoc;
|
||||
|
||||
if (!psoc) {
|
||||
wifi_pos_err("psoc is null");
|
||||
return QDF_STATUS_E_NULL_VALUE;
|
||||
}
|
||||
|
||||
if (!handler) {
|
||||
wifi_pos_err("Null callback");
|
||||
return QDF_STATUS_E_NULL_VALUE;
|
||||
}
|
||||
wifi_pos_psoc = wifi_pos_get_psoc_priv_obj(psoc);
|
||||
if (!wifi_pos_psoc) {
|
||||
wifi_pos_err("wifi_pos priv obj is null");
|
||||
return QDF_STATUS_E_NULL_VALUE;
|
||||
}
|
||||
|
||||
wifi_pos_psoc->wifi_pos_get_fw_phy_mode_for_freq = handler;
|
||||
|
||||
return QDF_STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
QDF_STATUS wifi_pos_register_send_action(
|
||||
struct wlan_objmgr_psoc *psoc,
|
||||
void (*handler)(struct wlan_objmgr_psoc *psoc,
|
||||
|
@@ -304,6 +304,12 @@ struct wifi_pos_dma_rings_cfg {
|
||||
* @oem_6g_support_disable: oem target 6ghz support is disabled if set
|
||||
* @wifi_pos_req_handler: function pointer to handle TLV or non-TLV
|
||||
* @wifi_pos_send_rsp: function pointer to send msg to userspace APP
|
||||
* @wifi_pos_get_phy_mode: function pointer to get wlan phymode for given
|
||||
* channel, channel width
|
||||
* @wifi_pos_get_fw_phy_mode_for_freq: function pointer to get fw phymode
|
||||
* for given freq and channel width
|
||||
* @wifi_pos_send_action: function pointer to send registered action frames
|
||||
* to userspace APP
|
||||
*
|
||||
* wifi pos request messages
|
||||
* <----- fine_time_meas_cap (in bits) ----->
|
||||
@@ -344,6 +350,8 @@ struct wifi_pos_psoc_priv_obj {
|
||||
struct wifi_pos_req_msg *req);
|
||||
void (*wifi_pos_send_rsp)(uint32_t, uint32_t, uint32_t, uint8_t *);
|
||||
void (*wifi_pos_get_phy_mode)(uint8_t, uint32_t, uint32_t *);
|
||||
void (*wifi_pos_get_fw_phy_mode_for_freq)(uint32_t, uint32_t,
|
||||
uint32_t *);
|
||||
void (*wifi_pos_send_action)(struct wlan_objmgr_psoc *psoc,
|
||||
uint32_t oem_subtype, uint8_t *buf,
|
||||
uint32_t len);
|
||||
|
Reference in New Issue
Block a user