File tree Expand file tree Collapse file tree 4 files changed +19
-6
lines changed
drivers/gpu/drm/amd/amdgpu Expand file tree Collapse file tree 4 files changed +19
-6
lines changed Original file line number Diff line number Diff line change @@ -118,7 +118,8 @@ static int jpeg_v2_0_sw_init(struct amdgpu_ip_block *ip_block)
118118 if (r )
119119 return r ;
120120
121- adev -> jpeg .supported_reset = AMDGPU_RESET_TYPE_PER_QUEUE ;
121+ if (!amdgpu_sriov_vf (adev ))
122+ adev -> jpeg .supported_reset = AMDGPU_RESET_TYPE_PER_QUEUE ;
122123 r = amdgpu_jpeg_sysfs_reset_mask_init (adev );
123124
124125 return r ;
@@ -770,6 +771,9 @@ static int jpeg_v2_0_ring_reset(struct amdgpu_ring *ring,
770771{
771772 int r ;
772773
774+ if (!(ring -> adev -> jpeg .supported_reset & AMDGPU_RESET_TYPE_PER_QUEUE ))
775+ return - EOPNOTSUPP ;
776+
773777 drm_sched_wqueue_stop (& ring -> sched );
774778 r = jpeg_v2_0_stop (ring -> adev );
775779 if (r )
Original file line number Diff line number Diff line change @@ -167,7 +167,8 @@ static int jpeg_v2_5_sw_init(struct amdgpu_ip_block *ip_block)
167167 if (r )
168168 return r ;
169169
170- adev -> jpeg .supported_reset = AMDGPU_RESET_TYPE_PER_QUEUE ;
170+ if (!amdgpu_sriov_vf (adev ))
171+ adev -> jpeg .supported_reset = AMDGPU_RESET_TYPE_PER_QUEUE ;
171172 r = amdgpu_jpeg_sysfs_reset_mask_init (adev );
172173
173174 return r ;
@@ -649,6 +650,9 @@ static int jpeg_v2_5_ring_reset(struct amdgpu_ring *ring,
649650{
650651 int r ;
651652
653+ if (!(ring -> adev -> jpeg .supported_reset & AMDGPU_RESET_TYPE_PER_QUEUE ))
654+ return - EOPNOTSUPP ;
655+
652656 drm_sched_wqueue_stop (& ring -> sched );
653657 jpeg_v2_5_stop_inst (ring -> adev , ring -> me );
654658 jpeg_v2_5_start_inst (ring -> adev , ring -> me );
Original file line number Diff line number Diff line change @@ -132,7 +132,8 @@ static int jpeg_v3_0_sw_init(struct amdgpu_ip_block *ip_block)
132132 if (r )
133133 return r ;
134134
135- adev -> jpeg .supported_reset = AMDGPU_RESET_TYPE_PER_QUEUE ;
135+ if (!amdgpu_sriov_vf (adev ))
136+ adev -> jpeg .supported_reset = AMDGPU_RESET_TYPE_PER_QUEUE ;
136137 r = amdgpu_jpeg_sysfs_reset_mask_init (adev );
137138
138139 return r ;
@@ -561,6 +562,9 @@ static int jpeg_v3_0_ring_reset(struct amdgpu_ring *ring,
561562{
562563 int r ;
563564
565+ if (!(ring -> adev -> jpeg .supported_reset & AMDGPU_RESET_TYPE_PER_QUEUE ))
566+ return - EOPNOTSUPP ;
567+
564568 drm_sched_wqueue_stop (& ring -> sched );
565569 r = jpeg_v3_0_stop (ring -> adev );
566570 if (r )
Original file line number Diff line number Diff line change @@ -143,7 +143,8 @@ static int jpeg_v4_0_sw_init(struct amdgpu_ip_block *ip_block)
143143 if (r )
144144 return r ;
145145
146- adev -> jpeg .supported_reset = AMDGPU_RESET_TYPE_PER_QUEUE ;
146+ if (!amdgpu_sriov_vf (adev ))
147+ adev -> jpeg .supported_reset = AMDGPU_RESET_TYPE_PER_QUEUE ;
147148 r = amdgpu_jpeg_sysfs_reset_mask_init (adev );
148149
149150 return r ;
@@ -726,8 +727,8 @@ static int jpeg_v4_0_ring_reset(struct amdgpu_ring *ring,
726727{
727728 int r ;
728729
729- if (amdgpu_sriov_vf (ring -> adev ))
730- return - EINVAL ;
730+ if (! (ring -> adev -> jpeg . supported_reset & AMDGPU_RESET_TYPE_PER_QUEUE ))
731+ return - EOPNOTSUPP ;
731732
732733 drm_sched_wqueue_stop (& ring -> sched );
733734 r = jpeg_v4_0_stop (ring -> adev );
You can’t perform that action at this time.
0 commit comments