Re: [PATCH v1] PCI / PM: Really allow runtime PM without callback functions

From: Jarkko Nikula
Date: Wed Feb 14 2024 - 01:59:28 EST


Hi

On 2/13/24 22:06, Bjorn Helgaas wrote:
Debugged-by: Mika Westerberg <mika.westerberg@xxxxxxxxxxxxxxx>

Sounds like this resolves a problem report? Is there a URL we can
cite? If not, at least a mention of what the user-visible problem is?

From the c5eb1190074c commit log, it sounds like maybe this allows
devices to be autosuspended when they previously could not be?

Possibly this should have "Fixes: c5eb1190074c ("PCI / PM: Allow
runtime PM without callback functions")" since it sounds like it goes
with it?

I don't think there's known regression but my above commit wasn't complete. Autosuspending works without runtime PM callback as long as the driver has the PM callbacks structure set.

For example the drivers/i2c/busses/i2c-i801.c has system suspend/resume callbacks. I tested this patch by hack-removing them and yes, autosuspend doesn't work without this patch.

Raag and Mika noticed the issue when cleaning up empty runtime PM callbacks from an another driver which doesn't have any other PM callbacks.