All of lore.kernel.org
 help / color / mirror / Atom feed
From: bugzilla-daemon@kernel.org
To: platform-driver-x86@vger.kernel.org
Subject: [Bug 218305] Ryzen 7 7840HS gets stuck at 544MHz frequency after resuming after unplugging the power cord during sleep
Date: Mon, 13 Jul 2026 13:21:18 +0000	[thread overview]
Message-ID: <bug-218305-215701-S7drBPz1ad@https.bugzilla.kernel.org/> (raw)
In-Reply-To: <bug-218305-215701@https.bugzilla.kernel.org/>

https://bugzilla.kernel.org/show_bug.cgi?id=218305

--- Comment #154 from Mario Limonciello (AMD) (mario.limonciello@amd.com) ---
> Is this doable/plausible?

Unfortunately; that is filled with hallucinations.  Let me tear it apart.

> **Why it works on Windows:** AMD's Windows drivers explicitly re-initialize
> the SMU CPPC handshake

AMD doesn't have a CPPC driver for Windows, it uses infrastructure built-into
the OS.

> ## How an upstream provider can fix this

If you have Claude code and you think this is viable, use Claude code to make a
patch?

> `drivers/cpufreq/amd-pstate.c` — The driver needs a `.resume()` callback (or
> a
`syscore_ops.resume` hook) that re-writes the CPPC `desired_perf` register for
every online CPU.

There is already a resume hook, please see amd_pstate_resume() that updates the
correct register (MSR_AMD_CPPC_REQ).

> In active mode this means re-issuing the CPPC performance request that was in
> effect before suspend, forcing the SMU to re-accept OS-side CPPC control.

You mean like the code already does?

https://github.com/torvalds/linux/blob/v7.2-rc3/drivers/cpufreq/amd-pstate.c#L2108

> `drivers/platform/x86/amd/pmc/pmc.c` — The `amd_pmc` driver orchestrates the
> s2idle handshake.
> On the exit path (`amd_pmc_resume_handler`) it could call a notifier that
> lets `amd-pstate`
> re-initialize CPPC, ensuring the SMU is back under kernel control before user
> processes resume.

That's not how s2idle resume works.  amd_pmc suspend is unrolled through
acpi_s2idle_restore_early_lps0() -> lps0_s2idle_devops_head.

Then acpi_s2idle_restore() is called and all devices resumed.  amd-pstate
already happens in the latter.

-- 
You may reply to this email to add a comment.

You are receiving this mail because:
You are watching the assignee of the bug.

  parent reply	other threads:[~2026-07-13 13:21 UTC|newest]

Thread overview: 163+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-12-24  7:21 [Bug 218305] New: Ryzen 7 7840HS gets stuck at 544MHz frequency after a random number of suspend/resume cycles bugzilla-daemon
2023-12-24  7:27 ` [Bug 218305] " bugzilla-daemon
2023-12-24  7:30 ` bugzilla-daemon
2023-12-24 15:03 ` bugzilla-daemon
2023-12-24 15:12 ` bugzilla-daemon
2023-12-24 15:37 ` bugzilla-daemon
2023-12-24 15:38 ` bugzilla-daemon
2023-12-25 10:46 ` bugzilla-daemon
2023-12-25 10:53 ` bugzilla-daemon
2023-12-25 14:42 ` bugzilla-daemon
2023-12-26  4:21 ` bugzilla-daemon
2023-12-26 15:18 ` bugzilla-daemon
2023-12-26 15:25 ` bugzilla-daemon
2023-12-26 15:29 ` bugzilla-daemon
2024-01-03  0:03 ` bugzilla-daemon
2024-01-17  4:10 ` bugzilla-daemon
2024-01-17 19:33 ` bugzilla-daemon
2024-01-19  7:31 ` bugzilla-daemon
2024-01-19 12:45 ` bugzilla-daemon
2024-01-19 13:52 ` bugzilla-daemon
2024-01-19 15:25 ` bugzilla-daemon
2024-01-20  0:21 ` bugzilla-daemon
2024-01-21 18:05 ` bugzilla-daemon
2024-01-22  1:48 ` bugzilla-daemon
2024-01-22  1:53 ` bugzilla-daemon
2024-01-22  3:22 ` bugzilla-daemon
2024-01-22 17:50 ` bugzilla-daemon
2024-01-22 17:54 ` bugzilla-daemon
2024-03-05 16:57 ` bugzilla-daemon
2024-03-05 19:03 ` bugzilla-daemon
2024-03-06  9:59 ` bugzilla-daemon
2024-03-06 16:20 ` bugzilla-daemon
2024-03-06 16:31 ` bugzilla-daemon
2024-03-06 17:17 ` [Bug 218305] Ryzen 7 7840HS gets stuck at 544MHz frequency after resuming after unplugging the power cord during sleep bugzilla-daemon
2024-03-06 17:38 ` bugzilla-daemon
2024-03-06 17:46 ` bugzilla-daemon
2024-03-06 17:50 ` bugzilla-daemon
2024-03-06 17:55 ` bugzilla-daemon
2024-03-06 18:03 ` bugzilla-daemon
2024-03-06 18:06 ` bugzilla-daemon
2024-03-06 18:08 ` bugzilla-daemon
2024-03-06 18:09 ` bugzilla-daemon
2024-03-06 18:10 ` bugzilla-daemon
2024-04-01  8:00 ` bugzilla-daemon
2024-04-01 13:19 ` bugzilla-daemon
2024-04-01 13:37 ` bugzilla-daemon
2024-04-01 14:04 ` bugzilla-daemon
2024-04-01 14:14 ` bugzilla-daemon
2024-04-01 14:23 ` bugzilla-daemon
2024-04-05  2:20 ` bugzilla-daemon
2024-04-05  8:09 ` bugzilla-daemon
2024-04-05 11:15 ` bugzilla-daemon
2024-04-06  7:48 ` bugzilla-daemon
2024-04-15 17:42 ` bugzilla-daemon
2024-04-15 19:01 ` bugzilla-daemon
2024-04-15 19:35 ` bugzilla-daemon
2024-04-15 20:43 ` bugzilla-daemon
2024-05-06 14:20 ` bugzilla-daemon
2024-05-06 14:23 ` bugzilla-daemon
2024-05-06 14:52 ` bugzilla-daemon
2024-05-06 14:55 ` bugzilla-daemon
2024-05-06 15:16 ` bugzilla-daemon
2024-05-06 17:26 ` bugzilla-daemon
2024-05-07  8:24 ` bugzilla-daemon
2024-05-08  7:39 ` bugzilla-daemon
2024-05-08 11:14 ` bugzilla-daemon
2024-05-08 11:21 ` bugzilla-daemon
2024-05-08 11:42 ` bugzilla-daemon
2024-05-08 22:38 ` bugzilla-daemon
2024-05-09  7:49 ` bugzilla-daemon
2024-05-09  8:46 ` bugzilla-daemon
2024-05-09 13:31 ` bugzilla-daemon
2024-05-11  9:23 ` bugzilla-daemon
2024-05-11 10:25 ` bugzilla-daemon
2024-08-12 18:55 ` bugzilla-daemon
2024-08-12 22:19 ` bugzilla-daemon
2024-08-12 22:20 ` bugzilla-daemon
2024-09-19  7:57 ` bugzilla-daemon
2024-09-19 12:05 ` bugzilla-daemon
2024-12-22  2:59 ` bugzilla-daemon
2024-12-22  3:00 ` bugzilla-daemon
2024-12-22  7:19 ` bugzilla-daemon
2024-12-22 15:52 ` bugzilla-daemon
2024-12-22 19:55 ` bugzilla-daemon
2024-12-22 20:15 ` bugzilla-daemon
2025-01-06  3:47 ` bugzilla-daemon
2025-01-06  3:52 ` bugzilla-daemon
2025-04-10 18:01 ` bugzilla-daemon
2025-04-10 18:05 ` bugzilla-daemon
2025-04-10 18:15 ` bugzilla-daemon
2025-04-10 18:30 ` bugzilla-daemon
2025-04-10 18:59 ` bugzilla-daemon
2025-04-10 18:59 ` bugzilla-daemon
2025-04-10 19:06 ` bugzilla-daemon
2025-04-14 18:27 ` bugzilla-daemon
2025-04-14 18:45 ` bugzilla-daemon
2025-04-24  8:12 ` bugzilla-daemon
2025-05-05 21:27 ` bugzilla-daemon
2025-07-16 10:46 ` bugzilla-daemon
2025-07-16 15:32 ` bugzilla-daemon
2025-07-18  8:22 ` bugzilla-daemon
2025-07-23 11:29 ` bugzilla-daemon
2025-08-28  5:10 ` bugzilla-daemon
2025-09-08 19:58 ` bugzilla-daemon
2025-09-08 20:09 ` bugzilla-daemon
2025-09-09  4:27 ` bugzilla-daemon
2025-09-09 10:38 ` bugzilla-daemon
2025-09-10  4:27 ` bugzilla-daemon
2025-09-10  4:28 ` bugzilla-daemon
2025-09-10  4:33 ` bugzilla-daemon
2025-09-11  4:32 ` bugzilla-daemon
2025-09-11  4:34 ` bugzilla-daemon
2025-09-11 14:18 ` bugzilla-daemon
2025-09-12  6:06 ` bugzilla-daemon
2025-09-13 16:59 ` bugzilla-daemon
2025-09-13 17:37 ` bugzilla-daemon
2025-09-13 18:30 ` bugzilla-daemon
2025-09-13 18:34 ` bugzilla-daemon
2025-09-13 18:44 ` bugzilla-daemon
2025-09-13 18:48 ` bugzilla-daemon
2025-09-14  0:45 ` bugzilla-daemon
2025-09-14  2:03 ` bugzilla-daemon
2025-09-14  2:04 ` bugzilla-daemon
2025-09-14 12:01 ` bugzilla-daemon
2025-09-15  5:49 ` bugzilla-daemon
2025-09-15 16:11 ` bugzilla-daemon
2025-09-15 16:16 ` bugzilla-daemon
2025-09-15 16:24 ` bugzilla-daemon
2025-09-15 16:33 ` bugzilla-daemon
2025-09-15 16:38 ` bugzilla-daemon
2025-09-15 17:12 ` bugzilla-daemon
2025-09-15 17:26 ` bugzilla-daemon
2025-09-16  0:58 ` bugzilla-daemon
2025-09-16 21:20 ` bugzilla-daemon
2025-09-16 22:14 ` bugzilla-daemon
2025-09-17 15:47 ` bugzilla-daemon
2025-09-17 21:49 ` bugzilla-daemon
2025-09-29 15:04 ` bugzilla-daemon
2025-10-06 14:02 ` bugzilla-daemon
2025-10-06 14:25 ` bugzilla-daemon
2025-10-06 21:01 ` bugzilla-daemon
2025-10-12 16:31 ` bugzilla-daemon
2025-10-18  7:37 ` bugzilla-daemon
2025-11-09  3:56 ` bugzilla-daemon
2025-11-09  6:55 ` bugzilla-daemon
2025-11-09 16:11 ` bugzilla-daemon
2025-11-09 19:21 ` bugzilla-daemon
2025-11-13 18:13 ` bugzilla-daemon
2025-11-20 17:34 ` bugzilla-daemon
2026-01-07 14:03 ` bugzilla-daemon
2026-01-08  6:50 ` bugzilla-daemon
2026-01-08  7:26 ` bugzilla-daemon
2026-01-08 13:06 ` bugzilla-daemon
2026-01-08 20:53 ` bugzilla-daemon
2026-04-23 15:03 ` bugzilla-daemon
2026-04-27 17:54 ` bugzilla-daemon
2026-06-21 11:23 ` bugzilla-daemon
2026-07-12 17:52 ` bugzilla-daemon
2026-07-13  9:32 ` bugzilla-daemon
2026-07-13 13:21 ` bugzilla-daemon [this message]
2026-07-13 13:53 ` bugzilla-daemon
2026-07-13 14:00 ` bugzilla-daemon
2026-07-13 20:56 ` bugzilla-daemon

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=bug-218305-215701-S7drBPz1ad@https.bugzilla.kernel.org/ \
    --to=bugzilla-daemon@kernel.org \
    --cc=platform-driver-x86@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.