[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAJZ5v0hkkurEK6X3_d_AErKMOn9uicusEb1OhDAv5sFHr7_ahQ@mail.gmail.com>
Date: Fri, 5 Dec 2025 18:22:27 +0100
From: "Rafael J. Wysocki" <rafael@...nel.org>
To: "Mario Limonciello (AMD) (kernel.org)" <superm1@...nel.org>
Cc: "Rafael J. Wysocki" <rafael@...nel.org>, Antheas Kapenekakis <lkml@...heas.dev>,
Dmitry Osipenko <dmitry.osipenko@...labora.com>, Robert Beckett <bob.beckett@...labora.com>,
linux-acpi@...r.kernel.org, kernel@...labora.com,
linux-kernel@...r.kernel.org,
Sebastian Reichel <sebastian.reichel@...labora.com>, Xaver Hugl <xaver.hugl@...il.com>,
Richard Hughes <richard@...hsie.com>, William Jon McCann <mccann@....edu>,
"Jaap A . Haitsma" <jaap@...tsma.org>, Benjamin Canou <bookeldor@...il.com>,
Bastien Nocera <hadess@...ess.net>, systemd-devel@...ts.freedesktop.org,
Lennart Poettering <lennart@...ttering.net>
Subject: Re: [RFC PATCH v1 1/1] ACPI: PM: s2idle: Add lps0_screen_off sysfs interface
On Fri, Dec 5, 2025 at 5:47 PM Mario Limonciello (AMD) (kernel.org)
<superm1@...nel.org> wrote:
>
> > I would start with the graphics stacks and teach them to
> > runtime-suspend the HW when the displays go off. No firmware
> > notifications are needed for this to work.
>
> Well the problem with this is there is a sizable latency to runtime
> suspend hardware when displays go off. For example you would need to
> redo link training when you spin the hardware back up.
>
> What we do today (AMD *dGPU* centric) is runtime suspend the hardware
> when no displays are connected and nothing else is using the GPU (for
> offload purposes).
The latency problem can be addressed by using autosuspend instead of
synchronous suspend. Just set the autosuspend timer when displays go
off.
> On AMD APU we don't use runtime suspend. If you ignore the latency I
> could see an argument for proxying the status of displays to indicate
> runtime suspended, but I don't know what it really buys you.
Well, the lack of runtime PM is a problem and I don't see how it can
be overcome easily.
The main issue is that when the system is resuming and there is no
runtime PM support, the device in question must be powered up during
the system resume flow.
> > Then, I would teach
> > graphics drivers to leave the devices in runtime-suspend if they are
> > runtime-suspended when system suspend starts and to leave them in
> > runtime-suspend throughout the system suspend and resume, so they are
> > still runtime-suspended whey system resume is complete. I'm not sure
> > how far away graphics stacks are from this, but at least some of them
> > support runtime PM, so maybe the fruits don't hang very high. With
> > that, you'd just need a way to trigger a system suspend after a period
> > of inactivity when the displays are off and you have your "dark mode".
>
> I think even without kernel changes this can be accomplished today with
> userspace.
>
> There will be change events when the displays are turned off and you can
> listen to and set a timer to enter system suspend based upon how long
> they are off.
True, but that's just about suspending. To avoid powering up devices
on the way back from system suspend, runtime PM support and
integration of it with system suspend-resume is necessary.
Powered by blists - more mailing lists