On Mon, Dec 1, 2025 at 12:04 AM Mario Limonciello (AMD) (kernel.org) <[email protected]> wrote: > > > > On 11/29/2025 7:46 PM, Mario Limonciello (AMD) wrote: > > Skipping power ungate exposed some scenarios that will fail > > like below: > > > > ``` > > amdgpu: Register(0) [regVPEC_QUEUE_RESET_REQ] failed to reach value > > 0x00000000 != 0x00000001n > > amdgpu 0000:c1:00.0: amdgpu: VPE queue reset failed > > ... > > amdgpu: [drm] *ERROR* wait_for_completion_timeout timeout! > > ``` > > > > The underlying s2idle issue that prompted this commit is going to > > be fixed in BIOS. > > This reverts commit 31ab31433c9bd2f255c48dc6cb9a99845c58b1e4. > > > > Fixes: 31ab31433c9bd ("drm/amd: Skip power ungate during suspend for VPE") > > Cc: [email protected] > > Signed-off-by: Mario Limonciello (AMD) <[email protected]> > > This was reported by a few people tangentially to me reproducing it > myself and coming up with the revert. > > Here's some more tags to include with the revert. > > Reported-by: Konstantin <[email protected]> > Closes: https://bugzilla.kernel.org/show_bug.cgi?id=220812 > Reported-by: Matthew Schwartz <[email protected]>
Acked-by: Alex Deucher <[email protected]> > > > --- > > drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 3 +-- > > 1 file changed, 1 insertion(+), 2 deletions(-) > > > > diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c > > b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c > > index 076bbc09f30ce..2819aceaab749 100644 > > --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c > > +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c > > @@ -3414,11 +3414,10 @@ int amdgpu_device_set_pg_state(struct amdgpu_device > > *adev, > > (adev->ip_blocks[i].version->type == > > AMD_IP_BLOCK_TYPE_GFX || > > adev->ip_blocks[i].version->type == > > AMD_IP_BLOCK_TYPE_SDMA)) > > continue; > > - /* skip CG for VCE/UVD/VPE, it's handled specially */ > > + /* skip CG for VCE/UVD, it's handled specially */ > > if (adev->ip_blocks[i].version->type != AMD_IP_BLOCK_TYPE_UVD > > && > > adev->ip_blocks[i].version->type != AMD_IP_BLOCK_TYPE_VCE > > && > > adev->ip_blocks[i].version->type != AMD_IP_BLOCK_TYPE_VCN > > && > > - adev->ip_blocks[i].version->type != AMD_IP_BLOCK_TYPE_VPE > > && > > adev->ip_blocks[i].version->type != > > AMD_IP_BLOCK_TYPE_JPEG && > > adev->ip_blocks[i].version->funcs->set_powergating_state) > > { > > /* enable powergating to save power */ >
