Bartosz Golaszewski <brgl@xxxxxxxx> writes: > From: Bartosz Golaszewski <bartosz.golaszewski@xxxxxxxxxx> > > Describe what the subsystem does, how the consumers and providers work > and add API reference generated from kerneldocs. > > Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@xxxxxxxxxx> > --- > Documentation/driver-api/index.rst | 1 + > Documentation/driver-api/pwrseq.rst | 98 +++++++++++++++++++++++++++++ > MAINTAINERS | 1 + > 3 files changed, 100 insertions(+) > create mode 100644 Documentation/driver-api/pwrseq.rst Thanks for this ... just one quick nit... > +The consumer API is aimed to be as simple as possible. The driver interested in > +getting a descriptor from the power sequencer should call :c:func:`pwrseq_get()` > +and specify the name of the target it wants to reach in the sequence after > +calling :c:func:`pwrseq_power_up()`. The descriptor can be released by calling > +:c:func:`pwrseq_put()` and the consumer can request the powering down of its > +target with :c:func:`pwrseq_power_off()`. Note that there is no guarantee that > +:c:func:`pwrseq_power_off()` will have any effect as there may be multiple users > +of the underlying resources who may keep them active. There is no need to use :c:func: here; just say function() and the Right Things will just magically happen. Thanks, jon