Message ID | 20200930075728.2410327-6-swboyd@chromium.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | iio: sx9310: Support setting various settings | expand |
On Wed, Sep 30, 2020 at 12:57:27AM -0700, Stephen Boyd wrote: > We need to set various bits in the hardware registers for this device to > operate properly depending on how it is installed. Add a handful of DT > properties to configure these things. > > Cc: Daniel Campello <campello@chromium.org> > Cc: Lars-Peter Clausen <lars@metafoo.de> > Cc: Peter Meerwald-Stadler <pmeerw@pmeerw.net> > Cc: Rob Herring <robh+dt@kernel.org> > Cc: <devicetree@vger.kernel.org> > Cc: Douglas Anderson <dianders@chromium.org> > Cc: Gwendal Grignou <gwendal@chromium.org> > Cc: Evan Green <evgreen@chromium.org> > Signed-off-by: Stephen Boyd <swboyd@chromium.org> > --- > .../iio/proximity/semtech,sx9310.yaml | 61 +++++++++++++++++++ > 1 file changed, 61 insertions(+) > > diff --git a/Documentation/devicetree/bindings/iio/proximity/semtech,sx9310.yaml b/Documentation/devicetree/bindings/iio/proximity/semtech,sx9310.yaml > index 5739074d3592..a85b8fa25861 100644 > --- a/Documentation/devicetree/bindings/iio/proximity/semtech,sx9310.yaml > +++ b/Documentation/devicetree/bindings/iio/proximity/semtech,sx9310.yaml > @@ -40,6 +40,61 @@ properties: > "#io-channel-cells": > const: 1 > > + semtech,cs0-ground: > + description: Indicates the CS0 sensor is connected to ground. > + type: boolean > + > + semtech,combined-sensors: > + $ref: /schemas/types.yaml#/definitions/uint32-array > + description: | > + List of which sensors are combined and represented by CS3. > + Possible values are - > + 3 - CS3 (internal) > + 0 1 - CS0 + CS1 > + 1 2 - CS1 + CS2 (default) > + 0 1 2 3 - CS0 + CS1 + CS2 + CS3 items: enum: [ 0, 1, 2, 3 ] With that, Reviewed-by: Rob Herring <robh@kernel.org> > + minItems: 1 > + maxItems: 4 > + > + semtech,resolution: > + description: > + Capacitance measure resolution. Refer to datasheet for more details. > + enum: > + - coarsest > + - very-coarse > + - coarse > + - medium-coarse > + - medium > + - fine > + - very-fine > + - finest > + > + semtech,startup-sensor: > + $ref: /schemas/types.yaml#definitions/uint32 > + enum: [0, 1, 2, 3] > + default: 0 > + description: > + Sensor used for start-up proximity detection. The combined > + sensor is represented by the value 3. This is used for initial > + compensation. > + > + semtech,proxraw-strength: > + $ref: /schemas/types.yaml#definitions/uint32 > + enum: [0, 2, 4, 8] > + default: 2 > + description: > + PROXRAW filter strength. A value of 0 represents off, and other values > + represent 1-1/N. > + > + semtech,avg-pos-strength: > + $ref: /schemas/types.yaml#definitions/uint32 > + enum: [0, 16, 64, 128, 256, 512, 1024, 4294967295] > + default: 16 > + description: > + Average positive filter strength. A value of 0 represents off and > + UINT_MAX (4294967295) represents infinite. Other values > + represent 1-1/N. > + > required: > - compatible > - reg > @@ -61,5 +116,11 @@ examples: > vdd-supply = <&pp3300_a>; > svdd-supply = <&pp1800_prox>; > #io-channel-cells = <1>; > + semtech,cs0-ground; > + semtech,combined-sensors = <1 2 3>; > + semtech,resolution = "fine"; > + semtech,startup-sensor = <1>; > + semtech,proxraw-strength = <2>; > + semtech,avg-pos-strength = <64>; > }; > }; > -- > Sent by a computer, using git, on the internet >
diff --git a/Documentation/devicetree/bindings/iio/proximity/semtech,sx9310.yaml b/Documentation/devicetree/bindings/iio/proximity/semtech,sx9310.yaml index 5739074d3592..a85b8fa25861 100644 --- a/Documentation/devicetree/bindings/iio/proximity/semtech,sx9310.yaml +++ b/Documentation/devicetree/bindings/iio/proximity/semtech,sx9310.yaml @@ -40,6 +40,61 @@ properties: "#io-channel-cells": const: 1 + semtech,cs0-ground: + description: Indicates the CS0 sensor is connected to ground. + type: boolean + + semtech,combined-sensors: + $ref: /schemas/types.yaml#/definitions/uint32-array + description: | + List of which sensors are combined and represented by CS3. + Possible values are - + 3 - CS3 (internal) + 0 1 - CS0 + CS1 + 1 2 - CS1 + CS2 (default) + 0 1 2 3 - CS0 + CS1 + CS2 + CS3 + minItems: 1 + maxItems: 4 + + semtech,resolution: + description: + Capacitance measure resolution. Refer to datasheet for more details. + enum: + - coarsest + - very-coarse + - coarse + - medium-coarse + - medium + - fine + - very-fine + - finest + + semtech,startup-sensor: + $ref: /schemas/types.yaml#definitions/uint32 + enum: [0, 1, 2, 3] + default: 0 + description: + Sensor used for start-up proximity detection. The combined + sensor is represented by the value 3. This is used for initial + compensation. + + semtech,proxraw-strength: + $ref: /schemas/types.yaml#definitions/uint32 + enum: [0, 2, 4, 8] + default: 2 + description: + PROXRAW filter strength. A value of 0 represents off, and other values + represent 1-1/N. + + semtech,avg-pos-strength: + $ref: /schemas/types.yaml#definitions/uint32 + enum: [0, 16, 64, 128, 256, 512, 1024, 4294967295] + default: 16 + description: + Average positive filter strength. A value of 0 represents off and + UINT_MAX (4294967295) represents infinite. Other values + represent 1-1/N. + required: - compatible - reg @@ -61,5 +116,11 @@ examples: vdd-supply = <&pp3300_a>; svdd-supply = <&pp1800_prox>; #io-channel-cells = <1>; + semtech,cs0-ground; + semtech,combined-sensors = <1 2 3>; + semtech,resolution = "fine"; + semtech,startup-sensor = <1>; + semtech,proxraw-strength = <2>; + semtech,avg-pos-strength = <64>; }; };
We need to set various bits in the hardware registers for this device to operate properly depending on how it is installed. Add a handful of DT properties to configure these things. Cc: Daniel Campello <campello@chromium.org> Cc: Lars-Peter Clausen <lars@metafoo.de> Cc: Peter Meerwald-Stadler <pmeerw@pmeerw.net> Cc: Rob Herring <robh+dt@kernel.org> Cc: <devicetree@vger.kernel.org> Cc: Douglas Anderson <dianders@chromium.org> Cc: Gwendal Grignou <gwendal@chromium.org> Cc: Evan Green <evgreen@chromium.org> Signed-off-by: Stephen Boyd <swboyd@chromium.org> --- .../iio/proximity/semtech,sx9310.yaml | 61 +++++++++++++++++++ 1 file changed, 61 insertions(+)