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 |
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 --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
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