On Sat, Jan 17, 2026 at 2:17 PM decce6 <[email protected]> wrote:
>
> Currently, the AMD Radeon R5 M420 GPU is unstable when operating at the 
> default maximum 850MHz/1000MHz (core/memory) clock speeds. For example, a 
> game may stop working within one minute after starting up. When using the 
> amdgpu driver, the process stops with exitcode 6 and the following message is 
> printed: "amdgpu: The CS has cancelled because the context is lost. This 
> context is innocent."
>
> From my testing, limiting the clock speeds to 800/950 MHz makes it work 
> perfectly stably.
>

Thanks for the patch.  What revision is your chip?  Can you add the
revision check as well?  Can you also split this into two patches, one
for amdgpu and one for radeon?

Alex

> Signed-off-by: decce6 <[email protected]>
> ---
>  drivers/gpu/drm/amd/pm/legacy-dpm/si_dpm.c | 4 ++++
>  drivers/gpu/drm/radeon/si_dpm.c            | 4 ++++
>  2 files changed, 8 insertions(+)
>
> diff --git a/drivers/gpu/drm/amd/pm/legacy-dpm/si_dpm.c 
> b/drivers/gpu/drm/amd/pm/legacy-dpm/si_dpm.c
> index 1f539cc65f41..fcb9e0e20175 100644
> --- a/drivers/gpu/drm/amd/pm/legacy-dpm/si_dpm.c
> +++ b/drivers/gpu/drm/amd/pm/legacy-dpm/si_dpm.c
> @@ -3468,6 +3468,10 @@ static void si_apply_state_adjust_rules(struct 
> amdgpu_device *adev,
>                         max_sclk = 60000;
>                         max_mclk = 80000;
>                 }
> +               if (adev->pdev->device == 0x666f) {
> +                       max_sclk = 80000;
> +                       max_mclk = 95000;
> +               }
>         } else if (adev->asic_type == CHIP_OLAND) {
>                 if ((adev->pdev->revision == 0xC7) ||
>                     (adev->pdev->revision == 0x80) ||
> diff --git a/drivers/gpu/drm/radeon/si_dpm.c b/drivers/gpu/drm/radeon/si_dpm.c
> index 9deb91970d4d..2f386ea8827f 100644
> --- a/drivers/gpu/drm/radeon/si_dpm.c
> +++ b/drivers/gpu/drm/radeon/si_dpm.c
> @@ -2925,6 +2925,10 @@ static void si_apply_state_adjust_rules(struct 
> radeon_device *rdev,
>                         max_sclk = 60000;
>                         max_mclk = 80000;
>                 }
> +               if (rdev->pdev->device == 0x666f) {
> +                       max_sclk = 80000;
> +                       max_mclk = 95000;
> +               }
>         } else if (rdev->family == CHIP_OLAND) {
>                 if ((rdev->pdev->revision == 0xC7) ||
>                     (rdev->pdev->revision == 0x80) ||
> --
> 2.43.0
>
>

Reply via email to