From: "Ilpo Järvinen" <ilpo.jarvinen@linux.intel.com>
To: Daniel Gibson <daniel@gibson.sh>
Cc: Shyam Sundar S K <Shyam-sundar.S-k@amd.com>,
Hans de Goede <hansg@kernel.org>,
platform-driver-x86@vger.kernel.org,
LKML <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH v2 1/5] platform/x86/amd/pmc: Check for intermediate wakeup in function
Date: Mon, 11 May 2026 15:31:05 +0300 (EEST) [thread overview]
Message-ID: <be336ea2-7d9c-2187-2f6c-d8841006e1dc@linux.intel.com> (raw)
In-Reply-To: <20260509013105.816339-2-daniel@gibson.sh>
On Sat, 9 May 2026, Daniel Gibson wrote:
> This slightly refactors code introduced by the
Avoid starting changelog with "This" or "This patch" but use imperative
tone instead. You can start with "Refactor code ..."
> "pmc: Require at least 2.5 seconds between HW sleep cycles"
Please always use the canonical commit reference format (see
Documentation/process/submitting-patches.rst for detail).
It's on the borderline if the origin of the code even matters that much
but since you're adding the (nice) comment, I guess it is easier to figure
out where that came from by having the reference in place.
> commit
> to allow adding different conditions for that delay later.
later -> in an upcoming change
>
> References: 9f5595d5f03f ("platform/x86/amd: pmc: Require at least 2.5 seconds between HW sleep cycles")
Drop this.
> Signed-off-by: Daniel Gibson <daniel@gibson.sh>
> ---
> drivers/platform/x86/amd/pmc/pmc.c | 17 ++++++++++++++---
> 1 file changed, 14 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/platform/x86/amd/pmc/pmc.c b/drivers/platform/x86/amd/pmc/pmc.c
> index cae3fcafd4d7..2b9e5730170a 100644
> --- a/drivers/platform/x86/amd/pmc/pmc.c
> +++ b/drivers/platform/x86/amd/pmc/pmc.c
> @@ -598,6 +598,19 @@ static int amd_pmc_verify_czn_rtc(struct amd_pmc_dev *pdev, u32 *arg)
> return rc;
> }
>
> +static bool amd_pmc_intermediate_wakeup_need_delay(struct amd_pmc_dev *pdev)
> +{
> + /*
> + * Starting a new HW sleep cycle right after waking from one
> + * can cause electrical problems triggering the over voltage protection.
> + * That is avoided by delaying the next suspend a bit, see also
> + * https://lore.kernel.org/all/20250414162446.3853194-1-superm1@kernel.org/
> + */
> + struct smu_metrics table;
> +
> + return get_metrics_table(pdev, &table) == 0 && table.s0i3_last_entry_status;
> +}
> +
> static void amd_pmc_s2idle_prepare(void)
> {
> struct amd_pmc_dev *pdev = &pmc;
> @@ -632,11 +645,9 @@ static void amd_pmc_s2idle_prepare(void)
> static void amd_pmc_s2idle_check(void)
> {
> struct amd_pmc_dev *pdev = &pmc;
> - struct smu_metrics table;
> int rc;
>
> - /* Avoid triggering OVP */
> - if (!get_metrics_table(pdev, &table) && table.s0i3_last_entry_status)
> + if (amd_pmc_intermediate_wakeup_need_delay(pdev))
> msleep(2500);
>
> /* Dump the IdleMask before we add to the STB */
>
--
i.
next prev parent reply other threads:[~2026-05-11 12:31 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-05-09 1:30 [PATCH v2 0/5] amd_pmc: Delay s2idle suspend for some devices Daniel Gibson
2026-05-09 1:31 ` [PATCH v2 1/5] platform/x86/amd/pmc: Check for intermediate wakeup in function Daniel Gibson
2026-05-11 12:31 ` Ilpo Järvinen [this message]
2026-05-09 1:31 ` [PATCH v2 2/5] platform/x86/amd/pmc: Delay suspend for some Lenovo Laptops Daniel Gibson
2026-05-11 12:24 ` Ilpo Järvinen
2026-05-12 0:45 ` Daniel Gibson
2026-05-09 1:31 ` [PATCH v2 3/5] platform/x86/amd/pmc: Add delay_suspend module parameter Daniel Gibson
2026-05-11 12:36 ` Ilpo Järvinen
2026-05-09 1:31 ` [PATCH v2 4/5] Documentation/arch/x86/amd-debugging: Add example for reset register Daniel Gibson
2026-05-10 0:21 ` Mario Limonciello
2026-05-11 12:45 ` Ilpo Järvinen
2026-05-09 1:31 ` [PATCH v2 5/5] Documentation/arch/x86/amd-debugging: Add section about delay_suspend Daniel Gibson
2026-05-11 12:49 ` Ilpo Järvinen
2026-05-12 0:50 ` Daniel Gibson
2026-05-12 9:06 ` Ilpo Järvinen
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=be336ea2-7d9c-2187-2f6c-d8841006e1dc@linux.intel.com \
--to=ilpo.jarvinen@linux.intel.com \
--cc=Shyam-sundar.S-k@amd.com \
--cc=daniel@gibson.sh \
--cc=hansg@kernel.org \
--cc=linux-kernel@vger.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.