* [PATCH] drm/amd/pm: Add PPTable power limit quirk for ASUS G14 GA402R @ 2026-07-28 23:46 Teodor Bostan 2026-07-29 13:24 ` Alex Deucher 0 siblings, 1 reply; 3+ messages in thread From: Teodor Bostan @ 2026-07-28 23:46 UTC (permalink / raw) To: amd-gfx, kenneth.feng, alexander.deucher Cc: christian.koenig, mario.limonciello, dri-devel, Teodor Bostan ASUS ROG Zephyrus G14 (2022) GA402RJ and GA402RK laptops use custom AC power limits of 100W (RX 6700S) and 105W (RX 6800S). On resume from suspend, the SMU firmware resets to the reference vBIOS default of 80W, hard-capping GPU performance. Override SocketPowerLimitAc in sienna_cichlid_patch_pptable_quirk for these subsystem IDs so the driver restores the platform's intended AC power limit when reloading PPTable during boot and resume. Signed-off-by: Teodor Bostan <teobsn@gmail.com> --- .../gpu/drm/amd/pm/swsmu/smu11/sienna_cichlid_ppt.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/drivers/gpu/drm/amd/pm/swsmu/smu11/sienna_cichlid_ppt.c b/drivers/gpu/drm/amd/pm/swsmu/smu11/sienna_cichlid_ppt.c index cef628752..10d330edb 100644 --- a/drivers/gpu/drm/amd/pm/swsmu/smu11/sienna_cichlid_ppt.c +++ b/drivers/gpu/drm/amd/pm/swsmu/smu11/sienna_cichlid_ppt.c @@ -479,6 +479,7 @@ static int sienna_cichlid_patch_pptable_quirk(struct smu_context *smu) struct amdgpu_device *adev = smu->adev; uint32_t *board_reserved; uint16_t *freq_table_gfx; + uint16_t *power_limit; uint32_t i; /* Fix some OEM SKU specific stability issues */ @@ -501,6 +502,18 @@ static int sienna_cichlid_patch_pptable_quirk(struct smu_context *smu) } } + /* Fix some OEM SKU specific power limit issues */ + if ((adev->pdev->device == 0x73EF) && + (adev->pdev->subsystem_vendor == 0x1043)) { + if (adev->pdev->subsystem_device == 0x1DEC) { + GET_PPTABLE_MEMBER(SocketPowerLimitAc, &power_limit); + power_limit[PPT_THROTTLER_PPT0] = 100; + } else if (adev->pdev->subsystem_device == 0x1DCC) { + GET_PPTABLE_MEMBER(SocketPowerLimitAc, &power_limit); + power_limit[PPT_THROTTLER_PPT0] = 105; + } + } + return 0; } -- 2.55.0 ^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH] drm/amd/pm: Add PPTable power limit quirk for ASUS G14 GA402R 2026-07-28 23:46 [PATCH] drm/amd/pm: Add PPTable power limit quirk for ASUS G14 GA402R Teodor Bostan @ 2026-07-29 13:24 ` Alex Deucher 2026-07-30 7:28 ` Wang, Yang(Kevin) 0 siblings, 1 reply; 3+ messages in thread From: Alex Deucher @ 2026-07-29 13:24 UTC (permalink / raw) To: Teodor Bostan, Wang, Yang(Kevin) Cc: amd-gfx, kenneth.feng, alexander.deucher, christian.koenig, mario.limonciello, dri-devel + Kevin On Wed, Jul 29, 2026 at 9:23 AM Teodor Bostan <teobsn@gmail.com> wrote: > > ASUS ROG Zephyrus G14 (2022) GA402RJ and GA402RK laptops use custom AC > power limits of 100W (RX 6700S) and 105W (RX 6800S). On resume from > suspend, the SMU firmware resets to the reference vBIOS default of 80W, > hard-capping GPU performance. > > Override SocketPowerLimitAc in sienna_cichlid_patch_pptable_quirk for > these subsystem IDs so the driver restores the platform's intended AC > power limit when reloading PPTable during boot and resume. > > Signed-off-by: Teodor Bostan <teobsn@gmail.com> > --- > .../gpu/drm/amd/pm/swsmu/smu11/sienna_cichlid_ppt.c | 13 +++++++++++++ > 1 file changed, 13 insertions(+) > > diff --git a/drivers/gpu/drm/amd/pm/swsmu/smu11/sienna_cichlid_ppt.c b/drivers/gpu/drm/amd/pm/swsmu/smu11/sienna_cichlid_ppt.c > index cef628752..10d330edb 100644 > --- a/drivers/gpu/drm/amd/pm/swsmu/smu11/sienna_cichlid_ppt.c > +++ b/drivers/gpu/drm/amd/pm/swsmu/smu11/sienna_cichlid_ppt.c > @@ -479,6 +479,7 @@ static int sienna_cichlid_patch_pptable_quirk(struct smu_context *smu) > struct amdgpu_device *adev = smu->adev; > uint32_t *board_reserved; > uint16_t *freq_table_gfx; > + uint16_t *power_limit; > uint32_t i; > > /* Fix some OEM SKU specific stability issues */ > @@ -501,6 +502,18 @@ static int sienna_cichlid_patch_pptable_quirk(struct smu_context *smu) > } > } > > + /* Fix some OEM SKU specific power limit issues */ > + if ((adev->pdev->device == 0x73EF) && > + (adev->pdev->subsystem_vendor == 0x1043)) { > + if (adev->pdev->subsystem_device == 0x1DEC) { > + GET_PPTABLE_MEMBER(SocketPowerLimitAc, &power_limit); > + power_limit[PPT_THROTTLER_PPT0] = 100; > + } else if (adev->pdev->subsystem_device == 0x1DCC) { > + GET_PPTABLE_MEMBER(SocketPowerLimitAc, &power_limit); > + power_limit[PPT_THROTTLER_PPT0] = 105; > + } > + } > + > return 0; > } > > -- > 2.55.0 > ^ permalink raw reply [flat|nested] 3+ messages in thread
* RE: [PATCH] drm/amd/pm: Add PPTable power limit quirk for ASUS G14 GA402R 2026-07-29 13:24 ` Alex Deucher @ 2026-07-30 7:28 ` Wang, Yang(Kevin) 0 siblings, 0 replies; 3+ messages in thread From: Wang, Yang(Kevin) @ 2026-07-30 7:28 UTC (permalink / raw) To: Alex Deucher, Teodor Bostan Cc: amd-gfx@lists.freedesktop.org, Feng, Kenneth, Deucher, Alexander, Koenig, Christian, Limonciello, Mario, dri-devel@lists.freedesktop.org AMD General > -----Original Message----- > From: Alex Deucher <alexdeucher@gmail.com> > Sent: Wednesday, July 29, 2026 21:25 > To: Teodor Bostan <teobsn@gmail.com>; Wang, Yang(Kevin) > <KevinYang.Wang@amd.com> > Cc: amd-gfx@lists.freedesktop.org; Feng, Kenneth <Kenneth.Feng@amd.com>; > Deucher, Alexander <Alexander.Deucher@amd.com>; Koenig, Christian > <Christian.Koenig@amd.com>; Limonciello, Mario <Mario.Limonciello@amd.com>; > dri-devel@lists.freedesktop.org > Subject: Re: [PATCH] drm/amd/pm: Add PPTable power limit quirk for ASUS G14 > GA402R > > + Kevin > > On Wed, Jul 29, 2026 at 9:23 AM Teodor Bostan <teobsn@gmail.com> wrote: > > > > ASUS ROG Zephyrus G14 (2022) GA402RJ and GA402RK laptops use custom > AC > > power limits of 100W (RX 6700S) and 105W (RX 6800S). On resume from > > suspend, the SMU firmware resets to the reference vBIOS default of > > 80W, hard-capping GPU performance. > > > > Override SocketPowerLimitAc in sienna_cichlid_patch_pptable_quirk for > > these subsystem IDs so the driver restores the platform's intended AC > > power limit when reloading PPTable during boot and resume. > > > > Signed-off-by: Teodor Bostan <teobsn@gmail.com> > > --- > > .../gpu/drm/amd/pm/swsmu/smu11/sienna_cichlid_ppt.c | 13 > > +++++++++++++ > > 1 file changed, 13 insertions(+) > > > > diff --git a/drivers/gpu/drm/amd/pm/swsmu/smu11/sienna_cichlid_ppt.c > > b/drivers/gpu/drm/amd/pm/swsmu/smu11/sienna_cichlid_ppt.c > > index cef628752..10d330edb 100644 > > --- a/drivers/gpu/drm/amd/pm/swsmu/smu11/sienna_cichlid_ppt.c > > +++ b/drivers/gpu/drm/amd/pm/swsmu/smu11/sienna_cichlid_ppt.c > > @@ -479,6 +479,7 @@ static int sienna_cichlid_patch_pptable_quirk(struct > smu_context *smu) > > struct amdgpu_device *adev = smu->adev; > > uint32_t *board_reserved; > > uint16_t *freq_table_gfx; > > + uint16_t *power_limit; > > uint32_t i; > > > > /* Fix some OEM SKU specific stability issues */ @@ -501,6 > > +502,18 @@ static int sienna_cichlid_patch_pptable_quirk(struct smu_context > *smu) > > } > > } > > > > + /* Fix some OEM SKU specific power limit issues */ > > + if ((adev->pdev->device == 0x73EF) && > > + (adev->pdev->subsystem_vendor == 0x1043)) { > > + if (adev->pdev->subsystem_device == 0x1DEC) { > > + GET_PPTABLE_MEMBER(SocketPowerLimitAc, &power_limit); > > + power_limit[PPT_THROTTLER_PPT0] = 100; > > + } else if (adev->pdev->subsystem_device == 0x1DCC) { > > + GET_PPTABLE_MEMBER(SocketPowerLimitAc, &power_limit); > > + power_limit[PPT_THROTTLER_PPT0] = 105; > > + } > > + } Aha, I believe this is not root cause and the amdgpu driver should avoid adding these hardcode value for specific device. and the amdgpu kernel driver restores power limit settings after system resume in smu_late_init() stage. I will check and review this sequence. Fyi. smu_restore_dpm_user_profile(). Best regards, Kevin > > + > > return 0; > > } > > > > -- > > 2.55.0 > > ^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2026-07-30 7:28 UTC | newest] Thread overview: 3+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2026-07-28 23:46 [PATCH] drm/amd/pm: Add PPTable power limit quirk for ASUS G14 GA402R Teodor Bostan 2026-07-29 13:24 ` Alex Deucher 2026-07-30 7:28 ` Wang, Yang(Kevin)
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox