qcacld-3.0: Relocate thermal info cfg items
Relocate thermal info config items to FW offload component. Change-Id: If03507a44041b53aa81837f687914931e8a05ec8 CRs-Fixed: 2316595
This commit is contained in:
@@ -61,12 +61,36 @@ struct wlan_fwol_coex_config {
|
|||||||
int16_t bt_interference_high_ul;
|
int16_t bt_interference_high_ul;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/*
|
||||||
|
* struct wlan_fwol_thermal_temp - Thermal temperature config items
|
||||||
|
* thermal_temp_min_level0: Thermal temperature minimum level 0
|
||||||
|
* thermal_temp_max_level0: Thermal temperature maximum level 0
|
||||||
|
* thermal_temp_min_level1: Thermal temperature minimum level 1
|
||||||
|
* thermal_temp_max_level1: Thermal temperature maximum level 1
|
||||||
|
* thermal_temp_min_level2: Thermal temperature minimum level 2
|
||||||
|
* thermal_temp_max_level2: Thermal temperature maximum level 2
|
||||||
|
* thermal_temp_min_level3: Thermal temperature minimum level 3
|
||||||
|
* thermal_temp_max_level3: Thermal temperature maximum level 3
|
||||||
|
*/
|
||||||
|
struct wlan_fwol_thermal_temp {
|
||||||
|
uint16_t thermal_temp_min_level0;
|
||||||
|
uint16_t thermal_temp_max_level0;
|
||||||
|
uint16_t thermal_temp_min_level1;
|
||||||
|
uint16_t thermal_temp_max_level1;
|
||||||
|
uint16_t thermal_temp_min_level2;
|
||||||
|
uint16_t thermal_temp_max_level2;
|
||||||
|
uint16_t thermal_temp_min_level3;
|
||||||
|
uint16_t thermal_temp_max_level3;
|
||||||
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* struct wlan_fwol_cfg - fwol config items
|
* struct wlan_fwol_cfg - fwol config items
|
||||||
* coex_config: coex config items
|
* coex_config: coex config items
|
||||||
|
* thermal_temp_cfg: Thermal temperature related config items
|
||||||
*/
|
*/
|
||||||
struct wlan_fwol_cfg {
|
struct wlan_fwol_cfg {
|
||||||
struct wlan_fwol_coex_config coex_config;
|
struct wlan_fwol_coex_config coex_config;
|
||||||
|
struct wlan_fwol_thermal_temp thermal_temp_cfg;
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -54,6 +54,28 @@ fwol_update_coex_config_in_cfg(struct wlan_objmgr_psoc *psoc,
|
|||||||
cfg_get(psoc, CFG_BT_INTERFERENCE_HIGH_UL);
|
cfg_get(psoc, CFG_BT_INTERFERENCE_HIGH_UL);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
fwol_update_thermal_temp_in_cfg(struct wlan_objmgr_psoc *psoc,
|
||||||
|
struct wlan_fwol_thermal_temp *thermal_temp)
|
||||||
|
{
|
||||||
|
thermal_temp->thermal_temp_min_level0 =
|
||||||
|
cfg_get(psoc, CFG_THERMAL_TEMP_MIN_LEVEL0);
|
||||||
|
thermal_temp->thermal_temp_max_level0 =
|
||||||
|
cfg_get(psoc, CFG_THERMAL_TEMP_MAX_LEVEL0);
|
||||||
|
thermal_temp->thermal_temp_min_level1 =
|
||||||
|
cfg_get(psoc, CFG_THERMAL_TEMP_MIN_LEVEL1);
|
||||||
|
thermal_temp->thermal_temp_max_level1 =
|
||||||
|
cfg_get(psoc, CFG_THERMAL_TEMP_MAX_LEVEL1);
|
||||||
|
thermal_temp->thermal_temp_min_level2 =
|
||||||
|
cfg_get(psoc, CFG_THERMAL_TEMP_MIN_LEVEL2);
|
||||||
|
thermal_temp->thermal_temp_max_level2 =
|
||||||
|
cfg_get(psoc, CFG_THERMAL_TEMP_MAX_LEVEL2);
|
||||||
|
thermal_temp->thermal_temp_min_level3 =
|
||||||
|
cfg_get(psoc, CFG_THERMAL_TEMP_MIN_LEVEL3);
|
||||||
|
thermal_temp->thermal_temp_max_level3 =
|
||||||
|
cfg_get(psoc, CFG_THERMAL_TEMP_MAX_LEVEL3);
|
||||||
|
}
|
||||||
|
|
||||||
QDF_STATUS fwol_cfg_on_psoc_enable(struct wlan_objmgr_psoc *psoc)
|
QDF_STATUS fwol_cfg_on_psoc_enable(struct wlan_objmgr_psoc *psoc)
|
||||||
{
|
{
|
||||||
QDF_STATUS status = QDF_STATUS_SUCCESS;
|
QDF_STATUS status = QDF_STATUS_SUCCESS;
|
||||||
@@ -69,6 +91,7 @@ QDF_STATUS fwol_cfg_on_psoc_enable(struct wlan_objmgr_psoc *psoc)
|
|||||||
fwol_cfg = &fwol_obj->cfg;
|
fwol_cfg = &fwol_obj->cfg;
|
||||||
|
|
||||||
fwol_update_coex_config_in_cfg(psoc, &fwol_cfg->coex_config);
|
fwol_update_coex_config_in_cfg(psoc, &fwol_cfg->coex_config);
|
||||||
|
fwol_update_thermal_temp_in_cfg(psoc, &fwol_cfg->thermal_temp_cfg);
|
||||||
|
|
||||||
return status;
|
return status;
|
||||||
}
|
}
|
||||||
|
@@ -24,9 +24,11 @@
|
|||||||
#include "qdf_types.h"
|
#include "qdf_types.h"
|
||||||
|
|
||||||
#include "cfg_coex.h"
|
#include "cfg_coex.h"
|
||||||
|
#include "cfg_thermal_temp.h"
|
||||||
|
|
||||||
#define CFG_FWOL_ALL \
|
#define CFG_FWOL_ALL \
|
||||||
CFG_COEX_ALL
|
CFG_COEX_ALL \
|
||||||
|
CFG_THERMAL_TEMP_ALL
|
||||||
|
|
||||||
#endif /* __CFG_FWOL_H */
|
#endif /* __CFG_FWOL_H */
|
||||||
|
|
||||||
|
101
components/fw_offload/dispatcher/inc/cfg_thermal_temp.h
Normal file
101
components/fw_offload/dispatcher/inc/cfg_thermal_temp.h
Normal file
@@ -0,0 +1,101 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2012-2018 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: This file contains centralized definitions of converged configuration.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef __CFG_THERMAL_TEMP_H
|
||||||
|
#define __CFG_THERMAL_TEMP_H
|
||||||
|
|
||||||
|
#define CFG_THERMAL_TEMP_MIN_LEVEL0 CFG_INI_UINT( \
|
||||||
|
"gThermalTempMinLevel0", \
|
||||||
|
0, \
|
||||||
|
1000, \
|
||||||
|
0, \
|
||||||
|
CFG_VALUE_OR_DEFAULT, \
|
||||||
|
"Thermal Temp Min Level0")
|
||||||
|
|
||||||
|
#define CFG_THERMAL_TEMP_MAX_LEVEL0 CFG_INI_UINT( \
|
||||||
|
"gThermalTempMaxLevel0", \
|
||||||
|
0, \
|
||||||
|
1000, \
|
||||||
|
90, \
|
||||||
|
CFG_VALUE_OR_DEFAULT, \
|
||||||
|
"Thermal Temp Max Level0")
|
||||||
|
|
||||||
|
#define CFG_THERMAL_TEMP_MIN_LEVEL1 CFG_INI_UINT( \
|
||||||
|
"gThermalTempMinLevel1", \
|
||||||
|
0, \
|
||||||
|
1000, \
|
||||||
|
70, \
|
||||||
|
CFG_VALUE_OR_DEFAULT, \
|
||||||
|
"Thermal Temp Min Level1")
|
||||||
|
|
||||||
|
#define CFG_THERMAL_TEMP_MAX_LEVEL1 CFG_INI_UINT( \
|
||||||
|
"gThermalTempMaxLevel1", \
|
||||||
|
0, \
|
||||||
|
1000, \
|
||||||
|
110, \
|
||||||
|
CFG_VALUE_OR_DEFAULT, \
|
||||||
|
"Thermal Temp Max Level1")
|
||||||
|
|
||||||
|
#define CFG_THERMAL_TEMP_MIN_LEVEL2 CFG_INI_UINT( \
|
||||||
|
"gThermalTempMinLevel2", \
|
||||||
|
0, \
|
||||||
|
1000, \
|
||||||
|
90, \
|
||||||
|
CFG_VALUE_OR_DEFAULT, \
|
||||||
|
"Thermal Temp Min Level2")
|
||||||
|
|
||||||
|
#define CFG_THERMAL_TEMP_MAX_LEVEL2 CFG_INI_UINT( \
|
||||||
|
"gThermalTempMaxLevel2", \
|
||||||
|
0, \
|
||||||
|
1000, \
|
||||||
|
125, \
|
||||||
|
CFG_VALUE_OR_DEFAULT, \
|
||||||
|
"Thermal Temp Max Level2")
|
||||||
|
|
||||||
|
#define CFG_THERMAL_TEMP_MIN_LEVEL3 CFG_INI_UINT( \
|
||||||
|
"gThermalTempMinLevel3", \
|
||||||
|
0, \
|
||||||
|
1000, \
|
||||||
|
110, \
|
||||||
|
CFG_VALUE_OR_DEFAULT, \
|
||||||
|
"Thermal Temp Min Level3")
|
||||||
|
|
||||||
|
#define CFG_THERMAL_TEMP_MAX_LEVEL3 CFG_INI_UINT( \
|
||||||
|
"gThermalTempMaxLevel3", \
|
||||||
|
0, \
|
||||||
|
1000, \
|
||||||
|
0, \
|
||||||
|
CFG_VALUE_OR_DEFAULT, \
|
||||||
|
"Thermal Temp Max Level3")
|
||||||
|
|
||||||
|
#define CFG_THERMAL_TEMP_ALL \
|
||||||
|
CFG(CFG_THERMAL_TEMP_MIN_LEVEL0) \
|
||||||
|
CFG(CFG_THERMAL_TEMP_MAX_LEVEL0) \
|
||||||
|
CFG(CFG_THERMAL_TEMP_MIN_LEVEL1) \
|
||||||
|
CFG(CFG_THERMAL_TEMP_MAX_LEVEL1) \
|
||||||
|
CFG(CFG_THERMAL_TEMP_MIN_LEVEL2) \
|
||||||
|
CFG(CFG_THERMAL_TEMP_MAX_LEVEL2) \
|
||||||
|
CFG(CFG_THERMAL_TEMP_MIN_LEVEL3) \
|
||||||
|
CFG(CFG_THERMAL_TEMP_MAX_LEVEL3) \
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
@@ -25,6 +25,7 @@
|
|||||||
#include <wlan_objmgr_psoc_obj.h>
|
#include <wlan_objmgr_psoc_obj.h>
|
||||||
#include <wlan_objmgr_global_obj.h>
|
#include <wlan_objmgr_global_obj.h>
|
||||||
#include <wlan_cmn.h>
|
#include <wlan_cmn.h>
|
||||||
|
#include "wlan_fw_offload_main.h"
|
||||||
|
|
||||||
#include "wlan_fw_offload_main.h"
|
#include "wlan_fw_offload_main.h"
|
||||||
|
|
||||||
@@ -77,4 +78,15 @@ QDF_STATUS
|
|||||||
ucfg_fwol_get_coex_config_params(struct wlan_objmgr_psoc *psoc,
|
ucfg_fwol_get_coex_config_params(struct wlan_objmgr_psoc *psoc,
|
||||||
struct wlan_fwol_coex_config *coex_config);
|
struct wlan_fwol_coex_config *coex_config);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* ucfg_fwol_get_thermal_temp() - Get thermal temperature config params
|
||||||
|
* @psoc: Pointer to psoc object
|
||||||
|
* @thermal_temp: Pointer to struct wlan_fwol_thermal_temp
|
||||||
|
*
|
||||||
|
* Return: QDF Status
|
||||||
|
*/
|
||||||
|
QDF_STATUS
|
||||||
|
ucfg_fwol_get_thermal_temp(struct wlan_objmgr_psoc *psoc,
|
||||||
|
struct wlan_fwol_thermal_temp *thermal_temp);
|
||||||
|
|
||||||
#endif /* _WLAN_FWOL_UCFG_API_H_ */
|
#endif /* _WLAN_FWOL_UCFG_API_H_ */
|
||||||
|
@@ -165,3 +165,20 @@ ucfg_fwol_get_coex_config_params(struct wlan_objmgr_psoc *psoc,
|
|||||||
|
|
||||||
return QDF_STATUS_SUCCESS;
|
return QDF_STATUS_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
QDF_STATUS
|
||||||
|
ucfg_fwol_get_thermal_temp(struct wlan_objmgr_psoc *psoc,
|
||||||
|
struct wlan_fwol_thermal_temp *thermal_info)
|
||||||
|
{
|
||||||
|
struct wlan_fwol_psoc_obj *fwol_obj;
|
||||||
|
|
||||||
|
fwol_obj = fwol_get_psoc_obj(psoc);
|
||||||
|
if (!fwol_obj) {
|
||||||
|
fwol_err("Failed to get fwol obj");
|
||||||
|
return QDF_STATUS_E_FAILURE;
|
||||||
|
}
|
||||||
|
|
||||||
|
*thermal_info = fwol_obj->cfg.thermal_temp_cfg;
|
||||||
|
|
||||||
|
return QDF_STATUS_SUCCESS;
|
||||||
|
}
|
||||||
|
@@ -5081,46 +5081,6 @@ enum hdd_link_speed_rpt_type {
|
|||||||
#define CFG_THROTTLE_DUTY_CYCLE_LEVEL3_MAX (100)
|
#define CFG_THROTTLE_DUTY_CYCLE_LEVEL3_MAX (100)
|
||||||
#define CFG_THROTTLE_DUTY_CYCLE_LEVEL3_DEFAULT (94)
|
#define CFG_THROTTLE_DUTY_CYCLE_LEVEL3_DEFAULT (94)
|
||||||
|
|
||||||
#define CFG_THERMAL_TEMP_MIN_LEVEL0_NAME "gThermalTempMinLevel0"
|
|
||||||
#define CFG_THERMAL_TEMP_MIN_LEVEL0_MIN (0)
|
|
||||||
#define CFG_THERMAL_TEMP_MIN_LEVEL0_MAX (1000)
|
|
||||||
#define CFG_THERMAL_TEMP_MIN_LEVEL0_DEFAULT (0)
|
|
||||||
|
|
||||||
#define CFG_THERMAL_TEMP_MAX_LEVEL0_NAME "gThermalTempMaxLevel0"
|
|
||||||
#define CFG_THERMAL_TEMP_MAX_LEVEL0_MIN (0)
|
|
||||||
#define CFG_THERMAL_TEMP_MAX_LEVEL0_MAX (1000)
|
|
||||||
#define CFG_THERMAL_TEMP_MAX_LEVEL0_DEFAULT (90)
|
|
||||||
|
|
||||||
#define CFG_THERMAL_TEMP_MIN_LEVEL1_NAME "gThermalTempMinLevel1"
|
|
||||||
#define CFG_THERMAL_TEMP_MIN_LEVEL1_MIN (0)
|
|
||||||
#define CFG_THERMAL_TEMP_MIN_LEVEL1_MAX (1000)
|
|
||||||
#define CFG_THERMAL_TEMP_MIN_LEVEL1_DEFAULT (70)
|
|
||||||
|
|
||||||
#define CFG_THERMAL_TEMP_MAX_LEVEL1_NAME "gThermalTempMaxLevel1"
|
|
||||||
#define CFG_THERMAL_TEMP_MAX_LEVEL1_MIN (0)
|
|
||||||
#define CFG_THERMAL_TEMP_MAX_LEVEL1_MAX (1000)
|
|
||||||
#define CFG_THERMAL_TEMP_MAX_LEVEL1_DEFAULT (110)
|
|
||||||
|
|
||||||
#define CFG_THERMAL_TEMP_MIN_LEVEL2_NAME "gThermalTempMinLevel2"
|
|
||||||
#define CFG_THERMAL_TEMP_MIN_LEVEL2_MIN (0)
|
|
||||||
#define CFG_THERMAL_TEMP_MIN_LEVEL2_MAX (1000)
|
|
||||||
#define CFG_THERMAL_TEMP_MIN_LEVEL2_DEFAULT (90)
|
|
||||||
|
|
||||||
#define CFG_THERMAL_TEMP_MAX_LEVEL2_NAME "gThermalTempMaxLevel2"
|
|
||||||
#define CFG_THERMAL_TEMP_MAX_LEVEL2_MIN (0)
|
|
||||||
#define CFG_THERMAL_TEMP_MAX_LEVEL2_MAX (1000)
|
|
||||||
#define CFG_THERMAL_TEMP_MAX_LEVEL2_DEFAULT (125)
|
|
||||||
|
|
||||||
#define CFG_THERMAL_TEMP_MIN_LEVEL3_NAME "gThermalTempMinLevel3"
|
|
||||||
#define CFG_THERMAL_TEMP_MIN_LEVEL3_MIN (0)
|
|
||||||
#define CFG_THERMAL_TEMP_MIN_LEVEL3_MAX (1000)
|
|
||||||
#define CFG_THERMAL_TEMP_MIN_LEVEL3_DEFAULT (110)
|
|
||||||
|
|
||||||
#define CFG_THERMAL_TEMP_MAX_LEVEL3_NAME "gThermalTempMaxLevel3"
|
|
||||||
#define CFG_THERMAL_TEMP_MAX_LEVEL3_MIN (0)
|
|
||||||
#define CFG_THERMAL_TEMP_MAX_LEVEL3_MAX (1000)
|
|
||||||
#define CFG_THERMAL_TEMP_MAX_LEVEL3_DEFAULT (0)
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Enable/Disable Modulated DTIM feature
|
* Enable/Disable Modulated DTIM feature
|
||||||
* Default: Disable
|
* Default: Disable
|
||||||
@@ -11080,14 +11040,6 @@ struct hdd_config {
|
|||||||
uint8_t wowEnable;
|
uint8_t wowEnable;
|
||||||
uint8_t disableDFSChSwitch;
|
uint8_t disableDFSChSwitch;
|
||||||
uint8_t enableDFSMasterCap;
|
uint8_t enableDFSMasterCap;
|
||||||
uint16_t thermalTempMinLevel0;
|
|
||||||
uint16_t thermalTempMaxLevel0;
|
|
||||||
uint16_t thermalTempMinLevel1;
|
|
||||||
uint16_t thermalTempMaxLevel1;
|
|
||||||
uint16_t thermalTempMinLevel2;
|
|
||||||
uint16_t thermalTempMaxLevel2;
|
|
||||||
uint16_t thermalTempMinLevel3;
|
|
||||||
uint16_t thermalTempMaxLevel3;
|
|
||||||
uint32_t TxPower2g;
|
uint32_t TxPower2g;
|
||||||
uint32_t TxPower5g;
|
uint32_t TxPower5g;
|
||||||
uint32_t gEnableDebugLog;
|
uint32_t gEnableDebugLog;
|
||||||
|
@@ -2297,62 +2297,6 @@ struct reg_table_entry g_registry_table[] = {
|
|||||||
CFG_IBSS_PS_1RX_CHAIN_IN_ATIM_WINDOW_MIN,
|
CFG_IBSS_PS_1RX_CHAIN_IN_ATIM_WINDOW_MIN,
|
||||||
CFG_IBSS_PS_1RX_CHAIN_IN_ATIM_WINDOW_MAX),
|
CFG_IBSS_PS_1RX_CHAIN_IN_ATIM_WINDOW_MAX),
|
||||||
|
|
||||||
REG_VARIABLE(CFG_THERMAL_TEMP_MIN_LEVEL0_NAME, WLAN_PARAM_Integer,
|
|
||||||
struct hdd_config, thermalTempMinLevel0,
|
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
|
||||||
CFG_THERMAL_TEMP_MIN_LEVEL0_DEFAULT,
|
|
||||||
CFG_THERMAL_TEMP_MIN_LEVEL0_MIN,
|
|
||||||
CFG_THERMAL_TEMP_MIN_LEVEL0_MAX),
|
|
||||||
|
|
||||||
REG_VARIABLE(CFG_THERMAL_TEMP_MAX_LEVEL0_NAME, WLAN_PARAM_Integer,
|
|
||||||
struct hdd_config, thermalTempMaxLevel0,
|
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
|
||||||
CFG_THERMAL_TEMP_MAX_LEVEL0_DEFAULT,
|
|
||||||
CFG_THERMAL_TEMP_MAX_LEVEL0_MIN,
|
|
||||||
CFG_THERMAL_TEMP_MAX_LEVEL0_MAX),
|
|
||||||
|
|
||||||
REG_VARIABLE(CFG_THERMAL_TEMP_MIN_LEVEL1_NAME, WLAN_PARAM_Integer,
|
|
||||||
struct hdd_config, thermalTempMinLevel1,
|
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
|
||||||
CFG_THERMAL_TEMP_MIN_LEVEL1_DEFAULT,
|
|
||||||
CFG_THERMAL_TEMP_MIN_LEVEL1_MIN,
|
|
||||||
CFG_THERMAL_TEMP_MIN_LEVEL1_MAX),
|
|
||||||
|
|
||||||
REG_VARIABLE(CFG_THERMAL_TEMP_MAX_LEVEL1_NAME, WLAN_PARAM_Integer,
|
|
||||||
struct hdd_config, thermalTempMaxLevel1,
|
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
|
||||||
CFG_THERMAL_TEMP_MAX_LEVEL1_DEFAULT,
|
|
||||||
CFG_THERMAL_TEMP_MAX_LEVEL1_MIN,
|
|
||||||
CFG_THERMAL_TEMP_MAX_LEVEL1_MAX),
|
|
||||||
|
|
||||||
REG_VARIABLE(CFG_THERMAL_TEMP_MIN_LEVEL2_NAME, WLAN_PARAM_Integer,
|
|
||||||
struct hdd_config, thermalTempMinLevel2,
|
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
|
||||||
CFG_THERMAL_TEMP_MIN_LEVEL2_DEFAULT,
|
|
||||||
CFG_THERMAL_TEMP_MIN_LEVEL2_MIN,
|
|
||||||
CFG_THERMAL_TEMP_MIN_LEVEL2_MAX),
|
|
||||||
|
|
||||||
REG_VARIABLE(CFG_THERMAL_TEMP_MAX_LEVEL2_NAME, WLAN_PARAM_Integer,
|
|
||||||
struct hdd_config, thermalTempMaxLevel2,
|
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
|
||||||
CFG_THERMAL_TEMP_MAX_LEVEL2_DEFAULT,
|
|
||||||
CFG_THERMAL_TEMP_MAX_LEVEL2_MIN,
|
|
||||||
CFG_THERMAL_TEMP_MAX_LEVEL2_MAX),
|
|
||||||
|
|
||||||
REG_VARIABLE(CFG_THERMAL_TEMP_MIN_LEVEL3_NAME, WLAN_PARAM_Integer,
|
|
||||||
struct hdd_config, thermalTempMinLevel3,
|
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
|
||||||
CFG_THERMAL_TEMP_MIN_LEVEL3_DEFAULT,
|
|
||||||
CFG_THERMAL_TEMP_MIN_LEVEL3_MIN,
|
|
||||||
CFG_THERMAL_TEMP_MIN_LEVEL3_MAX),
|
|
||||||
|
|
||||||
REG_VARIABLE(CFG_THERMAL_TEMP_MAX_LEVEL3_NAME, WLAN_PARAM_Integer,
|
|
||||||
struct hdd_config, thermalTempMaxLevel3,
|
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
|
||||||
CFG_THERMAL_TEMP_MAX_LEVEL3_DEFAULT,
|
|
||||||
CFG_THERMAL_TEMP_MAX_LEVEL3_MIN,
|
|
||||||
CFG_THERMAL_TEMP_MAX_LEVEL3_MAX),
|
|
||||||
|
|
||||||
REG_VARIABLE(CFG_SET_TXPOWER_LIMIT2G_NAME, WLAN_PARAM_Integer,
|
REG_VARIABLE(CFG_SET_TXPOWER_LIMIT2G_NAME, WLAN_PARAM_Integer,
|
||||||
struct hdd_config, TxPower2g,
|
struct hdd_config, TxPower2g,
|
||||||
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
|
||||||
|
@@ -9756,6 +9756,7 @@ static int hdd_init_thermal_info(struct hdd_context *hdd_ctx)
|
|||||||
tSmeThermalParams thermal_param;
|
tSmeThermalParams thermal_param;
|
||||||
QDF_STATUS status;
|
QDF_STATUS status;
|
||||||
mac_handle_t mac_handle;
|
mac_handle_t mac_handle;
|
||||||
|
struct wlan_fwol_thermal_temp thermal_temp = {0};
|
||||||
|
|
||||||
thermal_param.smeThermalMgmtEnabled =
|
thermal_param.smeThermalMgmtEnabled =
|
||||||
hdd_ctx->config->thermalMitigationEnable;
|
hdd_ctx->config->thermalMitigationEnable;
|
||||||
@@ -9770,22 +9771,26 @@ static int hdd_init_thermal_info(struct hdd_context *hdd_ctx)
|
|||||||
thermal_param.sme_throttle_duty_cycle_tbl[3] =
|
thermal_param.sme_throttle_duty_cycle_tbl[3] =
|
||||||
hdd_ctx->config->throttle_dutycycle_level3;
|
hdd_ctx->config->throttle_dutycycle_level3;
|
||||||
|
|
||||||
|
status = ucfg_fwol_get_thermal_temp(hdd_ctx->hdd_psoc, &thermal_temp);
|
||||||
|
if (QDF_IS_STATUS_ERROR(status))
|
||||||
|
return qdf_status_to_os_return(status);
|
||||||
|
|
||||||
thermal_param.smeThermalLevels[0].smeMinTempThreshold =
|
thermal_param.smeThermalLevels[0].smeMinTempThreshold =
|
||||||
hdd_ctx->config->thermalTempMinLevel0;
|
thermal_temp.thermal_temp_min_level0;
|
||||||
thermal_param.smeThermalLevels[0].smeMaxTempThreshold =
|
thermal_param.smeThermalLevels[0].smeMaxTempThreshold =
|
||||||
hdd_ctx->config->thermalTempMaxLevel0;
|
thermal_temp.thermal_temp_max_level0;
|
||||||
thermal_param.smeThermalLevels[1].smeMinTempThreshold =
|
thermal_param.smeThermalLevels[1].smeMinTempThreshold =
|
||||||
hdd_ctx->config->thermalTempMinLevel1;
|
thermal_temp.thermal_temp_min_level1;
|
||||||
thermal_param.smeThermalLevels[1].smeMaxTempThreshold =
|
thermal_param.smeThermalLevels[1].smeMaxTempThreshold =
|
||||||
hdd_ctx->config->thermalTempMaxLevel1;
|
thermal_temp.thermal_temp_max_level1;
|
||||||
thermal_param.smeThermalLevels[2].smeMinTempThreshold =
|
thermal_param.smeThermalLevels[2].smeMinTempThreshold =
|
||||||
hdd_ctx->config->thermalTempMinLevel2;
|
thermal_temp.thermal_temp_min_level2;
|
||||||
thermal_param.smeThermalLevels[2].smeMaxTempThreshold =
|
thermal_param.smeThermalLevels[2].smeMaxTempThreshold =
|
||||||
hdd_ctx->config->thermalTempMaxLevel2;
|
thermal_temp.thermal_temp_max_level2;
|
||||||
thermal_param.smeThermalLevels[3].smeMinTempThreshold =
|
thermal_param.smeThermalLevels[3].smeMinTempThreshold =
|
||||||
hdd_ctx->config->thermalTempMinLevel3;
|
thermal_temp.thermal_temp_min_level3;
|
||||||
thermal_param.smeThermalLevels[3].smeMaxTempThreshold =
|
thermal_param.smeThermalLevels[3].smeMaxTempThreshold =
|
||||||
hdd_ctx->config->thermalTempMaxLevel3;
|
thermal_temp.thermal_temp_max_level3;
|
||||||
|
|
||||||
mac_handle = hdd_ctx->mac_handle;
|
mac_handle = hdd_ctx->mac_handle;
|
||||||
status = sme_init_thermal_info(mac_handle, thermal_param);
|
status = sme_init_thermal_info(mac_handle, thermal_param);
|
||||||
|
Reference in New Issue
Block a user