A number of existing schemas use 'leds' property to provide
phandle-array of LED(s) to the consumer. Additionally, with the
upcoming privacy-led support in device-tree, v4l2 subnode could be a
LED consumer, meaning that all camera sensors should support 'leds'
and 'led-names' property via common 'video-interface-devices.yaml'.
To avoid dublication, commonize 'leds' property from existing schemas
to newly introduced 'led-consumer.yaml'.
Signed-off-by: Aleksandrs Vinarskis <alex@vinarskis.com>
---
.../devicetree/bindings/leds/backlight/led-backlight.yaml | 7 +------
Documentation/devicetree/bindings/leds/leds-group-multicolor.yaml | 6 +-----
.../devicetree/bindings/media/video-interface-devices.yaml | 3 +++
3 files changed, 5 insertions(+), 11 deletions(-)
diff --git a/Documentation/devicetree/bindings/leds/backlight/led-backlight.yaml b/Documentation/devicetree/bindings/leds/backlight/led-backlight.yaml
index f5554da6bc6c73e94c4a2c32b150b28351b25f16..5e19b4376715eeb05cb789255db209ed27f8822f 100644
--- a/Documentation/devicetree/bindings/leds/backlight/led-backlight.yaml
+++ b/Documentation/devicetree/bindings/leds/backlight/led-backlight.yaml
@@ -18,17 +18,12 @@ description:
allOf:
- $ref: common.yaml#
+ - $ref: /schemas/leds/leds-consumer.yaml#
properties:
compatible:
const: led-backlight
- leds:
- description: A list of LED nodes
- $ref: /schemas/types.yaml#/definitions/phandle-array
- items:
- maxItems: 1
-
required:
- compatible
- leds
diff --git a/Documentation/devicetree/bindings/leds/leds-group-multicolor.yaml b/Documentation/devicetree/bindings/leds/leds-group-multicolor.yaml
index 8ed059a5a724f68389a1d0c4396c85b9ccb2d9af..b4f326e8822a3bf452b22f5b9fa7189696f760a4 100644
--- a/Documentation/devicetree/bindings/leds/leds-group-multicolor.yaml
+++ b/Documentation/devicetree/bindings/leds/leds-group-multicolor.yaml
@@ -17,16 +17,12 @@ properties:
compatible:
const: leds-group-multicolor
- leds:
- description:
- An aray of monochromatic leds
- $ref: /schemas/types.yaml#/definitions/phandle-array
-
required:
- leds
allOf:
- $ref: leds-class-multicolor.yaml#
+ - $ref: /schemas/leds/leds-consumer.yaml#
unevaluatedProperties: false
diff --git a/Documentation/devicetree/bindings/media/video-interface-devices.yaml b/Documentation/devicetree/bindings/media/video-interface-devices.yaml
index cf7712ad297c01c946fa4dfdaf9a21646e125099..1e25cea0ff71da2cfd1c7c4642713199f3542c0a 100644
--- a/Documentation/devicetree/bindings/media/video-interface-devices.yaml
+++ b/Documentation/devicetree/bindings/media/video-interface-devices.yaml
@@ -10,6 +10,9 @@ maintainers:
- Jacopo Mondi <jacopo@jmondi.org>
- Sakari Ailus <sakari.ailus@linux.intel.com>
+allOf:
+ - $ref: /schemas/leds/leds-consumer.yaml#
+
properties:
flash-leds:
$ref: /schemas/types.yaml#/definitions/phandle-array
--
2.48.1
On Fri, Sep 05, 2025 at 09:59:30AM +0200, Aleksandrs Vinarskis wrote: > A number of existing schemas use 'leds' property to provide > phandle-array of LED(s) to the consumer. Additionally, with the > upcoming privacy-led support in device-tree, v4l2 subnode could be a > LED consumer, meaning that all camera sensors should support 'leds' > and 'led-names' property via common 'video-interface-devices.yaml'. > > To avoid dublication, commonize 'leds' property from existing schemas > to newly introduced 'led-consumer.yaml'. > > Signed-off-by: Aleksandrs Vinarskis <alex@vinarskis.com> > --- > .../devicetree/bindings/leds/backlight/led-backlight.yaml | 7 +------ > Documentation/devicetree/bindings/leds/leds-group-multicolor.yaml | 6 +----- > .../devicetree/bindings/media/video-interface-devices.yaml | 3 +++ > 3 files changed, 5 insertions(+), 11 deletions(-) > > diff --git a/Documentation/devicetree/bindings/leds/backlight/led-backlight.yaml b/Documentation/devicetree/bindings/leds/backlight/led-backlight.yaml > index f5554da6bc6c73e94c4a2c32b150b28351b25f16..5e19b4376715eeb05cb789255db209ed27f8822f 100644 > --- a/Documentation/devicetree/bindings/leds/backlight/led-backlight.yaml > +++ b/Documentation/devicetree/bindings/leds/backlight/led-backlight.yaml > @@ -18,17 +18,12 @@ description: > > allOf: > - $ref: common.yaml# > + - $ref: /schemas/leds/leds-consumer.yaml# Drop. > > properties: > compatible: > const: led-backlight > > - leds: > - description: A list of LED nodes > - $ref: /schemas/types.yaml#/definitions/phandle-array > - items: > - maxItems: 1 You need to keep the property here: leds: true > - > required: > - compatible > - leds > diff --git a/Documentation/devicetree/bindings/leds/leds-group-multicolor.yaml b/Documentation/devicetree/bindings/leds/leds-group-multicolor.yaml > index 8ed059a5a724f68389a1d0c4396c85b9ccb2d9af..b4f326e8822a3bf452b22f5b9fa7189696f760a4 100644 > --- a/Documentation/devicetree/bindings/leds/leds-group-multicolor.yaml > +++ b/Documentation/devicetree/bindings/leds/leds-group-multicolor.yaml > @@ -17,16 +17,12 @@ properties: > compatible: > const: leds-group-multicolor > > - leds: > - description: > - An aray of monochromatic leds > - $ref: /schemas/types.yaml#/definitions/phandle-array > - > required: > - leds > > allOf: > - $ref: leds-class-multicolor.yaml# > + - $ref: /schemas/leds/leds-consumer.yaml# Same comments in this one. > > unevaluatedProperties: false > > diff --git a/Documentation/devicetree/bindings/media/video-interface-devices.yaml b/Documentation/devicetree/bindings/media/video-interface-devices.yaml > index cf7712ad297c01c946fa4dfdaf9a21646e125099..1e25cea0ff71da2cfd1c7c4642713199f3542c0a 100644 > --- a/Documentation/devicetree/bindings/media/video-interface-devices.yaml > +++ b/Documentation/devicetree/bindings/media/video-interface-devices.yaml > @@ -10,6 +10,9 @@ maintainers: > - Jacopo Mondi <jacopo@jmondi.org> > - Sakari Ailus <sakari.ailus@linux.intel.com> > > +allOf: > + - $ref: /schemas/leds/leds-consumer.yaml# This can be dropped. The user still has to define how many entries and what the values of led-names are. > + > properties: > flash-leds: > $ref: /schemas/types.yaml#/definitions/phandle-array > > -- > 2.48.1 >
On Friday, September 5th, 2025 at 17:24, Rob Herring <robh@kernel.org> wrote: > > > On Fri, Sep 05, 2025 at 09:59:30AM +0200, Aleksandrs Vinarskis wrote: > > > A number of existing schemas use 'leds' property to provide > > phandle-array of LED(s) to the consumer. Additionally, with the > > upcoming privacy-led support in device-tree, v4l2 subnode could be a > > LED consumer, meaning that all camera sensors should support 'leds' > > and 'led-names' property via common 'video-interface-devices.yaml'. > > > > To avoid dublication, commonize 'leds' property from existing schemas > > to newly introduced 'led-consumer.yaml'. > > > > Signed-off-by: Aleksandrs Vinarskis alex@vinarskis.com > > --- > > .../devicetree/bindings/leds/backlight/led-backlight.yaml | 7 +------ > > Documentation/devicetree/bindings/leds/leds-group-multicolor.yaml | 6 +----- > > .../devicetree/bindings/media/video-interface-devices.yaml | 3 +++ > > 3 files changed, 5 insertions(+), 11 deletions(-) > > > > diff --git a/Documentation/devicetree/bindings/leds/backlight/led-backlight.yaml b/Documentation/devicetree/bindings/leds/backlight/led-backlight.yaml > > index f5554da6bc6c73e94c4a2c32b150b28351b25f16..5e19b4376715eeb05cb789255db209ed27f8822f 100644 > > --- a/Documentation/devicetree/bindings/leds/backlight/led-backlight.yaml > > +++ b/Documentation/devicetree/bindings/leds/backlight/led-backlight.yaml > > @@ -18,17 +18,12 @@ description: > > > > allOf: > > - $ref: common.yaml# > > + - $ref: /schemas/leds/leds-consumer.yaml# > > > Drop. > > > properties: > > compatible: > > const: led-backlight > > > > - leds: > > - description: A list of LED nodes > > - $ref: /schemas/types.yaml#/definitions/phandle-array > > - items: > > - maxItems: 1 > > > You need to keep the property here: > > leds: true > > > - > > required: > > - compatible > > - leds > > diff --git a/Documentation/devicetree/bindings/leds/leds-group-multicolor.yaml b/Documentation/devicetree/bindings/leds/leds-group-multicolor.yaml > > index 8ed059a5a724f68389a1d0c4396c85b9ccb2d9af..b4f326e8822a3bf452b22f5b9fa7189696f760a4 100644 > > --- a/Documentation/devicetree/bindings/leds/leds-group-multicolor.yaml > > +++ b/Documentation/devicetree/bindings/leds/leds-group-multicolor.yaml > > @@ -17,16 +17,12 @@ properties: > > compatible: > > const: leds-group-multicolor > > > > - leds: > > - description: > > - An aray of monochromatic leds > > - $ref: /schemas/types.yaml#/definitions/phandle-array > > - > > required: > > - leds > > > > allOf: > > - $ref: leds-class-multicolor.yaml# > > + - $ref: /schemas/leds/leds-consumer.yaml# > > > > Same comments in this one. > > > unevaluatedProperties: false > > > > diff --git a/Documentation/devicetree/bindings/media/video-interface-devices.yaml b/Documentation/devicetree/bindings/media/video-interface-devices.yaml > > index cf7712ad297c01c946fa4dfdaf9a21646e125099..1e25cea0ff71da2cfd1c7c4642713199f3542c0a 100644 > > --- a/Documentation/devicetree/bindings/media/video-interface-devices.yaml > > +++ b/Documentation/devicetree/bindings/media/video-interface-devices.yaml > > @@ -10,6 +10,9 @@ maintainers: > > - Jacopo Mondi jacopo@jmondi.org > > - Sakari Ailus sakari.ailus@linux.intel.com > > > > +allOf: > > + - $ref: /schemas/leds/leds-consumer.yaml# > > > This can be dropped. The user still has to define how many entries and > what the values of led-names are. Hmm, but where should it be added then? If I just drop it, MIPI camera schemas which are based on 'video-interface-devices.yaml' and have 'unevaluatedProperties: false' throw warnings because 'leds' was not expected. Including the example in 'led-consumer.yaml' as found by your bot (because of patch order your bot only run on 1/4, adding this very change fixes it). In this case, v4l2 subnode is the LED user, which is some camera. It seems most/all of these cameras are based on this binding, so instead of adding new led related properties to all of them, I thought this is a good common place for it... Shall I add #entries and available options for 'led-names' here to make it complete? Thanks, Alex > > > + > > properties: > > flash-leds: > > $ref: /schemas/types.yaml#/definitions/phandle-array > > > > -- > > 2.48.1
On Fri, Sep 05, 2025 at 04:48:52PM +0000, Aleksandrs Vinarskis wrote: > On Friday, September 5th, 2025 at 17:24, Rob Herring <robh@kernel.org> wrote: > > > > > > > On Fri, Sep 05, 2025 at 09:59:30AM +0200, Aleksandrs Vinarskis wrote: > > > > > A number of existing schemas use 'leds' property to provide > > > phandle-array of LED(s) to the consumer. Additionally, with the > > > upcoming privacy-led support in device-tree, v4l2 subnode could be a > > > LED consumer, meaning that all camera sensors should support 'leds' > > > and 'led-names' property via common 'video-interface-devices.yaml'. > > > > > > To avoid dublication, commonize 'leds' property from existing schemas > > > to newly introduced 'led-consumer.yaml'. > > > > > > Signed-off-by: Aleksandrs Vinarskis alex@vinarskis.com > > > --- > > > .../devicetree/bindings/leds/backlight/led-backlight.yaml | 7 +------ > > > Documentation/devicetree/bindings/leds/leds-group-multicolor.yaml | 6 +----- > > > .../devicetree/bindings/media/video-interface-devices.yaml | 3 +++ > > > 3 files changed, 5 insertions(+), 11 deletions(-) > > > > > > diff --git a/Documentation/devicetree/bindings/leds/backlight/led-backlight.yaml b/Documentation/devicetree/bindings/leds/backlight/led-backlight.yaml > > > index f5554da6bc6c73e94c4a2c32b150b28351b25f16..5e19b4376715eeb05cb789255db209ed27f8822f 100644 > > > --- a/Documentation/devicetree/bindings/leds/backlight/led-backlight.yaml > > > +++ b/Documentation/devicetree/bindings/leds/backlight/led-backlight.yaml > > > @@ -18,17 +18,12 @@ description: > > > > > > allOf: > > > - $ref: common.yaml# > > > + - $ref: /schemas/leds/leds-consumer.yaml# > > > > > > Drop. > > > > > properties: > > > compatible: > > > const: led-backlight > > > > > > - leds: > > > - description: A list of LED nodes > > > - $ref: /schemas/types.yaml#/definitions/phandle-array > > > - items: > > > - maxItems: 1 > > > > > > You need to keep the property here: > > > > leds: true > > > > > - > > > required: > > > - compatible > > > - leds > > > diff --git a/Documentation/devicetree/bindings/leds/leds-group-multicolor.yaml b/Documentation/devicetree/bindings/leds/leds-group-multicolor.yaml > > > index 8ed059a5a724f68389a1d0c4396c85b9ccb2d9af..b4f326e8822a3bf452b22f5b9fa7189696f760a4 100644 > > > --- a/Documentation/devicetree/bindings/leds/leds-group-multicolor.yaml > > > +++ b/Documentation/devicetree/bindings/leds/leds-group-multicolor.yaml > > > @@ -17,16 +17,12 @@ properties: > > > compatible: > > > const: leds-group-multicolor > > > > > > - leds: > > > - description: > > > - An aray of monochromatic leds > > > - $ref: /schemas/types.yaml#/definitions/phandle-array > > > - > > > required: > > > - leds > > > > > > allOf: > > > - $ref: leds-class-multicolor.yaml# > > > + - $ref: /schemas/leds/leds-consumer.yaml# > > > > > > > > Same comments in this one. > > > > > unevaluatedProperties: false > > > > > > diff --git a/Documentation/devicetree/bindings/media/video-interface-devices.yaml b/Documentation/devicetree/bindings/media/video-interface-devices.yaml > > > index cf7712ad297c01c946fa4dfdaf9a21646e125099..1e25cea0ff71da2cfd1c7c4642713199f3542c0a 100644 > > > --- a/Documentation/devicetree/bindings/media/video-interface-devices.yaml > > > +++ b/Documentation/devicetree/bindings/media/video-interface-devices.yaml > > > @@ -10,6 +10,9 @@ maintainers: > > > - Jacopo Mondi jacopo@jmondi.org > > > - Sakari Ailus sakari.ailus@linux.intel.com > > > > > > +allOf: > > > + - $ref: /schemas/leds/leds-consumer.yaml# > > > > > > This can be dropped. The user still has to define how many entries and > > what the values of led-names are. > > Hmm, but where should it be added then? If I just drop it, MIPI > camera schemas which are based on 'video-interface-devices.yaml' and > have 'unevaluatedProperties: false' throw warnings because 'leds' was > not expected. Including the example in 'led-consumer.yaml' as found > by your bot (because of patch order your bot only run on 1/4, adding > this very change fixes it). > In this case, v4l2 subnode is the LED user, which is some camera. It > seems most/all of these cameras are based on this binding, so instead > of adding new led related properties to all of them, I thought this > is a good common place for it... Shall I add #entries and available > options for 'led-names' here to make it complete? Every camera doesn't have the same LEDs, so you have to define exactly what's there for each one. If you want to do it in video-interface-devices.yanl, then you are standardizing it for everyone. Maybe that's fine? If so, you need something like: leds: minItems: 1 maxItems: 2 led-names: items: enum: - flash - privacy Rob
© 2016 - 2025 Red Hat, Inc.