mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: "Rob Herring (Arm)" <robh@kernel.org>
To: Jonathan Brophy <professorjonny98@gmail.com>
Cc: Andriy Shevencho <andriy.shevchenko@linux.intel.com>,
	 Krzysztof Kozlowski <krzk+dt@kernel.org>,
	lee Jones <lee@kernel.org>,
	 linux-kernel@vger.kernel.org, linux-leds@vger.kernel.org,
	 Conor Dooley <conor+dt@kernel.org>,
	Pavel Machek <pavel@kernel.org>,
	 Jonathan Brophy <professor_jonny@hotmail.com>,
	 Radoslav Tsvetkov <rtsvetkov@gradotech.eu>,
	devicetree@vger.kernel.org
Subject: Re: [PATCH v4 3/7] dt-bindings: leds: Add virtual LED group controller bindings
Date: Mon, 29 Dec 2025 19:26:10 -0600	[thread overview]
Message-ID: <176705797007.3053564.852280537388416393.robh@kernel.org> (raw)
In-Reply-To: <20251230003250.1197744-4-professorjonny98@gmail.com>


On Tue, 30 Dec 2025 13:32:40 +1300, Jonathan Brophy wrote:
> From: Jonathan Brophy <professor_jonny@hotmail.com>
> 
> Add device tree bindings for the virtual LED group controller that
> provides priority-based arbitration for shared physical LEDs across
> multiple virtual LED instances.
> 
> Bindings for the virtual driver are not describing hardware LEDs they
> describe virtual devices made from groups of hardware LEDs created from an array
> of LED phandles.
> 
> Normally the device tree is used to describe hardware not virtual hardware
> but it is particularly useful in situations where you require an LED to be a
> specific color by mixing primary colors, such as multi element multi color LEDs
> to be operated from a device tree binding or a single trigger.
> 
> It also becomes useful with multiple LEDs operating the same indicator such as
> ring of light indicators, led rope where the LEDs are driven From different GPIO
> outputs unifying the control that can give basic indication during system startup,
> shutdown upgrade etc...
> The controller implements winner-takes-all arbitration where only the
> highest-priority active virtual LED controls the hardware at any given
> time. This enables multiple subsystems (boot, error, status indicators)
> to request LED control without explicit coordination.
> 
> Binding supports:
> - Multiple virtual LED children with independent priorities
> - GPIO, PWM, I2C, and SPI physical LED devices
> - Multicolor and standard (fixed-color) operating modes
> - Global ownership tracking to prevent conflicts
> 
> Example configurations include:
> - High-priority emergency/error RGB indicator
> - Medium-priority system state RGBW indicator
> - Low-priority warm white fixed-color indicator
> 
> Co-developed-by: Radoslav Tsvetkov <rtsvetkov@gradotech.eu>
> Signed-off-by: Radoslav Tsvetkov <rtsvetkov@gradotech.eu>
> Signed-off-by: Jonathan Brophy <professor_jonny@hotmail.com>
> ---
>  .../leds/leds-group-virtualcolor.yaml         | 170 ++++++++++++++++++
>  1 file changed, 170 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/leds/leds-group-virtualcolor.yaml
> 

My bot found errors running 'make dt_binding_check' on your patch:

yamllint warnings/errors:

dtschema/dtc warnings/errors:
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/leds/leds-group-virtualcolor.example.dtb: pwm-led-controller (pwm-leds): 'led-pwm-blue', 'led-pwm-green', 'led-pwm-red' do not match any of the regexes: '^led(-[0-9a-f]+)?$', '^pinctrl-[0-9]+$'
	from schema $id: http://devicetree.org/schemas/leds/leds-pwm.yaml

doc reference errors (make refcheckdocs):

See https://patchwork.kernel.org/project/devicetree/patch/20251230003250.1197744-4-professorjonny98@gmail.com

The base for the series is generally the latest rc1. A different dependency
should be noted in *this* patch.

If you already ran 'make dt_binding_check' and didn't see the above
error(s), then make sure 'yamllint' is installed and dt-schema is up to
date:

pip3 install dtschema --upgrade

Please check and re-submit after running the above command yourself. Note
that DT_SCHEMA_FILES can be set to your schema file to speed up checking
your schema. However, it must be unset to test all examples with your schema.


  reply	other threads:[~2025-12-30  1:26 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-12-30  0:32 [PATCH v4 0/7] leds: Add virtual LED group driver with priority arbitration Jonathan Brophy
2025-12-30  0:32 ` [PATCH 1/7] dt-bindings: leds: add function virtual_status to led common properties Jonathan Brophy
2025-12-30  0:32 ` [PATCH v4 2/7] dt-bindings: leds: Add virtual LED class bindings Jonathan Brophy
2025-12-30  0:32 ` [PATCH v4 3/7] dt-bindings: leds: Add virtual LED group controller bindings Jonathan Brophy
2025-12-30  1:26   ` Rob Herring (Arm) [this message]
2025-12-30  8:32     ` Jonathan Brophy
2025-12-31  8:03       ` Krzysztof Kozlowski
2025-12-30  0:32 ` [PATCH v4 4/7] ABI: Add sysfs documentation for leds-group-virtualcolor Jonathan Brophy
2025-12-30  0:32 ` [PATCH v4 5/7] leds: Add driver " Jonathan Brophy
2025-12-30 15:24   ` kernel test robot
2025-12-30  0:32 ` [PATCH v4 6/7] leds: Add fwnode_led_get() for firmware-agnostic LED resolution Jonathan Brophy
2025-12-30 16:07   ` kernel test robot
2025-12-30  0:32 ` [PATCH 7/7] leds: Add virtual LED group driver with priority arbitration Jonathan Brophy

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=176705797007.3053564.852280537388416393.robh@kernel.org \
    --to=robh@kernel.org \
    --cc=andriy.shevchenko@linux.intel.com \
    --cc=conor+dt@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=krzk+dt@kernel.org \
    --cc=lee@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-leds@vger.kernel.org \
    --cc=pavel@kernel.org \
    --cc=professor_jonny@hotmail.com \
    --cc=professorjonny98@gmail.com \
    --cc=rtsvetkov@gradotech.eu \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®