Re: Time to re-enable Runtime PM per default for PCI devcies?

Bjorn Helgaas
2020-11-17T16:38:22Z

[+to Rafael, author of the commit you mentioned,
+cc Mika, Kai Heng, Lukas, linux-pm, linux-kernel]

On Tue, Nov 17, 2020 at 04:56:09PM +0100, Heiner Kallweit wrote:
> More than 10 yrs ago Runtime PM was disabled per default by bb910a7040
> ("PCI/PM Runtime: Make runtime PM of PCI devices inactive by default").
>
> Reason given: "avoid breakage on systems where ACPI-based wake-up is
> known to fail for some devices"
> Unfortunately the commit message doesn't mention any affected devices
> or systems.
>
> With Runtime PM disabled e.g. the PHY on network devices may remain
> powered up even with no cable plugged in, affecting battery lifetime
> on mobile devices. Currently we have to rely on the respective distro
> or user to enable Runtime PM via sysfs (echo auto > power/control).
> Some devices work around this restriction by calling pm_runtime_allow
> in their probe routine, even though that's not recommended by
> https://www.kernel.org/doc/Documentation/power/pci.txt
>
> Disabling Runtime PM per default seems to be a big hammer, a quirk
> for affected devices / systems may had been better. And we still
> have the option to disable Runtime PM for selected devices via sysfs.
>
> So, to cut a long story short: Wouldn't it be time to remove this
> restriction?

I don't know the history of this, but maybe Rafael or the others can
shed some light on it.