forked from Minki/linux
drm/amdgpu: Disable DPM in virtualization
This patch is used for virtualization support. In virtualization, only SMU manager is needed, DPM should be disabled. This is a use case for commit 2f9346b6f984 ("drm/amdgpu/powerplay: pp module only enable smu when dpm disabled.") Signed-off-by: Trigger Huang <trigger.huang@amd.com> Reviewed-by: Christian König <christian.koenig@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
parent
617859e076
commit
7b1e8cad1f
@ -184,7 +184,7 @@ static int amdgpu_pp_hw_init(void *handle)
|
||||
ret = adev->powerplay.ip_funcs->hw_init(
|
||||
adev->powerplay.pp_handle);
|
||||
|
||||
if (amdgpu_dpm != 0)
|
||||
if ((amdgpu_dpm != 0) && !amdgpu_sriov_vf(adev))
|
||||
adev->pm.dpm_enabled = true;
|
||||
|
||||
return ret;
|
||||
|
@ -911,7 +911,8 @@ static int amd_pp_instance_init(struct amd_pp_init *pp_init,
|
||||
|
||||
amd_pp->pp_handle = handle;
|
||||
|
||||
if (amdgpu_dpm == 0)
|
||||
if ((amdgpu_dpm == 0)
|
||||
|| cgs_is_virtualization_enabled(pp_init->device))
|
||||
return 0;
|
||||
|
||||
ret = hwmgr_init(pp_init, handle);
|
||||
@ -940,7 +941,8 @@ static int amd_pp_instance_fini(void *handle)
|
||||
if (instance == NULL)
|
||||
return -EINVAL;
|
||||
|
||||
if (amdgpu_dpm != 0) {
|
||||
if ((amdgpu_dpm != 0)
|
||||
&& !cgs_is_virtualization_enabled(instance->smu_mgr->device)) {
|
||||
eventmgr_fini(instance->eventmgr);
|
||||
hwmgr_fini(instance->hwmgr);
|
||||
}
|
||||
@ -1004,7 +1006,8 @@ int amd_powerplay_reset(void *handle)
|
||||
|
||||
hw_init_power_state_table(instance->hwmgr);
|
||||
|
||||
if (amdgpu_dpm == 0)
|
||||
if ((amdgpu_dpm == 0)
|
||||
|| cgs_is_virtualization_enabled(instance->smu_mgr->device))
|
||||
return 0;
|
||||
|
||||
if (eventmgr == NULL || eventmgr->pp_eventmgr_init == NULL)
|
||||
|
Loading…
Reference in New Issue
Block a user