From: Thomas Gleixner <tglx@linutronix.de>
To: "Mario Limonciello" <superm1@kernel.org>,
"Mateusz Jończyk" <mat.jonczyk@o2.pl>,
"John Stultz" <jstultz@google.com>
Cc: Stephen Boyd <sboyd@kernel.org>,
"open list:TIMEKEEPING, CLOCKSOURCE CORE, NTP,
ALARMTIMER" <linux-kernel@vger.kernel.org>,
Mario Limonciello <mario.limonciello@amd.com>,
Alexandre Belloni <alexandre.belloni@bootlin.com>
Subject: Re: [PATCH RESEND] alarmtimer: Use aie_timer from RTC device instead of own timer
Date: Tue, 01 Oct 2024 10:30:53 +0200 [thread overview]
Message-ID: <87ed50z0le.ffs@tglx> (raw)
In-Reply-To: <20240930182945.3332896-1-superm1@kernel.org>
On Mon, Sep 30 2024 at 13:29, Mario Limonciello wrote:
> It was reported that suspend-then-hibernate stopped working with modern
> systemd versions on an AMD Cezanne system. The reason for this breakage
> was because systemd switched to using alarmtimer instead of the wakealarm
> sysfs file.
>
> The wakealarm sysfs file programs the time to the `rtc->aie_timer` member
> of the RTC, whereas the alarmtimer suspend routine programs it to it's
> own device.
>
> On AMD Cezanne systems rtc_read_alarm() is used to program a secondary
> timer with the value of the timer. This behavior was introduced by
> commit 59348401ebed9 ("platform/x86: amd-pmc: Add special handling
> for timer based S0i3 wakeup").
>
> As rtc_read_alarm() uses the `rtc->aie_timer` to report the cached
> timer no alarm is provided as enabled.
>
> To fix this issue, drop the use of a dedicated timer for the alarmtimer
> and instead use `rtc->aie_timer` in the alarmtimer suspend/resume
> routines.
I'm not sure that this is correct. There is a reason why alarmtimer uses
a dedicated timer and this worked correctly so far.
I'd rather look at commit 59348401ebed9, which plays games with the RTC.
Thanks,
tglx
next prev parent reply other threads:[~2024-10-01 8:30 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-09-30 18:29 [PATCH RESEND] alarmtimer: Use aie_timer from RTC device instead of own timer Mario Limonciello
2024-10-01 8:30 ` Thomas Gleixner [this message]
2024-10-01 13:41 ` Mario Limonciello
2024-10-02 14:45 ` Thomas Gleixner
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=87ed50z0le.ffs@tglx \
--to=tglx@linutronix.de \
--cc=alexandre.belloni@bootlin.com \
--cc=jstultz@google.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mario.limonciello@amd.com \
--cc=mat.jonczyk@o2.pl \
--cc=sboyd@kernel.org \
--cc=superm1@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox