Re: [PATCH 3/8] dt-bindings: input: microchip,cap11xx: Cleanup and refine LED constraints
From: Conor Dooley
Date: Mon Jun 08 2026 - 13:44:43 EST
On Sat, Jun 06, 2026 at 11:03:56PM +0800, Jun Yan wrote:
> Add detailed datasheet links for all supported CAP11xx devices.
>
> Unify LED node pattern to support all chip variants in preparation
> for CAP1114 support.
>
> Remove redundant LED properties inherited from common.yaml
>
> Apply per-chip LED channel limits:
> - CAP1126: max 2 channels (0-1)
> - CAP1188: max 8 channels (0-7)
> - CAP1106, CAP12xx: no LED support
>
> Signed-off-by: Jun Yan <jerrysteve1101@xxxxxxxxx>
> ---
> .../bindings/input/microchip,cap11xx.yaml | 51 ++++++++++++++-----
> 1 file changed, 37 insertions(+), 14 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/input/microchip,cap11xx.yaml b/Documentation/devicetree/bindings/input/microchip,cap11xx.yaml
> index 7ade03f1b32b..99d00f572a2d 100644
> --- a/Documentation/devicetree/bindings/input/microchip,cap11xx.yaml
> +++ b/Documentation/devicetree/bindings/input/microchip,cap11xx.yaml
> @@ -10,6 +10,15 @@ description: |
> The Microchip CAP1xxx Family of RightTouchTM multiple-channel capacitive
> touch controllers and LED drivers. The device communication via I2C only.
>
> + For more product information please see the links below:
> + CAP1106: https://ww1.microchip.com/downloads/en/DeviceDoc/00001624B.pdf
> + CAP1126: https://ww1.microchip.com/downloads/en/DeviceDoc/00001623B.pdf
> + CAP1188: https://ww1.microchip.com/downloads/en/DeviceDoc/00001620C.pdf
> + CAP1203: https://ww1.microchip.com/downloads/en/DeviceDoc/00001572B.pdf
> + CAP1206: https://ww1.microchip.com/downloads/en/DeviceDoc/00001567B.pdf
> + CAP1293: https://ww1.microchip.com/downloads/en/DeviceDoc/00001566B.pdf
> + CAP1298: https://ww1.microchip.com/downloads/en/DeviceDoc/00001571B.pdf
> +
> maintainers:
> - Rob Herring <robh@xxxxxxxxxx>
>
> @@ -124,25 +133,21 @@ properties:
> The number of entries must correspond to the number of channels.
>
> patternProperties:
> - "^led@[0-7]$":
> + "^led@[0-9a-f]$":
> type: object
> description: CAP11xx LEDs
> $ref: /schemas/leds/common.yaml#
>
> properties:
> reg:
> - enum: [0, 1, 2, 3, 4, 5, 6, 7]
> -
> - label: true
> -
> - linux,default-trigger: true
> -
> - default-state: true
> + description: LED channel number
> + minimum: 0
> + maximum: 7
>
> required:
> - reg
>
> - additionalProperties: false
> + unevaluatedProperties: false
> Remove redundant LED properties inherited from common.yaml
But the pattern here suggests they aren't redundant, this is how you say
"these properties are the only common ones allowed". You need to explain
why other ones are valid to change this.
pw-bot: changes-requested
(a commit message change is required at least)
>
> allOf:
> - $ref: input.yaml
> @@ -158,7 +163,20 @@ allOf:
> - microchip,cap1298
> then:
> patternProperties:
> - "^led@[0-7]$": false
> + "^led@": false
> +
> + - if:
> + properties:
> + compatible:
> + contains:
> + enum:
> + - microchip,cap1126
> + then:
> + patternProperties:
> + "^led@":
> + properties:
> + reg:
> + maximum: 1
I think these changes to permitted properties should be a standalone
patch.
Thanks,
Conor.
>
> - if:
> properties:
> @@ -183,6 +201,9 @@ additionalProperties: false
>
> examples:
> - |
> + #include <dt-bindings/gpio/gpio.h>
> + #include <dt-bindings/leds/common.h>
> +
> i2c {
> #address-cells = <1>;
> #size-cells = <0>;
> @@ -208,19 +229,21 @@ examples:
> #size-cells = <0>;
>
> led@0 {
> - label = "cap11xx:green:usr0";
> reg = <0>;
> + function = LED_FUNCTION_INDICATOR;
> + color = <LED_COLOR_ID_GREEN>;
> };
>
> led@1 {
> - label = "cap11xx:green:usr1";
> reg = <1>;
> + function = LED_FUNCTION_INDICATOR;
> + color = <LED_COLOR_ID_GREEN>;
> };
>
> led@2 {
> - label = "cap11xx:green:alive";
> reg = <2>;
> - linux,default-trigger = "heartbeat";
> + function = LED_FUNCTION_INDICATOR;
> + color = <LED_COLOR_ID_GREEN>;
> };
> };
> };
> --
> 2.54.0
>
Attachment:
signature.asc
Description: PGP signature