diff mbox series

[v6,6/6] Documentation: ACPI: Document allow-low-power-probe _DSD property

Message ID 20200826115432.6103-7-sakari.ailus@linux.intel.com
State Superseded
Headers show
Series Support running driver's probe for a device powered off | expand

Commit Message

Sakari Ailus Aug. 26, 2020, 11:54 a.m. UTC
Document the probe-low-power _DSD property and how it is used with I²C
drivers.

Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
---
 .../acpi/dsd/allow-low-power-probe.rst        | 28 +++++++++++++++++++
 Documentation/firmware-guide/acpi/index.rst   |  1 +
 2 files changed, 29 insertions(+)
 create mode 100644 Documentation/firmware-guide/acpi/dsd/allow-low-power-probe.rst

Comments

Sakari Ailus Sept. 1, 2020, 8:28 p.m. UTC | #1
On Thu, Aug 27, 2020 at 04:28:22PM +0300, Sakari Ailus wrote:
> On Wed, Aug 26, 2020 at 11:06:22AM -0700, Randy Dunlap wrote:
> > On 8/26/20 4:54 AM, Sakari Ailus wrote:
> > > Document the probe-low-power _DSD property and how it is used with I²C
> > > drivers.
> > > 
> > > Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
> > > ---
> > >  .../acpi/dsd/allow-low-power-probe.rst        | 28 +++++++++++++++++++
> > >  Documentation/firmware-guide/acpi/index.rst   |  1 +
> > >  2 files changed, 29 insertions(+)
> > >  create mode 100644 Documentation/firmware-guide/acpi/dsd/allow-low-power-probe.rst
> > > 
> > > diff --git a/Documentation/firmware-guide/acpi/dsd/allow-low-power-probe.rst b/Documentation/firmware-guide/acpi/dsd/allow-low-power-probe.rst
> > > new file mode 100644
> > > index 0000000000000..6fcc89162b898
> > > --- /dev/null
> > > +++ b/Documentation/firmware-guide/acpi/dsd/allow-low-power-probe.rst
> > > @@ -0,0 +1,28 @@
> > > +.. SPDX-License-Identifier: GPL-2.0
> > > +
> > > +======================================
> > > +Probing I²C devices in low power state
> > > +======================================
> > > +
> > > +Introduction
> > > +============
> > > +
> > > +In some cases it may be preferred to leave certain devices powered off for the
> > > +entire system bootup if powering on these devices has adverse side effects,
> > > +beyond just powering on the said device. Linux recognizes the _DSD property
> > > +"allow-low-power-probe" that can be used for this purpose.
> > > +
> > > +How it works
> > > +============
> > > +
> > > +The property "allow-low-power-probe" boolean property may be used to tell Linux
> > 
> > Drop the first "property".
> > 
> 
> Thanks, will fix for v7.
> 
> > > +that the I²C framework should instruct the kernel ACPI framework to leave the
> > > +device in the low power state. If the driver indicates its support for this by
> > > +setting the I2C_DRV_FL_ALLOW_LOW_POWER_PROBE flag in struct i2c_driver.flags
> 
> This is leftover from v5 actually, I'll change the documentation to mention
> the allow_low_power_probe as well.

Hmm. It seems I ended up sending the set with the flags field.

I'll keep it as-is if that's okay...
diff mbox series

Patch

diff --git a/Documentation/firmware-guide/acpi/dsd/allow-low-power-probe.rst b/Documentation/firmware-guide/acpi/dsd/allow-low-power-probe.rst
new file mode 100644
index 0000000000000..6fcc89162b898
--- /dev/null
+++ b/Documentation/firmware-guide/acpi/dsd/allow-low-power-probe.rst
@@ -0,0 +1,28 @@ 
+.. SPDX-License-Identifier: GPL-2.0
+
+======================================
+Probing I²C devices in low power state
+======================================
+
+Introduction
+============
+
+In some cases it may be preferred to leave certain devices powered off for the
+entire system bootup if powering on these devices has adverse side effects,
+beyond just powering on the said device. Linux recognizes the _DSD property
+"allow-low-power-probe" that can be used for this purpose.
+
+How it works
+============
+
+The property "allow-low-power-probe" boolean property may be used to tell Linux
+that the I²C framework should instruct the kernel ACPI framework to leave the
+device in the low power state. If the driver indicates its support for this by
+setting the I2C_DRV_FL_ALLOW_LOW_POWER_PROBE flag in struct i2c_driver.flags
+field and the "allow-low-power-probe" property is present, the device will not
+be powered on for probe.
+
+The downside is that as the device is not powered on, even if there's a problem
+with the device, the driver likely probes just fine but the first user will
+find out the device doesn't work, instead of a failure at probe time. This
+feature should thus be used sparingly.
diff --git a/Documentation/firmware-guide/acpi/index.rst b/Documentation/firmware-guide/acpi/index.rst
index ad3b5afdae77e..0070fcde9e669 100644
--- a/Documentation/firmware-guide/acpi/index.rst
+++ b/Documentation/firmware-guide/acpi/index.rst
@@ -11,6 +11,7 @@  ACPI Support
    dsd/graph
    dsd/data-node-references
    dsd/leds
+   dsd/allow-low-power-probe
    enumeration
    osi
    method-customizing