mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-04 18:09:57 +00:00
drm/amd/pm: fulfill SMU13.0.0 cstate control interface
Fulfill the functionality for cstate control. Signed-off-by: Evan Quan <evan.quan@amd.com> Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com> Reviewed-by: Lijo Lazar <lijo.lazar@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com> Cc: stable@vger.kernel.org # 6.0.x Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
parent
3bd026c3e3
commit
528c0e66e0
1 changed files with 11 additions and 0 deletions
|
@ -119,6 +119,7 @@ static struct cmn2asic_msg_mapping smu_v13_0_0_message_map[SMU_MSG_MAX_COUNT] =
|
||||||
MSG_MAP(NotifyPowerSource, PPSMC_MSG_NotifyPowerSource, 0),
|
MSG_MAP(NotifyPowerSource, PPSMC_MSG_NotifyPowerSource, 0),
|
||||||
MSG_MAP(Mode1Reset, PPSMC_MSG_Mode1Reset, 0),
|
MSG_MAP(Mode1Reset, PPSMC_MSG_Mode1Reset, 0),
|
||||||
MSG_MAP(PrepareMp1ForUnload, PPSMC_MSG_PrepareMp1ForUnload, 0),
|
MSG_MAP(PrepareMp1ForUnload, PPSMC_MSG_PrepareMp1ForUnload, 0),
|
||||||
|
MSG_MAP(DFCstateControl, PPSMC_MSG_SetExternalClientDfCstateAllow, 0),
|
||||||
};
|
};
|
||||||
|
|
||||||
static struct cmn2asic_mapping smu_v13_0_0_clk_map[SMU_CLK_COUNT] = {
|
static struct cmn2asic_mapping smu_v13_0_0_clk_map[SMU_CLK_COUNT] = {
|
||||||
|
@ -1753,6 +1754,15 @@ static int smu_v13_0_0_set_mp1_state(struct smu_context *smu,
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static int smu_v13_0_0_set_df_cstate(struct smu_context *smu,
|
||||||
|
enum pp_df_cstate state)
|
||||||
|
{
|
||||||
|
return smu_cmn_send_smc_msg_with_param(smu,
|
||||||
|
SMU_MSG_DFCstateControl,
|
||||||
|
state,
|
||||||
|
NULL);
|
||||||
|
}
|
||||||
|
|
||||||
static const struct pptable_funcs smu_v13_0_0_ppt_funcs = {
|
static const struct pptable_funcs smu_v13_0_0_ppt_funcs = {
|
||||||
.get_allowed_feature_mask = smu_v13_0_0_get_allowed_feature_mask,
|
.get_allowed_feature_mask = smu_v13_0_0_get_allowed_feature_mask,
|
||||||
.set_default_dpm_table = smu_v13_0_0_set_default_dpm_table,
|
.set_default_dpm_table = smu_v13_0_0_set_default_dpm_table,
|
||||||
|
@ -1822,6 +1832,7 @@ static const struct pptable_funcs smu_v13_0_0_ppt_funcs = {
|
||||||
.mode1_reset_is_support = smu_v13_0_0_is_mode1_reset_supported,
|
.mode1_reset_is_support = smu_v13_0_0_is_mode1_reset_supported,
|
||||||
.mode1_reset = smu_v13_0_mode1_reset,
|
.mode1_reset = smu_v13_0_mode1_reset,
|
||||||
.set_mp1_state = smu_v13_0_0_set_mp1_state,
|
.set_mp1_state = smu_v13_0_0_set_mp1_state,
|
||||||
|
.set_df_cstate = smu_v13_0_0_set_df_cstate,
|
||||||
};
|
};
|
||||||
|
|
||||||
void smu_v13_0_0_set_ppt_funcs(struct smu_context *smu)
|
void smu_v13_0_0_set_ppt_funcs(struct smu_context *smu)
|
||||||
|
|
Loading…
Reference in a new issue