diff options
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu')
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/si.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/si.c b/drivers/gpu/drm/amd/amdgpu/si.c index 543101d5a5ed..f61a431b9553 100644 --- a/drivers/gpu/drm/amd/amdgpu/si.c +++ b/drivers/gpu/drm/amd/amdgpu/si.c | |||
@@ -1230,6 +1230,18 @@ static void si_detect_hw_virtualization(struct amdgpu_device *adev) | |||
1230 | adev->virt.caps |= AMDGPU_PASSTHROUGH_MODE; | 1230 | adev->virt.caps |= AMDGPU_PASSTHROUGH_MODE; |
1231 | } | 1231 | } |
1232 | 1232 | ||
1233 | static void si_flush_hdp(struct amdgpu_device *adev) | ||
1234 | { | ||
1235 | WREG32(mmHDP_MEM_COHERENCY_FLUSH_CNTL, 1); | ||
1236 | RREG32(mmHDP_MEM_COHERENCY_FLUSH_CNTL); | ||
1237 | } | ||
1238 | |||
1239 | static void si_invalidate_hdp(struct amdgpu_device *adev) | ||
1240 | { | ||
1241 | WREG32(mmHDP_DEBUG0, 1); | ||
1242 | RREG32(mmHDP_DEBUG0); | ||
1243 | } | ||
1244 | |||
1233 | static const struct amdgpu_asic_funcs si_asic_funcs = | 1245 | static const struct amdgpu_asic_funcs si_asic_funcs = |
1234 | { | 1246 | { |
1235 | .read_disabled_bios = &si_read_disabled_bios, | 1247 | .read_disabled_bios = &si_read_disabled_bios, |
@@ -1241,6 +1253,8 @@ static const struct amdgpu_asic_funcs si_asic_funcs = | |||
1241 | .set_uvd_clocks = &si_set_uvd_clocks, | 1253 | .set_uvd_clocks = &si_set_uvd_clocks, |
1242 | .set_vce_clocks = NULL, | 1254 | .set_vce_clocks = NULL, |
1243 | .get_config_memsize = &si_get_config_memsize, | 1255 | .get_config_memsize = &si_get_config_memsize, |
1256 | .flush_hdp = &si_flush_hdp, | ||
1257 | .invalidate_hdp = &si_invalidate_hdp, | ||
1244 | }; | 1258 | }; |
1245 | 1259 | ||
1246 | static uint32_t si_get_rev_id(struct amdgpu_device *adev) | 1260 | static uint32_t si_get_rev_id(struct amdgpu_device *adev) |