Devicetree
 help / color / mirror / Atom feed
* [PATCH] dt-bindings: leds: lacie,ns2-leds: Convert to DT schema
@ 2026-07-01 17:53 Ninad Naik
  2026-07-01 18:05 ` sashiko-bot
  2026-07-16 17:35 ` Rob Herring
  0 siblings, 2 replies; 4+ messages in thread
From: Ninad Naik @ 2026-07-01 17:53 UTC (permalink / raw)
  To: lee, pavel, robh, krzk+dt, conor+dt
  Cc: linux-leds, devicetree, linux-kernel, me, linux-kernel-mentees,
	skhan, Ninad Naik

Convert lacie,ns2-leds to DT schema.

Signed-off-by: Ninad Naik <ninadnaik07@gmail.com>
---
 .../bindings/leds/lacie,ns2-leds.yaml         | 87 +++++++++++++++++++
 .../devicetree/bindings/leds/leds-ns2.txt     | 35 --------
 2 files changed, 87 insertions(+), 35 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/leds/lacie,ns2-leds.yaml
 delete mode 100644 Documentation/devicetree/bindings/leds/leds-ns2.txt

diff --git a/Documentation/devicetree/bindings/leds/lacie,ns2-leds.yaml b/Documentation/devicetree/bindings/leds/lacie,ns2-leds.yaml
new file mode 100644
index 000000000000..679a618906d8
--- /dev/null
+++ b/Documentation/devicetree/bindings/leds/lacie,ns2-leds.yaml
@@ -0,0 +1,87 @@
+# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/leds/lacie,ns2-leds.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Dual-GPIO LEDs found on Network Space v2 (and parents)
+
+maintainers:
+  - Lee Jones <lee@kernel.org>
+  - Pavel Machek <pavel@kernel.org>
+
+description: |
+  The Network Space v2 dual-GPIO LED is wired to a CPLD. Three different LED
+  modes are available: off, on and SATA activity blinking. The LED modes are
+  controlled through two GPIOs (command and slow): each combination of values
+  for the command/slow GPIOs corresponds to a LED mode.
+
+properties:
+  compatible:
+    const: lacie,ns2-leds
+
+patternProperties:
+  "^led(-[0-9a-z]+)?$":
+    type: object
+    $ref: common.yaml#
+    unevaluatedProperties: false
+
+    description:
+      Each child node represents a single LED
+
+    properties:
+      cmd-gpio:
+        maxItems: 1
+        description:
+          GPIO connected to the command LED output
+
+      slow-gpio:
+        maxItems: 1
+        description:
+          GPIO connected to the slow LED output
+
+      modes-map:
+        $ref: /schemas/types.yaml#/definitions/uint32-matrix
+        description:
+          A mapping between LED modes (off, on or SATA activity blinking) and
+          the corresponding cmd-gpio/slow-gpio values. All the GPIO values
+          combinations should be given in order to avoid having an unknown
+          mode at driver probe time.
+
+        items:
+          items:
+            - description: LED mode
+              enum: [0, 1, 2]
+            - description: Command GPIO level
+              enum: [0, 1]
+            - description: Slow GPIO level
+              enum: [0, 1]
+
+    required:
+      - cmd-gpio
+      - slow-gpio
+      - modes-map
+
+required:
+  - compatible
+
+additionalProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/leds/leds-ns2.h>
+
+    led-controller {
+        compatible = "lacie,ns2-leds";
+
+        led-0 {
+            label = "ns2:blue:sata";
+            slow-gpio = <&gpio0 29 0>;
+            cmd-gpio = <&gpio0 30 0>;
+            modes-map = <NS_V2_LED_OFF  0 1
+                         NS_V2_LED_ON   1 0
+                         NS_V2_LED_ON   0 0
+                         NS_V2_LED_SATA 1 1>;
+        };
+    };
+...
diff --git a/Documentation/devicetree/bindings/leds/leds-ns2.txt b/Documentation/devicetree/bindings/leds/leds-ns2.txt
deleted file mode 100644
index 9f81258a5b6e..000000000000
--- a/Documentation/devicetree/bindings/leds/leds-ns2.txt
+++ /dev/null
@@ -1,35 +0,0 @@
-Binding for dual-GPIO LED found on Network Space v2 (and parents).
-
-Required properties:
-- compatible: "lacie,ns2-leds".
-
-Each LED is represented as a sub-node of the ns2-leds device.
-
-Required sub-node properties:
-- cmd-gpio: Command LED GPIO. See OF device-tree GPIO specification.
-- slow-gpio: Slow LED GPIO. See OF device-tree GPIO specification.
-- modes-map: A mapping between LED modes (off, on or SATA activity blinking) and
-  the corresponding cmd-gpio/slow-gpio values. All the GPIO values combinations
-  should be given in order to avoid having an unknown mode at driver probe time.
-
-Optional sub-node properties:
-- label: Name for this LED. If omitted, the label is taken from the node name.
-- linux,default-trigger: Trigger assigned to the LED.
-
-Example:
-
-#include <dt-bindings/leds/leds-ns2.h>
-
-ns2-leds {
-	compatible = "lacie,ns2-leds";
-
-	blue-sata {
-		label = "ns2:blue:sata";
-		slow-gpio = <&gpio0 29 0>;
-		cmd-gpio = <&gpio0 30 0>;
-		modes-map = <NS_V2_LED_OFF  0 1
-			     NS_V2_LED_ON   1 0
-			     NS_V2_LED_ON   0 0
-			     NS_V2_LED_SATA 1 1>;
-	};
-};
-- 
2.54.0


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH] dt-bindings: leds: lacie,ns2-leds: Convert to DT schema
  2026-07-01 17:53 [PATCH] dt-bindings: leds: lacie,ns2-leds: Convert to DT schema Ninad Naik
@ 2026-07-01 18:05 ` sashiko-bot
  2026-07-16 17:39   ` Rob Herring
  2026-07-16 17:35 ` Rob Herring
  1 sibling, 1 reply; 4+ messages in thread
From: sashiko-bot @ 2026-07-01 18:05 UTC (permalink / raw)
  To: Ninad Naik; +Cc: linux-leds, devicetree, lee, robh, conor+dt

Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [Low] The schema conversion incorrectly restricts LED child node names to `^led(-[0-9a-z]+)?$`, which breaks `dtbs_check` validation for all existing upstream device trees using this binding.
--

commit 6c59295f22b17d02a2b26847db54458f820fa4f3
Author: Ninad Naik <ninadnaik07@gmail.com>

dt-bindings: leds: lacie,ns2-leds: Convert to DT schema

Convert lacie,ns2-leds to DT schema.

> diff --git a/Documentation/devicetree/bindings/leds/lacie,ns2-leds.yaml b/Documentation/devicetree/bindings/leds/lacie,ns2-leds.yaml
> new file mode 100644
> index 0000000000000..679a618906d80
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/leds/lacie,ns2-leds.yaml
> @@ -0,0 +1,87 @@
[ ... ]
> +properties:
> +  compatible:
> +    const: lacie,ns2-leds
> +
> +patternProperties:
> +  "^led(-[0-9a-z]+)?$":

[Severity: Low]
Will this restrictive regex cause existing device trees to fail dtbs_check?

The old text binding example used a child node named blue-sata, which does
not match this pattern. Since additionalProperties is set to false below,
nodes in existing device trees that don't start with led will be rejected
during validation.

Should this regex be relaxed to allow existing node names, or should those
device tree files be updated alongside this conversion?

> +    type: object
> +    $ref: common.yaml#
> +    unevaluatedProperties: false

-- 
Sashiko AI review · https://sashiko.dev/#/patchset/20260701175330.1645927-1-ninadnaik07@gmail.com?part=1

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] dt-bindings: leds: lacie,ns2-leds: Convert to DT schema
  2026-07-01 17:53 [PATCH] dt-bindings: leds: lacie,ns2-leds: Convert to DT schema Ninad Naik
  2026-07-01 18:05 ` sashiko-bot
@ 2026-07-16 17:35 ` Rob Herring
  1 sibling, 0 replies; 4+ messages in thread
From: Rob Herring @ 2026-07-16 17:35 UTC (permalink / raw)
  To: Ninad Naik
  Cc: lee, pavel, krzk+dt, conor+dt, linux-leds, devicetree,
	linux-kernel, me, linux-kernel-mentees, skhan

On Wed, Jul 01, 2026 at 11:23:30PM +0530, Ninad Naik wrote:
> Convert lacie,ns2-leds to DT schema.
> 
> Signed-off-by: Ninad Naik <ninadnaik07@gmail.com>
> ---
>  .../bindings/leds/lacie,ns2-leds.yaml         | 87 +++++++++++++++++++
>  .../devicetree/bindings/leds/leds-ns2.txt     | 35 --------
>  2 files changed, 87 insertions(+), 35 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/leds/lacie,ns2-leds.yaml
>  delete mode 100644 Documentation/devicetree/bindings/leds/leds-ns2.txt
> 
> diff --git a/Documentation/devicetree/bindings/leds/lacie,ns2-leds.yaml b/Documentation/devicetree/bindings/leds/lacie,ns2-leds.yaml
> new file mode 100644
> index 000000000000..679a618906d8
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/leds/lacie,ns2-leds.yaml
> @@ -0,0 +1,87 @@
> +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/leds/lacie,ns2-leds.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Dual-GPIO LEDs found on Network Space v2 (and parents)
> +
> +maintainers:
> +  - Lee Jones <lee@kernel.org>
> +  - Pavel Machek <pavel@kernel.org>

This should be someone with the h/w, not subsystem maintainers.

> +
> +description: |

Dont need '|'.

> +  The Network Space v2 dual-GPIO LED is wired to a CPLD. Three different LED
> +  modes are available: off, on and SATA activity blinking. The LED modes are
> +  controlled through two GPIOs (command and slow): each combination of values
> +  for the command/slow GPIOs corresponds to a LED mode.

Rest looks fine.

Rob

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] dt-bindings: leds: lacie,ns2-leds: Convert to DT schema
  2026-07-01 18:05 ` sashiko-bot
@ 2026-07-16 17:39   ` Rob Herring
  0 siblings, 0 replies; 4+ messages in thread
From: Rob Herring @ 2026-07-16 17:39 UTC (permalink / raw)
  To: sashiko-reviews; +Cc: Ninad Naik, linux-leds, devicetree, lee, conor+dt

On Wed, Jul 01, 2026 at 06:05:52PM +0000, sashiko-bot@kernel.org wrote:
> Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
> - [Low] The schema conversion incorrectly restricts LED child node names to `^led(-[0-9a-z]+)?$`, which breaks `dtbs_check` validation for all existing upstream device trees using this binding.
> --
> 
> commit 6c59295f22b17d02a2b26847db54458f820fa4f3
> Author: Ninad Naik <ninadnaik07@gmail.com>
> 
> dt-bindings: leds: lacie,ns2-leds: Convert to DT schema
> 
> Convert lacie,ns2-leds to DT schema.
> 
> > diff --git a/Documentation/devicetree/bindings/leds/lacie,ns2-leds.yaml b/Documentation/devicetree/bindings/leds/lacie,ns2-leds.yaml
> > new file mode 100644
> > index 0000000000000..679a618906d80
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/leds/lacie,ns2-leds.yaml
> > @@ -0,0 +1,87 @@
> [ ... ]
> > +properties:
> > +  compatible:
> > +    const: lacie,ns2-leds
> > +
> > +patternProperties:
> > +  "^led(-[0-9a-z]+)?$":
> 
> [Severity: Low]
> Will this restrictive regex cause existing device trees to fail dtbs_check?
> 
> The old text binding example used a child node named blue-sata, which does
> not match this pattern. Since additionalProperties is set to false below,
> nodes in existing device trees that don't start with led will be rejected
> during validation.
> 
> Should this regex be relaxed to allow existing node names, or should those
> device tree files be updated alongside this conversion?

While yes we prefer what you did, it's perhaps not worth changing these 
old .dts files to match the preference.

Rob

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2026-07-16 17:39 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-07-01 17:53 [PATCH] dt-bindings: leds: lacie,ns2-leds: Convert to DT schema Ninad Naik
2026-07-01 18:05 ` sashiko-bot
2026-07-16 17:39   ` Rob Herring
2026-07-16 17:35 ` Rob Herring

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox