Sure, will update it in v2. Regards, Guchun -----Original Message----- From: Lazar, Lijo <Lijo.Lazar@xxxxxxx> Sent: Wednesday, April 27, 2022 6:16 PM To: Chen, Guchun <Guchun.Chen@xxxxxxx>; amd-gfx@xxxxxxxxxxxxxxxxxxxxx; Koenig, Christian <Christian.Koenig@xxxxxxx>; Zhang, Hawking <Hawking.Zhang@xxxxxxx>; Deucher, Alexander <Alexander.Deucher@xxxxxxx>; Quan, Evan <Evan.Quan@xxxxxxx> Subject: Re: [PATCH] drm/amdgpu: disable runtime pm on several sienna cichlid cards On 4/27/2022 3:41 PM, Guchun Chen wrote: > Disable runtime power management on several sienna cichlid cards, > otherwise SMU will possibly fail to be resumed from runtime suspend. > Will drop this after a clean solution between kernel driver and SMU FW > is available. > > amdgpu 0000:63:00.0: amdgpu: GECC is enabled amdgpu 0000:63:00.0: > amdgpu: SECUREDISPLAY: securedisplay ta ucode is not available amdgpu > 0000:63:00.0: amdgpu: SMU is resuming... > amdgpu 0000:63:00.0: amdgpu: SMU: I'm not done with your command: > SMN_C2PMSG_66:0x0000000E SMN_C2PMSG_82:0x00000080 amdgpu 0000:63:00.0: amdgpu: Failed to SetDriverDramAddr! > amdgpu 0000:63:00.0: amdgpu: Failed to setup smc hw! > [drm:amdgpu_device_ip_resume_phase2 [amdgpu]] *ERROR* resume of IP > block <smu> failed -62 amdgpu 0000:63:00.0: amdgpu: > amdgpu_device_ip_resume failed (-62) > > Signed-off-by: Guchun Chen <guchun.chen@xxxxxxx> > --- > drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c | 9 +++++++++ > 1 file changed, 9 insertions(+) > > diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c > b/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c > index 262938f0dfdb..9c483787c0ca 100644 > --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c > +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c > @@ -180,6 +180,15 @@ int amdgpu_driver_load_kms(struct amdgpu_device *adev, unsigned long flags) > */ > if (adev->is_fw_fb) > adev->runpm = false; > + > + /* > + * Add below quirk on several sienna_cichlid cards to disable > + * runtime pm to fix EMI failures. > + */ > + if (((adev->pdev->device == 0x73A1) && (adev->pdev->revision == 0x00)) || > + ((adev->pdev->device == 0x73BF) && (adev->pdev->revision == 0xCF))) > + adev->runpm = false; > + Separate to amdgpu_runtime_pm_quirk()? Thanks, Lijo > if (adev->runpm) > dev_info(adev->dev, "Using BACO for runtime pm\n"); > } >