On Thu, Nov 07, 2019 at 02:00:29PM +0100, Andreas Klinger wrote: > Add dt-bindings for parallax PING))) and LaserPING iio sensors, which > are used for measuring distances. > > Signed-off-by: Andreas Klinger <ak@xxxxxxxxxxxxx> > --- > .../bindings/iio/proximity/parallax-ping.yaml | 51 ++++++++++++++++++++++ > 1 file changed, 51 insertions(+) > create mode 100644 Documentation/devicetree/bindings/iio/proximity/parallax-ping.yaml > > diff --git a/Documentation/devicetree/bindings/iio/proximity/parallax-ping.yaml b/Documentation/devicetree/bindings/iio/proximity/parallax-ping.yaml > new file mode 100644 > index 000000000000..ab8dbdf4f04a > --- /dev/null > +++ b/Documentation/devicetree/bindings/iio/proximity/parallax-ping.yaml > @@ -0,0 +1,51 @@ > +# SPDX-License-Identifier: GPL-2.0-or-later > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/iio/proximity/parallax-ping.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Parallax PING))) and LaserPING range finder > + > +maintainers: > + - Andreas Klinger <ak@xxxxxxxxxxxxx> > + > +description: | > + Bit-banging driver using one GPIO: > + - ping-gpio is raised by the driver to start measurement ping-gpios or "Ping GPIO" > + - direction of ping-gpio is then switched into input with an interrupt > + for receiving distance value as PWM signal > + > + Specifications about the devices can be found at: > + http://parallax.com/sites/default/files/downloads/28041-LaserPING-2m-Rangefinder-Guide.pdf > + http://parallax.com/sites/default/files/downloads/28015-PING-Documentation-v1.6.pdf > + > +properties: > + compatible: > + enum: > + - parallax,ping > + - parallax,laserping > + > + ping-gpios: > + description: > + Definition of the GPIO for the triggering and echo (output and input) > + This GPIO is set for about 5 us by the driver to tell the device it > + should initiate the measurement cycle. Afterwards the GPIO is switched > + to input direction with an interrupt. The device sets it and the > + length of the input signal corresponds to the measured distance. > + It needs to be an GPIO which is able to deliver an interrupt because > + the time between two interrupts is measured in the driver. > + See Documentation/devicetree/bindings/gpio/gpio.txt for information > + on how to specify a consumer gpio. > + maxItems: 1 > + > +required: > + - compatible > + - ping-gpios > + > +examples: > + - | > + #include <dt-bindings/gpio/gpio.h> > + proximity { > + compatible = "parallax,laserping"; > + ping-gpios = <&gpio0 26 GPIO_ACTIVE_HIGH>; > + }; > -- > 2.11.0