lkml.org 
[lkml]   [2022]   [Oct]   [31]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    SubjectRe: [PATCH v2] dt-bindings: input: Convert ti,drv260x to DT schema
    From
    On 10/31/22 11:41 AM, Luca Weiss wrote:
    > Convert the drv260x haptics binding to DT schema format.
    >
    > The only notable change from .txt format is that vbat-supply is not
    > actually required, so don't make it a required property.
    >
    > Signed-off-by: Luca Weiss <luca@z3ntu.xyz>
    > ---
    > @Andrew Davis: You maintain some other TI bindings, would you be willing
    > to also maintain this one? It was originally written by Dan Murphy but
    > apparently Dan no longer works for TI.
    >

    Sure, I can take them,

    Acked-by: Andrew Davis <afd@ti.com>

    > Changes since v1:
    > * add $ref to types as suggested by Rob
    > * change maintainer
    >
    > .../devicetree/bindings/input/ti,drv260x.txt | 50 ---------
    > .../devicetree/bindings/input/ti,drv260x.yaml | 102 ++++++++++++++++++
    > 2 files changed, 102 insertions(+), 50 deletions(-)
    > delete mode 100644 Documentation/devicetree/bindings/input/ti,drv260x.txt
    > create mode 100644 Documentation/devicetree/bindings/input/ti,drv260x.yaml
    >
    > diff --git a/Documentation/devicetree/bindings/input/ti,drv260x.txt b/Documentation/devicetree/bindings/input/ti,drv260x.txt
    > deleted file mode 100644
    > index 4c5312eaaa85..000000000000
    > --- a/Documentation/devicetree/bindings/input/ti,drv260x.txt
    > +++ /dev/null
    > @@ -1,50 +0,0 @@
    > -* Texas Instruments - drv260x Haptics driver family
    > -
    > -Required properties:
    > - - compatible - One of:
    > - "ti,drv2604" - DRV2604
    > - "ti,drv2605" - DRV2605
    > - "ti,drv2605l" - DRV2605L
    > - - reg - I2C slave address
    > - - vbat-supply - Required supply regulator
    > - - mode - Power up mode of the chip (defined in include/dt-bindings/input/ti-drv260x.h)
    > - DRV260X_LRA_MODE - Linear Resonance Actuator mode (Piezoelectric)
    > - DRV260X_LRA_NO_CAL_MODE - This is a LRA Mode but there is no calibration
    > - sequence during init. And the device is configured for real
    > - time playback mode (RTP mode).
    > - DRV260X_ERM_MODE - Eccentric Rotating Mass mode (Rotary vibrator)
    > - - library-sel - These are ROM based waveforms pre-programmed into the IC.
    > - This should be set to set the library to use at power up.
    > - (defined in include/dt-bindings/input/ti-drv260x.h)
    > - DRV260X_LIB_EMPTY - Do not use a pre-programmed library
    > - DRV260X_ERM_LIB_A - Pre-programmed Library
    > - DRV260X_ERM_LIB_B - Pre-programmed Library
    > - DRV260X_ERM_LIB_C - Pre-programmed Library
    > - DRV260X_ERM_LIB_D - Pre-programmed Library
    > - DRV260X_ERM_LIB_E - Pre-programmed Library
    > - DRV260X_ERM_LIB_F - Pre-programmed Library
    > - DRV260X_LIB_LRA - Pre-programmed LRA Library
    > -
    > -Optional properties:
    > - - enable-gpio - gpio pin to enable/disable the device.
    > - - vib-rated-mv - The rated voltage of the actuator in millivolts.
    > - If this is not set then the value will be defaulted to
    > - 3.2 v.
    > - - vib-overdrive-mv - The overdrive voltage of the actuator in millivolts.
    > - If this is not set then the value will be defaulted to
    > - 3.2 v.
    > -Example:
    > -
    > -haptics: haptics@5a {
    > - compatible = "ti,drv2605l";
    > - reg = <0x5a>;
    > - vbat-supply = <&vbat>;
    > - enable-gpio = <&gpio1 28 GPIO_ACTIVE_HIGH>;
    > - mode = <DRV260X_LRA_MODE>;
    > - library-sel = <DRV260X_LIB_LRA>;
    > - vib-rated-mv = <3200>;
    > - vib-overdrive-mv = <3200>;
    > -}
    > -
    > -For more product information please see the link below:
    > -http://www.ti.com/product/drv2605
    > diff --git a/Documentation/devicetree/bindings/input/ti,drv260x.yaml b/Documentation/devicetree/bindings/input/ti,drv260x.yaml
    > new file mode 100644
    > index 000000000000..d8b9b9d5d9d9
    > --- /dev/null
    > +++ b/Documentation/devicetree/bindings/input/ti,drv260x.yaml
    > @@ -0,0 +1,102 @@
    > +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
    > +%YAML 1.2
    > +---
    > +$id: http://devicetree.org/schemas/input/ti,drv260x.yaml#
    > +$schema: http://devicetree.org/meta-schemas/core.yaml#
    > +
    > +title: Texas Instruments - drv260x Haptics driver family
    > +
    > +maintainers:
    > + - Andrew Davis <afd@ti.com>
    > +
    > +properties:
    > + compatible:
    > + enum:
    > + - ti,drv2604
    > + - ti,drv2605
    > + - ti,drv2605l
    > +
    > + reg:
    > + maxItems: 1
    > +
    > + vbat-supply:
    > + description: Power supply to the haptic motor
    > +
    > + mode:
    > + $ref: /schemas/types.yaml#/definitions/uint32
    > + description: |
    > + Power up mode of the chip
    > + (defined in include/dt-bindings/input/ti-drv260x.h)
    > +
    > + DRV260X_LRA_MODE
    > + Linear Resonance Actuator mode (Piezoelectric)
    > +
    > + DRV260X_LRA_NO_CAL_MODE
    > + This is a LRA Mode but there is no calibration sequence during init.
    > + And the device is configured for real time playback mode (RTP mode).
    > +
    > + DRV260X_ERM_MODE
    > + Eccentric Rotating Mass mode (Rotary vibrator)
    > + enum: [ 0, 1, 2 ]
    > +
    > + library-sel:
    > + $ref: /schemas/types.yaml#/definitions/uint32
    > + description: |
    > + These are ROM based waveforms pre-programmed into the IC.
    > + This should be set to set the library to use at power up.
    > + (defined in include/dt-bindings/input/ti-drv260x.h)
    > +
    > + DRV260X_LIB_EMPTY - Do not use a pre-programmed library
    > + DRV260X_ERM_LIB_A - Pre-programmed Library
    > + DRV260X_ERM_LIB_B - Pre-programmed Library
    > + DRV260X_ERM_LIB_C - Pre-programmed Library
    > + DRV260X_ERM_LIB_D - Pre-programmed Library
    > + DRV260X_ERM_LIB_E - Pre-programmed Library
    > + DRV260X_ERM_LIB_F - Pre-programmed Library
    > + DRV260X_LIB_LRA - Pre-programmed LRA Library
    > + enum: [ 0, 1, 2, 3, 4, 5, 6, 7 ]
    > +
    > + enable-gpio:
    > + maxItems: 1
    > +
    > + vib-rated-mv:
    > + $ref: /schemas/types.yaml#/definitions/uint32
    > + description: |
    > + The rated voltage of the actuator in millivolts.
    > + If this is not set then the value will be defaulted to 3200 mV.
    > +
    > + vib-overdrive-mv:
    > + $ref: /schemas/types.yaml#/definitions/uint32
    > + description: |
    > + The overdrive voltage of the actuator in millivolts.
    > + If this is not set then the value will be defaulted to 3200 mV.
    > +
    > +required:
    > + - compatible
    > + - reg
    > + - enable-gpio
    > + - mode
    > + - library-sel
    > +
    > +additionalProperties: false
    > +
    > +examples:
    > + - |
    > + #include <dt-bindings/gpio/gpio.h>
    > + #include <dt-bindings/input/ti-drv260x.h>
    > +
    > + i2c {
    > + #address-cells = <1>;
    > + #size-cells = <0>;
    > +
    > + haptics@5a {
    > + compatible = "ti,drv2605l";
    > + reg = <0x5a>;
    > + vbat-supply = <&vbat>;
    > + enable-gpio = <&gpio1 28 GPIO_ACTIVE_HIGH>;
    > + mode = <DRV260X_LRA_MODE>;
    > + library-sel = <DRV260X_LIB_LRA>;
    > + vib-rated-mv = <3200>;
    > + vib-overdrive-mv = <3200>;
    > + };
    > + };

    \
     
     \ /
      Last update: 2022-10-31 20:44    [W:6.309 / U:0.008 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site