Re: [PATCH v10 7/7] at24: Support probing while off
From: Sakari Ailus
Date: Wed Feb 10 2021 - 03:49:11 EST
On Tue, Feb 09, 2021 at 05:58:12PM +0100, Rafael J. Wysocki wrote:
> On Tue, Feb 9, 2021 at 5:54 PM Sakari Ailus
> <sakari.ailus@xxxxxxxxxxxxxxx> wrote:
> >
> > On Tue, Feb 09, 2021 at 05:42:45PM +0100, Rafael J. Wysocki wrote:
> > > On Tue, Feb 9, 2021 at 5:23 PM Sakari Ailus
> > > <sakari.ailus@xxxxxxxxxxxxxxx> wrote:
> > > >
> > > > Hi Bartosz, Rafael,
> > > >
> > > > On Tue, Feb 09, 2021 at 04:49:37PM +0100, Bartosz Golaszewski wrote:
> > > > > On Mon, Feb 8, 2021 at 5:54 PM Rafael J. Wysocki <rafael@xxxxxxxxxx> wrote:
> > > > > >
> > > > > > On Mon, Feb 8, 2021 at 5:44 PM Bartosz Golaszewski
> > > > > > <bgolaszewski@xxxxxxxxxxxx> wrote:
> > > > > > >
> > > > > > > On Fri, Feb 5, 2021 at 2:25 PM Sakari Ailus
> > > > > > > <sakari.ailus@xxxxxxxxxxxxxxx> wrote:
> > > > > > > >
> > > > > > > > In certain use cases (where the chip is part of a camera module, and the
> > > > > > > > camera module is wired together with a camera privacy LED), powering on
> > > > > > > > the device during probe is undesirable. Add support for the at24 to
> > > > > > > > execute probe while being powered off. For this to happen, a hint in form
> > > > > > > > of a device property is required from the firmware.
> > > > > > > >
> > > > > > > > Signed-off-by: Sakari Ailus <sakari.ailus@xxxxxxxxxxxxxxx>
> > > > > > > > Reviewed-by: Tomasz Figa <tfiga@xxxxxxxxxxxx>
> > > > > > > > ---
> > > > > > >
> > > > > > > I'll ack this but I still claim that the name
> > > > > > > acpi_dev_state_low_power() is super misleading for this use-case and
> > > > > > > I've been saying that for 10 versions now with everyone just ignoring
> > > > > > > my remarks. :/
> > > > > >
> > > > > > Well, the function in question simply checks if the current ACPI power
> > > > > > state of the device is different from "full power", so its name
> > > > > > appears to be quite adequate to me.
> > > > > >
> > > > > > If the way in which it is used is confusing, though, I guess
> > > > > > explaining what's going on would be welcome.
> > > > > >
> > > > >
> > > > > Yes, I have explained it multiple time already - last time at v9 of this series:
> > > > >
> > > > > https://www.spinics.net/lists/kernel/msg3816807.html
> > > >
> > > > How about adding this to the description of acpi_dev_state_low_power():
> > > >
> > > > -----------8<--------------
> > > > * This function is intended to be used by drivers to tell whether the device
> > > > * is in low power state (D1--D3cold) in driver's probe or remove function. See
> > > > * Documentation/firmware-guide/acpi/low-power-probe.rst for more information.
> > > > -----------8<--------------
> > >
> > > This information is already there in the kerneldoc description of that
> > > function AFAICS.
> >
> > Ok, the D states are mentioned already. But how to use it is not, nor
> > there's a reference to the ReST file. I think that wouldn't hurt.
> >
> > >
> > > I was thinking about adding an explanation comment to the caller.
> >
> > I think it'd be best if the function name would convey that without a
> > comment that should then be added to all callers. How about calling the
> > function e.g. acpi_dev_state_d0() and negating the return value? The D0
> > state is well defined and we could do this without adding new terms.
>
> That would work for me.
Bartosz, would that work for you?
I'd call the temporary variable in the at24 driver e.g. "full_power".
--
Regards,
Sakari Ailus