Commit 85625e64 authored by Evan Quan's avatar Evan Quan Committed by Alex Deucher

drm/amdgpu: enable hibernate support on Navi1X

BACO is needed to support hibernate on Navi1X.
Signed-off-by: default avatarEvan Quan <evan.quan@amd.com>
Acked-by: default avatarAlex Deucher <alexander.deucher@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent 890900fe
...@@ -958,6 +958,7 @@ struct amdgpu_device { ...@@ -958,6 +958,7 @@ struct amdgpu_device {
/* s3/s4 mask */ /* s3/s4 mask */
bool in_suspend; bool in_suspend;
bool in_hibernate;
bool in_gpu_reset; bool in_gpu_reset;
enum pp_mp1_state mp1_state; enum pp_mp1_state mp1_state;
......
...@@ -1191,7 +1191,9 @@ static int amdgpu_pmops_freeze(struct device *dev) ...@@ -1191,7 +1191,9 @@ static int amdgpu_pmops_freeze(struct device *dev)
struct amdgpu_device *adev = drm_dev->dev_private; struct amdgpu_device *adev = drm_dev->dev_private;
int r; int r;
adev->in_hibernate = true;
r = amdgpu_device_suspend(drm_dev, true); r = amdgpu_device_suspend(drm_dev, true);
adev->in_hibernate = false;
if (r) if (r)
return r; return r;
return amdgpu_asic_reset(adev); return amdgpu_asic_reset(adev);
......
...@@ -1498,7 +1498,7 @@ static int smu_disable_dpm(struct smu_context *smu) ...@@ -1498,7 +1498,7 @@ static int smu_disable_dpm(struct smu_context *smu)
bool use_baco = !smu->is_apu && bool use_baco = !smu->is_apu &&
((adev->in_gpu_reset && ((adev->in_gpu_reset &&
(amdgpu_asic_reset_method(adev) == AMD_RESET_METHOD_BACO)) || (amdgpu_asic_reset_method(adev) == AMD_RESET_METHOD_BACO)) ||
(adev->in_runpm && amdgpu_asic_supports_baco(adev))); ((adev->in_runpm || adev->in_hibernate) && amdgpu_asic_supports_baco(adev)));
ret = smu_get_smc_version(smu, NULL, &smu_version); ret = smu_get_smc_version(smu, NULL, &smu_version);
if (ret) { if (ret) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment