diff options
author | Rex Zhu <Rex.Zhu@amd.com> | 2016-12-07 04:44:20 -0500 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2017-01-09 02:32:20 -0500 |
commit | 8dbd6f709e62394fedb4fe75a3e553cbb6cbdbd3 (patch) | |
tree | 08e2bc5389dfc681c6277c62a82f0b1468732ed0 | |
parent | f2d3d7f84cdf60d2e7e103a3381910005a4ca669 (diff) |
drm/amdgpu: fix init save/restore list in gfx_v8.0
commit 202e0b227b906cb80a2791f21216a55d9468d61b upstream.
set valid data to mmRLC_SRM_INDEX_CNTL_ADDRx/DATAx.
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>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c b/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c index c6fca7e7805f..a88d365be4c5 100644 --- a/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c +++ b/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c | |||
@@ -3947,8 +3947,12 @@ static int gfx_v8_0_init_save_restore_list(struct amdgpu_device *adev) | |||
3947 | temp = mmRLC_SRM_INDEX_CNTL_ADDR_0; | 3947 | temp = mmRLC_SRM_INDEX_CNTL_ADDR_0; |
3948 | data = mmRLC_SRM_INDEX_CNTL_DATA_0; | 3948 | data = mmRLC_SRM_INDEX_CNTL_DATA_0; |
3949 | for (i = 0; i < sizeof(unique_indices) / sizeof(int); i++) { | 3949 | for (i = 0; i < sizeof(unique_indices) / sizeof(int); i++) { |
3950 | amdgpu_mm_wreg(adev, temp + i, unique_indices[i] & 0x3FFFF, false); | 3950 | if (unique_indices[i] != 0) { |
3951 | amdgpu_mm_wreg(adev, data + i, unique_indices[i] >> 20, false); | 3951 | amdgpu_mm_wreg(adev, temp + i, |
3952 | unique_indices[i] & 0x3FFFF, false); | ||
3953 | amdgpu_mm_wreg(adev, data + i, | ||
3954 | unique_indices[i] >> 20, false); | ||
3955 | } | ||
3952 | } | 3956 | } |
3953 | kfree(register_list_format); | 3957 | kfree(register_list_format); |
3954 | 3958 | ||