Messages in this thread | | | From | Doug Anderson <> | Date | Thu, 30 Jun 2016 21:32:05 -0700 | Subject | Re: [PATCH 2/4] spi: Document option to wake a device by toggling CS |
| |
Hi,
On Thu, Jun 30, 2016 at 12:12 AM, Geert Uytterhoeven <geert@linux-m68k.org> wrote: > CC devicetree
And Rob and Mark...
./scripts/get_maintainer.pl -f Documentation/devicetree/bindings/spi/spi-bus.txt
Mark Brown <broonie@kernel.org> (maintainer:SPI SUBSYSTEM) Rob Herring <robh+dt@kernel.org> (maintainer:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS) Mark Rutland <mark.rutland@arm.com> (maintainer:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS) linux-spi@vger.kernel.org (open list:SPI SUBSYSTEM) devicetree@vger.kernel.org (open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS) linux-kernel@vger.kernel.org (open list)
> On Thu, Jun 30, 2016 at 5:54 AM, <apronin@chromium.org> wrote: >> From: Andrey Pronin <apronin@chromium.org> >> >> Some SPI devices may go to sleep after a period of inactivity >> on SPI. For such devices, if enough time has passed since the >> last SPI transaction, toggle CS and wait for the device to >> start before communicating with it. >> >> Signed-off-by: Andrey Pronin <apronin@chromium.org> >> --- >> Documentation/devicetree/bindings/spi/spi-bus.txt | 7 +++++++ >> 1 file changed, 7 insertions(+)
Overall note is that devicetree bindings patches should be _before_ the code that uses them, so you should swap patch #1 and patch #2.
>> >> diff --git a/Documentation/devicetree/bindings/spi/spi-bus.txt b/Documentation/devicetree/bindings/spi/spi-bus.txt >> index 42d5954..1b7ffd4 100644 >> --- a/Documentation/devicetree/bindings/spi/spi-bus.txt >> +++ b/Documentation/devicetree/bindings/spi/spi-bus.txt >> @@ -63,6 +63,13 @@ contain the following properties. >> used for MISO. Defaults to 1 if not present. >> - spi-rx-delay-us - (optional) Microsecond delay after a read transfer. >> - spi-tx-delay-us - (optional) Microsecond delay after a write transfer. >> +- cs-wake-after-sleep - (optional) Device may go to sleep after a period >> + of SPI inactivity. If this flag is set, toggle CS and >> + wait for it to wake before communicating to it.
You probably also need a property for how long it needs to be asserted when you "toggle" it?
>> +- cs-sleep-delay - (optional) Delay after which the device may go to >> + sleep if there was no SPI activity (msec). >> +- cs-wake-duration - (optional) Time it takes the device to wake up after >> + toggling CS if it went to sleep (msec).
I believe that from your code the second two properties are both required if the first property is set. That should be in the bindings.
| |