Re: [PATCH 3/8] dt-bindings: input: microchip,cap11xx: Cleanup and refine LED constraints

From: Jun Yan

Date: Tue Jun 09 2026 - 10:04:38 EST


> On Sat, Jun 06, 2026 at 11:03:56PM +0800, Jun Yan wrote:
> > Add detailed datasheet links for all supported CAP11xx devices.
> >=20
> > Unify LED node pattern to support all chip variants in preparation
> > for CAP1114 support.
> >=20
> > Remove redundant LED properties inherited from common.yaml
> >=20
> > Apply per-chip LED channel limits:
> > - CAP1126: max 2 channels (0-1)
> > - CAP1188: max 8 channels (0-7)
> > - CAP1106, CAP12xx: no LED support
> >=20
> > Signed-off-by: Jun Yan <jerrysteve1101@xxxxxxxxx>
> > ---
> > .../bindings/input/microchip,cap11xx.yaml | 51 ++++++++++++++-----
> > 1 file changed, 37 insertions(+), 14 deletions(-)
> >=20
> > diff --git a/Documentation/devicetree/bindings/input/microchip,cap11xx.ya=
> ml 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 capaciti=
> ve
> > touch controllers and LED drivers. The device communication via I2C on=
> ly.
> > =20
> > + 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>
> > =20
> > @@ -124,25 +133,21 @@ properties:
> > The number of entries must correspond to the number of channels.
> > =20
> > patternProperties:
> > - "^led@[0-7]$":
> > + "^led@[0-9a-f]$":
> > type: object
> > description: CAP11xx LEDs
> > $ref: /schemas/leds/common.yaml#
> > =20
> > 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
> > =20
> > required:
> > - reg
> > =20
> > - 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.
>

I checked other LED dt-bindings and related driver code.
This change is not suitable and will be dropped in V2.

> pw-bot: changes-requested
> (a commit message change is required at least)
>
> > =20
> > 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.

Agreed. I will split these changes into a standalone patch for V2.

> Thanks,
> Conor.
>
> > =20
> > - if:
> > properties:
> > @@ -183,6 +201,9 @@ additionalProperties: false
> > =20
> > examples:
> > - |
> > + #include <dt-bindings/gpio/gpio.h>
> > + #include <dt-bindings/leds/common.h>
> > +
> > i2c {
> > #address-cells =3D <1>;
> > #size-cells =3D <0>;
> > @@ -208,19 +229,21 @@ examples:
> > #size-cells =3D <0>;
> > =20
> > led@0 {
> > - label =3D "cap11xx:green:usr0";
> > reg =3D <0>;
> > + function =3D LED_FUNCTION_INDICATOR;
> > + color =3D <LED_COLOR_ID_GREEN>;
> > };
> > =20
> > led@1 {
> > - label =3D "cap11xx:green:usr1";
> > reg =3D <1>;
> > + function =3D LED_FUNCTION_INDICATOR;
> > + color =3D <LED_COLOR_ID_GREEN>;
> > };
> > =20
> > led@2 {
> > - label =3D "cap11xx:green:alive";
> > reg =3D <2>;
> > - linux,default-trigger =3D "heartbeat";
> > + function =3D LED_FUNCTION_INDICATOR;
> > + color =3D <LED_COLOR_ID_GREEN>;
> > };
> > };
> > };
> > --=20
> > 2.54.0
> >=20