mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-08 21:22:09 -04:00
qcacmn: Add thermal mitigation support for moselle
For older targets thermal mitigation is supported for the apps. In moselle there is a new processor wpps on which firmware runs, this commit adds the support for the thermal client wpps. Change-Id: Ia212cd08c000ab11d4079cc701634dd919447ae9 CRs-Fixed: 2757932
This commit is contained in:
parent
321ed86cde
commit
49ea182ae3
2 changed files with 24 additions and 1 deletions
|
|
@ -2893,6 +2893,8 @@ typedef struct {
|
|||
* @dc: DC
|
||||
* @dc_per_event: DC per event
|
||||
* @num_thermal_conf: Number of thermal configurations to be sent
|
||||
* @client_id: Thermal client id either apps or wpps
|
||||
* @priority: Priority of apps/wpps
|
||||
* @tt_level_config: TT level config params
|
||||
*/
|
||||
struct thermal_mitigation_params {
|
||||
|
|
@ -2901,6 +2903,8 @@ struct thermal_mitigation_params {
|
|||
uint32_t dc;
|
||||
uint32_t dc_per_event;
|
||||
uint8_t num_thermal_conf;
|
||||
uint8_t client_id;
|
||||
uint8_t priority;
|
||||
tt_level_config levelconf[THERMAL_LEVELS];
|
||||
};
|
||||
|
||||
|
|
@ -5221,6 +5225,7 @@ typedef enum {
|
|||
wmi_service_cfr_ta_ra_as_fp_support,
|
||||
wmi_service_cfr_capture_count_support,
|
||||
wmi_service_ll_stats_per_chan_rx_tx_time,
|
||||
wmi_service_thermal_multi_client_support,
|
||||
wmi_services_max,
|
||||
} wmi_conv_service_ids;
|
||||
#define WMI_SERVICE_UNAVAILABLE 0xFFFF
|
||||
|
|
|
|||
|
|
@ -6754,6 +6754,22 @@ extract_pdev_sscan_fft_bin_index_tlv(
|
|||
}
|
||||
#endif /* WLAN_CONV_SPECTRAL_ENABLE */
|
||||
|
||||
#ifdef FEATURE_WPSS_THERMAL_MITIGATION
|
||||
static inline void
|
||||
wmi_fill_client_id_priority(wmi_therm_throt_config_request_fixed_param *tt_conf,
|
||||
struct thermal_mitigation_params *param)
|
||||
{
|
||||
tt_conf->client_id = param->client_id;
|
||||
tt_conf->priority = param->priority;
|
||||
}
|
||||
#else
|
||||
static inline void
|
||||
wmi_fill_client_id_priority(wmi_therm_throt_config_request_fixed_param *tt_conf,
|
||||
struct thermal_mitigation_params *param)
|
||||
{
|
||||
}
|
||||
#endif
|
||||
|
||||
/**
|
||||
* send_thermal_mitigation_param_cmd_tlv() - configure thermal mitigation params
|
||||
* @param wmi_handle : handle to WMI.
|
||||
|
|
@ -6795,7 +6811,7 @@ static QDF_STATUS send_thermal_mitigation_param_cmd_tlv(
|
|||
tt_conf->dc = param->dc;
|
||||
tt_conf->dc_per_event = param->dc_per_event;
|
||||
tt_conf->therm_throt_levels = param->num_thermal_conf;
|
||||
|
||||
wmi_fill_client_id_priority(tt_conf, param);
|
||||
buf_ptr = (uint8_t *) ++tt_conf;
|
||||
/* init TLV params */
|
||||
WMITLV_SET_HDR(buf_ptr, WMITLV_TAG_ARRAY_STRUC,
|
||||
|
|
@ -14756,6 +14772,8 @@ static void populate_tlv_service(uint32_t *wmi_service)
|
|||
WMI_SERVICE_CFR_CAPTURE_COUNT_SUPPORT;
|
||||
wmi_service[wmi_service_ll_stats_per_chan_rx_tx_time] =
|
||||
WMI_SERVICE_LL_STATS_PER_CHAN_RX_TX_TIME_SUPPORT;
|
||||
wmi_service[wmi_service_thermal_multi_client_support] =
|
||||
WMI_SERVICE_THERMAL_MULTI_CLIENT_SUPPORT;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
Loading…
Reference in a new issue