@@ -4375,7 +4375,7 @@ static int gfx_v10_0_mec_init(struct amdgpu_device *adev)
43754375 return r ;
43764376 }
43774377
4378- memset (hpd , 0 , mec_hpd_size );
4378+ memset_io (hpd , 0 , mec_hpd_size );
43794379
43804380 amdgpu_bo_kunmap (adev -> gfx .mec .hpd_eop_obj );
43814381 amdgpu_bo_unreserve (adev -> gfx .mec .hpd_eop_obj );
@@ -5580,7 +5580,7 @@ static void gfx_v10_0_rlc_backdoor_autoload_copy_ucode(struct amdgpu_device *ade
55805580 memcpy (ptr + toc_offset , fw_data , fw_size );
55815581
55825582 if (fw_size < toc_fw_size )
5583- memset (ptr + toc_offset + fw_size , 0 , toc_fw_size - fw_size );
5583+ memset_io (ptr + toc_offset + fw_size , 0 , toc_fw_size - fw_size );
55845584}
55855585
55865586static void gfx_v10_0_rlc_backdoor_autoload_copy_toc_ucode (struct amdgpu_device * adev )
@@ -6592,7 +6592,7 @@ static void gfx_v10_0_kiq_setting(struct amdgpu_ring *ring)
65926592}
65936593
65946594static void gfx_v10_0_gfx_mqd_set_priority (struct amdgpu_device * adev ,
6595- struct v10_gfx_mqd * mqd ,
6595+ volatile struct v10_gfx_mqd * mqd ,
65966596 struct amdgpu_mqd_prop * prop )
65976597{
65986598 bool priority = 0 ;
@@ -6612,7 +6612,7 @@ static void gfx_v10_0_gfx_mqd_set_priority(struct amdgpu_device *adev,
66126612static int gfx_v10_0_gfx_mqd_init (struct amdgpu_device * adev , void * m ,
66136613 struct amdgpu_mqd_prop * prop )
66146614{
6615- struct v10_gfx_mqd * mqd = m ;
6615+ volatile struct v10_gfx_mqd * mqd = m ;
66166616 uint64_t hqd_gpu_addr , wb_gpu_addr ;
66176617 uint32_t tmp ;
66186618 uint32_t rb_bufsz ;
@@ -6699,7 +6699,7 @@ static int gfx_v10_0_kgq_init_queue(struct amdgpu_ring *ring, bool reset)
66996699 int mqd_idx = ring - & adev -> gfx .gfx_ring [0 ];
67006700
67016701 if (!reset && !amdgpu_in_reset (adev ) && !adev -> in_suspend ) {
6702- memset ((void * )mqd , 0 , sizeof (* mqd ));
6702+ memset_io ((void * )mqd , 0 , sizeof (* mqd ));
67036703 mutex_lock (& adev -> srbm_mutex );
67046704 nv_grbm_select (adev , ring -> me , ring -> pipe , ring -> queue , 0 );
67056705 amdgpu_ring_init_mqd (ring );
@@ -6769,7 +6769,7 @@ static int gfx_v10_0_cp_async_gfx_ring_resume(struct amdgpu_device *adev)
67696769static int gfx_v10_0_compute_mqd_init (struct amdgpu_device * adev , void * m ,
67706770 struct amdgpu_mqd_prop * prop )
67716771{
6772- struct v10_compute_mqd * mqd = m ;
6772+ volatile struct v10_compute_mqd * mqd = m ;
67736773 uint64_t hqd_gpu_addr , wb_gpu_addr , eop_base_addr ;
67746774 uint32_t tmp ;
67756775
@@ -7013,7 +7013,7 @@ static int gfx_v10_0_kiq_init_queue(struct amdgpu_ring *ring)
70137013 nv_grbm_select (adev , 0 , 0 , 0 , 0 );
70147014 mutex_unlock (& adev -> srbm_mutex );
70157015 } else {
7016- memset ((void * )mqd , 0 , sizeof (* mqd ));
7016+ memset_io ((void * )mqd , 0 , sizeof (* mqd ));
70177017 if (amdgpu_sriov_vf (adev ) && adev -> in_suspend )
70187018 amdgpu_ring_clear_ring (ring );
70197019 mutex_lock (& adev -> srbm_mutex );
@@ -7037,7 +7037,7 @@ static int gfx_v10_0_kcq_init_queue(struct amdgpu_ring *ring, bool restore)
70377037 int mqd_idx = ring - & adev -> gfx .compute_ring [0 ];
70387038
70397039 if (!restore && !amdgpu_in_reset (adev ) && !adev -> in_suspend ) {
7040- memset ((void * )mqd , 0 , sizeof (* mqd ));
7040+ memset_io ((void * )mqd , 0 , sizeof (* mqd ));
70417041 mutex_lock (& adev -> srbm_mutex );
70427042 nv_grbm_select (adev , ring -> me , ring -> pipe , ring -> queue , 0 );
70437043 amdgpu_ring_init_mqd (ring );
0 commit comments