Re: [PATCH] WIP: dt-bindings: input: microchip,cap11xx: Convert txt bindings to yaml

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sat, Oct 09, 2021 at 12:59:22PM +0200, David Heidelberg wrote:
> Convert binding for the Microchip CAP11xx series HW to the YAML syntax.
> 
> Signed-off-by: David Heidelberg <david@xxxxxxx>
> ---
>  .../devicetree/bindings/input/cap11xx.txt     |  78 ----------
>  .../bindings/input/microchip,cap11xx.yaml     | 146 ++++++++++++++++++
>  2 files changed, 146 insertions(+), 78 deletions(-)
>  delete mode 100644 Documentation/devicetree/bindings/input/cap11xx.txt
>  create mode 100644 Documentation/devicetree/bindings/input/microchip,cap11xx.yaml


> diff --git a/Documentation/devicetree/bindings/input/microchip,cap11xx.yaml b/Documentation/devicetree/bindings/input/microchip,cap11xx.yaml
> new file mode 100644
> index 000000000000..89079c019794
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/input/microchip,cap11xx.yaml
> @@ -0,0 +1,146 @@
> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: "http://devicetree.org/schemas/input/microchip,cap11xx.yaml#";
> +$schema: "http://devicetree.org/meta-schemas/core.yaml#";
> +
> +title: Device tree bindings for Microchip CAP11xx based capacitive touch sensors
> +
> +description: |
> +  The Microchip CAP1xxx Family of RightTouchTM multiple-channel capacitive
> +  touch controllers and LED drivers. The device communication via I2C only.
> +
> +maintainers:
> +  - Rob Herring <robh+dt@xxxxxxxxxx>

robh@xxxxxxxxxx

But why isn't this the author of the binding or driver.

> +
> +properties:
> +  compatible:
> +    enum:
> +      - microchip,cap1106
> +      - microchip,cap1126
> +      - microchip,cap1188
> +
> +  reg:
> +    maxItems: 1
> +
> +  '#address-cells':
> +    const: 1

blank line

> +  '#size-cells':
> +    const: 0
> +
> +  interrupts:
> +    maxItems: 1
> +    description: |
> +      Property describing the interrupt line the
> +      device's ALERT#/CM_IRQ# pin is connected to.
> +      The device only has one interrupt source.
> +
> +  autorepeat:
> +    description: |
> +      Enables the Linux input system's autorepeat feature on the input device.
> +
> +  linux,keycodes:
> +    minItems: 6
> +    maxItems: 6
> +    description: |
> +      Specifies an array of numeric keycode values to
> +      be used for the channels. If this property is
> +      omitted, KEY_A, KEY_B, etc are used as defaults.
> +      The array must have exactly six entries.
> +
> +  microchip,sensor-gain:
> +    $ref: /schemas/types.yaml#/definitions/uint32
> +    default: 1
> +    enum: [1, 2, 4, 8]
> +    description: |
> +      Defines the gain of the sensor circuitry. This
> +      effectively controls the sensitivity, as a
> +      smaller delta capacitance is required to
> +      generate the same delta count values.
> +
> +  microchip,irq-active-high:
> +    type: boolean
> +    description: |
> +      By default the interrupt pin is active low
> +      open drain. This property allows using the active
> +      high push-pull output.
> +
> +patternProperties:
> +  "^led@[0-7]$":
> +    type: object
> +    description: CAP11xx LEDs
> +    $ref: ../leds/common.yaml#

/schemas/leds/common.yaml#

> +
> +    properties:
> +      reg:
> +        enum: [0, 1, 2, 3, 4, 5, 6, 7]
> +
> +      label: true
> +
> +      linux,default-trigger: true
> +
> +      default-state: true
> +
> +    required:
> +      - reg
> +
> +    additionalProperties: false
> +
> +allOf:

     - $ref: input.yaml#

> +  - if:
> +      properties:
> +        compatible:
> +          contains:
> +            enum:
> +              - microchip,cap1106
> +    then:
> +      patternProperties:
> +        "^led@[0-7]$": false
> +
> +required:
> +  - compatible
> +  - interrupts
> +
> +additionalProperties: false
> +
> +examples:
> +  - |
> +    i2c {
> +      #address-cells = <1>;
> +      #size-cells = <0>;
> +
> +      cap1188@28 {
> +        compatible = "microchip,cap1188";
> +        interrupt-parent = <&gpio1>;
> +        interrupts = <0 0>;
> +        reg = <0x28>;
> +        autorepeat;
> +        microchip,sensor-gain = <2>;
> +
> +        linux,keycodes = <103>,	/* KEY_UP */
> +                         <106>,	/* KEY_RIGHT */
> +                         <108>,	/* KEY_DOWN */
> +                         <105>,	/* KEY_LEFT */
> +                         <109>,	/* KEY_PAGEDOWN */
> +                         <104>;	/* KEY_PAGEUP */
> +
> +        #address-cells = <1>;
> +        #size-cells = <0>;
> +
> +        led@0 {
> +                label = "cap11xx:green:usr0";
> +                reg = <0>;
> +        };
> +
> +        led@1 {
> +                label = "cap11xx:green:usr1";
> +                reg = <1>;
> +        };
> +
> +        led@2 {
> +                label = "cap11xx:green:alive";
> +                reg = <2>;
> +                linux,default-trigger = "heartbeat";
> +        };
> +      };
> +    };
> -- 
> 2.33.0
> 
> 



[Index of Archives]     [Linux Media Devel]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Linux Wireless Networking]     [Linux Omap]

  Powered by Linux