On Fri, 27 Mar 2020 13:49:53 +0300 Ivan Mikhaylov <i.mikhaylov@xxxxxxxxx> wrote: > Mostly standard i2c driver with some additional led-current option > for vcnl3020. > > Signed-off-by: Ivan Mikhaylov <i.mikhaylov@xxxxxxxxx> A few things inline. Thanks, Jonathan > --- > .../bindings/iio/proximity/vcnl3020.yaml | 52 +++++++++++++++++++ > 1 file changed, 52 insertions(+) > create mode 100644 Documentation/devicetree/bindings/iio/proximity/vcnl3020.yaml > > diff --git a/Documentation/devicetree/bindings/iio/proximity/vcnl3020.yaml b/Documentation/devicetree/bindings/iio/proximity/vcnl3020.yaml > new file mode 100644 > index 000000000000..116aa0e0174d > --- /dev/null > +++ b/Documentation/devicetree/bindings/iio/proximity/vcnl3020.yaml > @@ -0,0 +1,52 @@ > +# SPDX-License-Identifier: GPL-2.0 > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/iio/proximity/vcnl3020.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Integrated Proximity Sensor With Infrared Emitter > + > +maintainers: > + - Ivan Mikhaylov <i.mikhaylov@xxxxxxxxx> > + > +description: | > + The VCNL3020 is a fully integrated proximity sensor. Fully integrated means > + that the infrared emitter is included in the package. It has 16-bit > + resolution. It includes a signal processing IC and features standard I2C > + communication interface. It features an interrupt function. > + > + Specifications about the devices can be found at: > + https://www.vishay.com/docs/84150/vcnl3020.pdf > + > +properties: > + compatible: > + enum: > + - vishay,vcnl3020 > + > + reg: > + maxItems: 1 > + > + led-current: > + description: Given it has real values, that would be human readable, lets use them! Also I don't think this is a standard binding so also need a vendor prefix. vishay,led-current-microamp taking 0, 10, 20, 30 etc.. Threat it as an enum with all the values listed and we can also enforce that it is a valid value via the binding. > + IR LED current value with valid Range = 0 to 20d. e.g. 0 = 0 mA, > + 1 = 10 mA, 20 = 200 mA (2 = 20 mA = DEFAULT). LED Current is > + limited to 200 mA for values higher than decimal 20. > + > +required: > + - compatible > + - reg > + - led-current You list a default above so is it required? > + > +examples: > + - | > + i2c { > + > + #address-cells = <1>; > + #size-cells = <0>; > + > + iio-proximity@13 { just proximity. IIO is a linux concept, devicetree is general. > + compatible = "vishay,vcnl3020"; > + reg = <0x13>; > + led-current = <0x14>; > + }; > + };