Message ID | 1487347429-31761-4-git-send-email-fabrice.gasnier@st.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On 17/02/17 16:03, Fabrice Gasnier wrote: > Document Industrial I/O GPIO trigger support. > > Signed-off-by: Fabrice Gasnier <fabrice.gasnier@st.com> Whilst I think this needs redoing for the interrupt trigger driver, please be aware that bindings must be OS agnostic i.e. you can't name things after linux specific subsystem. We get a lot of stick for the iio-hwmon bindings specifically for doing this! Which makes this 'interesting' to describe. Once we have it updated feedback from Rob and Mark will definitely be needed on this one. Jonathan > --- > .../bindings/iio/trigger/iio-trig-gpio.txt | 26 ++++++++++++++++++++++ > 1 file changed, 26 insertions(+) > create mode 100644 Documentation/devicetree/bindings/iio/trigger/iio-trig-gpio.txt > > diff --git a/Documentation/devicetree/bindings/iio/trigger/iio-trig-gpio.txt b/Documentation/devicetree/bindings/iio/trigger/iio-trig-gpio.txt > new file mode 100644 > index 0000000..a8dbf5c > --- /dev/null > +++ b/Documentation/devicetree/bindings/iio/trigger/iio-trig-gpio.txt > @@ -0,0 +1,26 @@ > +Industrial I/O - GPIO based trigger > + > +GPIOs may be used as IIO trigger provider, when trigger is connected to > +GPIO lines. > + > +Required properties: > +- compatible: Should be "iio-gpio-trigger" > +- gpios: Should specify one GPIO line used as trigger source. > + See Documentation/devicetree/bindings/gpio/gpio.txt > +- #io-trigger-cells: Should be 0, as simple trigger provider. > + See Documentation/devicetree/bindings/iio/iio-bindings.txt > + > +Optional properties: > +- label: String to specifiy trigger name. > +- gpio-trigger-rising-edge: A rising edge on GPIO will trigger. > +- gpio-trigger-falling-edge: A falling edge on GPIO will trigger. > + Note: Both rising and falling edge may be used. In case none of > + rising or falling edge is selected, rising edge is selected by > + default. > + > +Example: > + gpiotrig0: iio-gpio-trigger0 { > + #io-trigger-cells = <0>; > + compatible = "iio-gpio-trigger"; > + gpios = <&gpioa 11 0>; > + } >
On Fri, Feb 17, 2017 at 5:03 PM, Fabrice Gasnier <fabrice.gasnier@st.com> wrote: > Document Industrial I/O GPIO trigger support. > > Signed-off-by: Fabrice Gasnier <fabrice.gasnier@st.com> (...) > +- gpio-trigger-rising-edge: A rising edge on GPIO will trigger. > +- gpio-trigger-falling-edge: A falling edge on GPIO will trigger. > + Note: Both rising and falling edge may be used. In case none of > + rising or falling edge is selected, rising edge is selected by > + default. We have GPIO_ACTIVE*_HIGH and GPIO_ACTIVE_LOW in the gpios second cell already. Can't we simply use that and specify that for this usecase, reading that cell as GPIO_ACTIVE_HIGH == trigger on rising edge and GPIO_ACTIVE_LOW == trigger on falling edge? Yours, Linus Walleij
On 02/23/2017 04:03 PM, Linus Walleij wrote: > On Fri, Feb 17, 2017 at 5:03 PM, Fabrice Gasnier <fabrice.gasnier@st.com> wrote: > >> Document Industrial I/O GPIO trigger support. >> >> Signed-off-by: Fabrice Gasnier <fabrice.gasnier@st.com> > (...) >> +- gpio-trigger-rising-edge: A rising edge on GPIO will trigger. >> +- gpio-trigger-falling-edge: A falling edge on GPIO will trigger. >> + Note: Both rising and falling edge may be used. In case none of >> + rising or falling edge is selected, rising edge is selected by >> + default. > > We have GPIO_ACTIVE*_HIGH and GPIO_ACTIVE_LOW in the > gpios second cell already. > > Can't we simply use that and specify that for this usecase, reading > that cell as GPIO_ACTIVE_HIGH == trigger on rising edge and > GPIO_ACTIVE_LOW == trigger on falling edge? Hi Linus, Thanks for reviewing, I think I'll simply drop patch 3 & 4, as suggested by Lars and Jonathan, on patch 4, to use interrupt binding directly. Then standard interrupt binding can be used instead. Only thing is to add OF support for iio_interrupt_trigger. BR, Fabrice > > Yours, > Linus Walleij >
diff --git a/Documentation/devicetree/bindings/iio/trigger/iio-trig-gpio.txt b/Documentation/devicetree/bindings/iio/trigger/iio-trig-gpio.txt new file mode 100644 index 0000000..a8dbf5c --- /dev/null +++ b/Documentation/devicetree/bindings/iio/trigger/iio-trig-gpio.txt @@ -0,0 +1,26 @@ +Industrial I/O - GPIO based trigger + +GPIOs may be used as IIO trigger provider, when trigger is connected to +GPIO lines. + +Required properties: +- compatible: Should be "iio-gpio-trigger" +- gpios: Should specify one GPIO line used as trigger source. + See Documentation/devicetree/bindings/gpio/gpio.txt +- #io-trigger-cells: Should be 0, as simple trigger provider. + See Documentation/devicetree/bindings/iio/iio-bindings.txt + +Optional properties: +- label: String to specifiy trigger name. +- gpio-trigger-rising-edge: A rising edge on GPIO will trigger. +- gpio-trigger-falling-edge: A falling edge on GPIO will trigger. + Note: Both rising and falling edge may be used. In case none of + rising or falling edge is selected, rising edge is selected by + default. + +Example: + gpiotrig0: iio-gpio-trigger0 { + #io-trigger-cells = <0>; + compatible = "iio-gpio-trigger"; + gpios = <&gpioa 11 0>; + }
Document Industrial I/O GPIO trigger support. Signed-off-by: Fabrice Gasnier <fabrice.gasnier@st.com> --- .../bindings/iio/trigger/iio-trig-gpio.txt | 26 ++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 Documentation/devicetree/bindings/iio/trigger/iio-trig-gpio.txt