mirror of
https://github.com/Fishwaldo/linux-bl808.git
synced 2025-06-06 06:35:12 +00:00
drm/amd/powerplay: disable cg pg task when pp uninitialize.
fix bug on uvd pg enabled, when reboot vm in pass through case, we need to notify smu power up uvd/vce if they were power down. otherwise, the vbios post will fail. Signed-off-by: Rex Zhu <Rex.Zhu@amd.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
parent
8201a67a49
commit
f5f857f45d
3 changed files with 15 additions and 1 deletions
|
@ -154,7 +154,7 @@ int pem_task_powerdown_vce_tasks(struct pp_eventmgr *eventmgr, struct pem_event_
|
||||||
|
|
||||||
int pem_task_disable_clock_power_gatings_tasks(struct pp_eventmgr *eventmgr, struct pem_event_data *event_data)
|
int pem_task_disable_clock_power_gatings_tasks(struct pp_eventmgr *eventmgr, struct pem_event_data *event_data)
|
||||||
{
|
{
|
||||||
/* TODO */
|
phm_disable_clock_power_gatings(eventmgr->hwmgr);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -209,6 +209,19 @@ int phm_enable_clock_power_gatings(struct pp_hwmgr *hwmgr)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int phm_disable_clock_power_gatings(struct pp_hwmgr *hwmgr)
|
||||||
|
{
|
||||||
|
PHM_FUNC_CHECK(hwmgr);
|
||||||
|
|
||||||
|
if (phm_cap_enabled(hwmgr->platform_descriptor.platformCaps,
|
||||||
|
PHM_PlatformCaps_TablelessHardwareInterface)) {
|
||||||
|
if (NULL != hwmgr->hwmgr_func->disable_clock_power_gating)
|
||||||
|
return hwmgr->hwmgr_func->disable_clock_power_gating(hwmgr);
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
int phm_display_configuration_changed(struct pp_hwmgr *hwmgr)
|
int phm_display_configuration_changed(struct pp_hwmgr *hwmgr)
|
||||||
{
|
{
|
||||||
PHM_FUNC_CHECK(hwmgr);
|
PHM_FUNC_CHECK(hwmgr);
|
||||||
|
|
|
@ -334,6 +334,7 @@ struct phm_clocks {
|
||||||
uint32_t clock[MAX_NUM_CLOCKS];
|
uint32_t clock[MAX_NUM_CLOCKS];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
extern int phm_disable_clock_power_gatings(struct pp_hwmgr *hwmgr);
|
||||||
extern int phm_enable_clock_power_gatings(struct pp_hwmgr *hwmgr);
|
extern int phm_enable_clock_power_gatings(struct pp_hwmgr *hwmgr);
|
||||||
extern int phm_powergate_uvd(struct pp_hwmgr *hwmgr, bool gate);
|
extern int phm_powergate_uvd(struct pp_hwmgr *hwmgr, bool gate);
|
||||||
extern int phm_powergate_vce(struct pp_hwmgr *hwmgr, bool gate);
|
extern int phm_powergate_vce(struct pp_hwmgr *hwmgr, bool gate);
|
||||||
|
|
Loading…
Add table
Reference in a new issue