Re: [PATCH 0/7] Implement generic regulator constraints parsing for ACPI and OF

From: Mark Brown
Date: Wed Jan 25 2017 - 15:39:43 EST


On Wed, Jan 25, 2017 at 11:27:11AM -0800, Dmitry Torokhov wrote:

> For the record, the main issue for the drivers, which is being solved by
> exposing power supplies to the driver, is the following:

> 1. We suspend the device. Since there is no regulators the driver
> assumes that it will retain it's state upon resume

That's *not* a sensible thing for drivers to assume regardless of the
presence or absence of explicitly controlled regulators, that just seems
like a plain old driver bug. Even if there are regulators that doesn't
mean there isn't a suspend mode configuration that disables those
regulators.

> I would really hate to go through _every_ driver and add the following
> code to the resume path:
>
> #if IS_ENABLED(CONFIG_ACPI)
> if (acpi_device_was_powered_off_between_suspend_and_now(dev)) {
> completely_reinitialize_device(dev);
> }
> #endif

That's not an ACPI thing, unless the device thinks it's actively
providing a wakeup source then if the system suspends the driver should
not be surprised to have power pulled - that's pretty normal. If the
driver is a wakeup source then it's a bit different.

Attachment: signature.asc
Description: PGP signature