[PATCH] Revert "drm/amdgpu: drop runtime pm disablement quirk on several sienna cichlid cards"
Chen, Guchun
Guchun.Chen at amd.com
Wed Sep 7 07:53:38 UTC 2022
Good point. Looks we need to disable BACO entry/exit together, not limited to runtime PM. I will drop this revert and provide a new patch accordingly.
Regards,
Guchun
-----Original Message-----
From: Lazar, Lijo <Lijo.Lazar at amd.com>
Sent: Wednesday, September 7, 2022 1:58 PM
To: Chen, Guchun <Guchun.Chen at amd.com>; amd-gfx at lists.freedesktop.org; Deucher, Alexander <Alexander.Deucher at amd.com>; Zhang, Hawking <Hawking.Zhang at amd.com>; Quan, Evan <Evan.Quan at amd.com>; Feng, Kenneth <Kenneth.Feng at amd.com>
Subject: Re: [PATCH] Revert "drm/amdgpu: drop runtime pm disablement quirk on several sienna cichlid cards"
On 9/7/2022 10:23 AM, Guchun Chen wrote:
> This reverts commit e2994d23d8afa2fb465fdb8cf544b736f67ab8ba.
>
> Frequent BACO enter/exit will cause EMI failure, so disable runtime PM
> on these server SKUs.
>
Apart from this, any BACO entry/exit in quick succession could cause the same failure. If BACO is used for reset in these SKUs, that also may not work.
Thanks,
Lijo
> Signed-off-by: Guchun Chen <guchun.chen at amd.com>
> ---
> drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c | 13 +++++++++++++
> 1 file changed, 13 insertions(+)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c
> index 1369c25448dc..4f6473faaf24 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c
> @@ -43,6 +43,17 @@
> #include "amdgpu_display.h"
> #include "amdgpu_ras.h"
>
> +static void amdgpu_runtime_pm_quirk(struct amdgpu_device *adev) {
> + /*
> + * 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->pm.rpm_mode = AMDGPU_RUNPM_NONE; }
> +
> void amdgpu_unregister_gpu_instance(struct amdgpu_device *adev)
> {
> struct amdgpu_gpu_instance *gpu_instance; @@ -176,6 +187,8 @@ int
> amdgpu_driver_load_kms(struct amdgpu_device *adev, unsigned long flags)
> break;
> }
>
> + amdgpu_runtime_pm_quirk(adev);
> +
> if (adev->pm.rpm_mode == AMDGPU_RUNPM_BACO)
> dev_info(adev->dev, "Using BACO for runtime pm\n");
> }
>
More information about the amd-gfx
mailing list