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.
next prev parent 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®