Message ID | 1467258867-117727-2-git-send-email-apronin@chromium.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
CC devicetree 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(+) > > 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. > +- 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). > > Some SPI controllers and devices support Dual and Quad SPI transfer mode. > It allows data in the SPI system to be transferred in 2 wires(DUAL) or 4 wires(QUAD). > -- > 2.6.6 -- To unsubscribe from this list: send the line "unsubscribe linux-spi" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
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. -- To unsubscribe from this list: send the line "unsubscribe linux-spi" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
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. +- 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). Some SPI controllers and devices support Dual and Quad SPI transfer mode. It allows data in the SPI system to be transferred in 2 wires(DUAL) or 4 wires(QUAD).