From nobody Thu Jun 11 06:26:52 2026 Received: from mail-pj1-f45.google.com (mail-pj1-f45.google.com [209.85.216.45]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 4A86847ECFD for ; Tue, 9 Jun 2026 18:23:16 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.216.45 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1781029397; cv=none; b=FOmLOqmW8HYZf9wAEkLrlCdiAA4ygrZc8u9FpXizdn9DcBC6BZSwGjb2/6mVMvuZciywLUnEJlWwnfjaai2s3jJlbLnz6GcXuAoBQCaQI3cXrN2cUeBM/gs1fK4BqhhXrGAKWoFc3aXg2aJ2bGI3PLfLsJJVxWaF6doqSrAU5eU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1781029397; c=relaxed/simple; bh=jS73l8ZPEadDtpuBKIkNYTrDKaEL2P2VVxQ/333SYxA=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version:Content-Type; b=cvBZcVDpcbphOMXLM+AS2ua9b8OrhWyWpEwWiMNCDjVzTFw9zPIUY6Dr4WquWnWiNGJ+QoITjx0wx+80VMCEHQStAyrZ9fW7Ql5egKouhS7rq+MAfPFD6+OCTL3dEnolfIHgaWDcnwIXCXi3e6fGLdWzXtzRb1cXBDGqs3p9974= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=c0fWavgy; arc=none smtp.client-ip=209.85.216.45 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="c0fWavgy" Received: by mail-pj1-f45.google.com with SMTP id 98e67ed59e1d1-37474afe908so1076944a91.1 for ; Tue, 09 Jun 2026 11:23:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1781029395; x=1781634195; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=5yOK2OmpxELpIU8FfMiRQLGMlc8197Q+PjU02X23WEs=; b=c0fWavgyuyoStlbWSOZhGG6sbZ+XTuqYLD1UoIoMsX7unC7udaPmZmQZedy7iDL1MM QVKqwRE2AG2Gq0Nvj7r5dpwHc1IT07c/qNdehWlrb2jZ5AjSCoBkIwhinC2v8EPQ9S4Q pYn55vyx1l75a974AUnnazsG1InYQoQmfbC9Ele6v5bji9E50wLs00fQwZuGLjgfF8sR 8GObpM2NZlvrr5qc3/9aZV3+PjIg5Bs8QM9ca6LCjxbnash0ayysp8L+eUVoO1LdQ4wX rxxqXorytF15C15ZaZb9yY0alFBnGzFeU1D9SJQ6fZdJne9xFyNLhwlupc4hbW41xM61 JGJw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1781029395; x=1781634195; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=5yOK2OmpxELpIU8FfMiRQLGMlc8197Q+PjU02X23WEs=; b=QC6lMzOJGyeOeVi+LyYcCwxlsMRRnw1V3rjFGcdo7cZ78N2kCZBBFdPLoXs1wdLEhz ert8HjbENYaqT/Tt90DvCONGaCYqsRMISs7jwJdtewxv5T6cdNixJtutZeHXCFuWFdj6 zfGn214U6EZTwzvpJbejUrqKzYsWVGhJX5JOLpCzllyswR5FUZTVfVCeTC7620KLcj/S yWfEba2cdAz8/fQBQyoCmR6HU6MaShm2FE0hu0dI/XMiMhTU4GDKamezXJ6KGg6fvFcu YnUzl0NuHd5gq9sX5uRjmEehvmF0jiR+kLdhwvyJ21FQ6f0m5QEJfhEH+SJ3fntvpua+ wY0g== X-Forwarded-Encrypted: i=1; AFNElJ8W3XTrIPsPLDguWG67Hhqw91+4d4AAW5bEGQYqAkO+ug8Qnqyov+NE88y/BSIXVXgkS0zu9PkDunbbJUo=@vger.kernel.org X-Gm-Message-State: AOJu0YyOJ4EIIqp+80OWQEGBmjSmeGsGDGkXAyNz2j/8oCij9LML3m13 4bUEbvEm5eZP7Ad78m5etG83Qst5Tz1ocj84uuaZQeTjFC+c6Avi3Cwq X-Gm-Gg: Acq92OGFFKZem7+HzYTekTFqDozpKGYNbg8IQkZgV+cecdZsMED+fWNpabiCw+mLkbN v2DzqvDZYJ9AwyXYiCxupumtenUtHaSNZE2pXvv8d7rJdV3oFcvFlU9jgNDK6zks7xFFEVVCQ2J lK3bVRofRyIpcxbrfgAA+zX1th36bw1lnCAQc0RzX6evaN0vEOF1vZ7J7OiWSiE6MgLSDaXUmxM 2in0B9H6ou5FeLc157gmwFJKk2hEu1z6gZ4bVMeRjxaabD526RcVwBMVnDik/j9Tv4TjjAqDFCJ xUhs8h2m6LUa3OrGFHbufPnVQpKOcsGzNFuNZ2aB1MuSznAlj04cgsC0f+x7pzTC51YeNxg821s mot0zjmGS/bZbBEg/TNGVTfdu2Aen7Uv1t5n33exIrAoXLRfOcPPwzAuSK5FajAbXS2hpN3dcaC QIoutZc7TVwz81wsVGPZn8r983I5qcw7vVKVKRJveTTz33wWfG80wIMn7mB4O+7c/o6N60ZGHkq IrgnjaY4H3CD0YceeM= X-Received: by 2002:a17:90b:1a86:b0:36b:91a3:6af3 with SMTP id 98e67ed59e1d1-370eeb174e9mr21556483a91.7.1781029395432; Tue, 09 Jun 2026 11:23:15 -0700 (PDT) Received: from fedora ([103.181.54.100]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2c164f6d69csm218805815ad.2.2026.06.09.11.23.11 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 09 Jun 2026 11:23:15 -0700 (PDT) From: Ninad Naik To: lee@kernel.org, pavel@kernel.org, robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, jonas.gorski@gmail.com, noltari@gmail.com Cc: linux-leds@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, me@brighamcampbell.com, linux-kernel-mentees@lists.linux.dev, skhan@linuxfoundation.org, Ninad Naik Subject: [PATCH v2] dt-bindings: leds: bcm6358: Convert to DT schema Date: Tue, 9 Jun 2026 23:47:01 +0530 Message-ID: <20260609181731.1379846-1-ninadnaik07@gmail.com> X-Mailer: git-send-email 2.54.0 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Convert the brcm,bcm6358 to DT schema. Signed-off-by: Ninad Naik --- Changes in v2: - Modify the maintainers list. - Add maxItems: 1 and removed minimum and maximum in reg property. - Explicitly list the properties: label, default-state, linux,default-trigg= er and active-low - Change unevaluatedProperties: false to additionalProperties: false .../bindings/leds/brcm,bcm6358-leds.yaml | 105 +++++++++++++ .../devicetree/bindings/leds/leds-bcm6358.txt | 143 ------------------ 2 files changed, 105 insertions(+), 143 deletions(-) create mode 100644 Documentation/devicetree/bindings/leds/brcm,bcm6358-led= s.yaml delete mode 100644 Documentation/devicetree/bindings/leds/leds-bcm6358.txt diff --git a/Documentation/devicetree/bindings/leds/brcm,bcm6358-leds.yaml = b/Documentation/devicetree/bindings/leds/brcm,bcm6358-leds.yaml new file mode 100644 index 000000000000..1b586a0c27b7 --- /dev/null +++ b/Documentation/devicetree/bindings/leds/brcm,bcm6358-leds.yaml @@ -0,0 +1,105 @@ +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/leds/brcm,bcm6358-leds.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: LEDs connected to Broadcom BCM6358 controller + +description: | + This controller is present on BCM6358 and BCM6368. + In these SoCs there are Serial LEDs (LEDs connected to a 74x164 controll= er), + which can either be controlled by software (exporting the 74x164 as spi-= gpio. + See Documentation/devicetree/bindings/gpio/fairchild,74hc595.yaml), or + by hardware using this driver. + +maintainers: + - =C3=81lvaro Fern=C3=A1ndez Rojas + +properties: + compatible: + const: brcm,bcm6358-leds + + reg: + maxItems: 1 + + "#address-cells": + const: 1 + + "#size-cells": + const: 0 + + brcm,clk-div: + description: SCK signal divider. + default: 1 + $ref: /schemas/types.yaml#/definitions/uint32 + enum: [1, 2, 4, 8] + + brcm,clk-dat-low: + description: Makes clock and data signals active low. + type: boolean + +patternProperties: + "^led@(0|1?[0-9a-f])$": + type: object + $ref: common.yaml# + description: Each LED is represented as a sub-node of + this device. + + properties: + reg: + description: LED pin number (0 to 31). + maxItems: 1 + + label: true + + default-state: true + + linux,default-trigger: true + + active-low: true + + required: + - reg + + additionalProperties: false + +required: + - compatible + - reg + - "#address-cells" + - "#size-cells" + +additionalProperties: false + +examples: + - | + #include + led-controller@fffe00d0 { + compatible =3D "brcm,bcm6358-leds"; + #address-cells =3D <1>; + #size-cells =3D <0>; + reg =3D <0xfffe00d0 0x8>; + + led@0 { + reg =3D <0>; + active-low; + label =3D "white:alarm"; + }; + led@2 { + reg =3D <2>; + active-low; + label =3D "white:tv"; + }; + led@3 { + reg =3D <3>; + active-low; + label =3D "white:tel"; + }; + led@4 { + reg =3D <4>; + active-low; + label =3D "white:adsl"; + }; + }; +... diff --git a/Documentation/devicetree/bindings/leds/leds-bcm6358.txt b/Docu= mentation/devicetree/bindings/leds/leds-bcm6358.txt deleted file mode 100644 index 211ffc3c4a20..000000000000 --- a/Documentation/devicetree/bindings/leds/leds-bcm6358.txt +++ /dev/null @@ -1,143 +0,0 @@ -LEDs connected to Broadcom BCM6358 controller - -This controller is present on BCM6358 and BCM6368. -In these SoCs there are Serial LEDs (LEDs connected to a 74x164 controller= ), -which can either be controlled by software (exporting the 74x164 as spi-gp= io. -See Documentation/devicetree/bindings/gpio/fairchild,74hc595.yaml), or -by hardware using this driver. - -Required properties: - - compatible : should be "brcm,bcm6358-leds". - - #address-cells : must be 1. - - #size-cells : must be 0. - - reg : BCM6358 LED controller address and size. - -Optional properties: - - brcm,clk-div : SCK signal divider. Possible values are 1, 2, 4 and 8. - Default : 1 - - brcm,clk-dat-low : Boolean, makes clock and data signals active low. - Default : false - -Each LED is represented as a sub-node of the brcm,bcm6358-leds device. - -LED sub-node required properties: - - reg : LED pin number (only LEDs 0 to 31 are valid). - -LED sub-node optional properties: - - label : see Documentation/devicetree/bindings/leds/common.txt - - default-state : see - Documentation/devicetree/bindings/leds/common.txt - - linux,default-trigger : see - Documentation/devicetree/bindings/leds/common.txt - -Examples: -Scenario 1 : BCM6358 - leds0: led-controller@fffe00d0 { - compatible =3D "brcm,bcm6358-leds"; - #address-cells =3D <1>; - #size-cells =3D <0>; - reg =3D <0xfffe00d0 0x8>; - - alarm_white { - reg =3D <0>; - active-low; - label =3D "white:alarm"; - }; - tv_white { - reg =3D <2>; - active-low; - label =3D "white:tv"; - }; - tel_white { - reg =3D <3>; - active-low; - label =3D "white:tel"; - }; - adsl_white { - reg =3D <4>; - active-low; - label =3D "white:adsl"; - }; - }; - -Scenario 2 : BCM6368 - leds0: led-controller@100000d0 { - compatible =3D "brcm,bcm6358-leds"; - #address-cells =3D <1>; - #size-cells =3D <0>; - reg =3D <0x100000d0 0x8>; - brcm,pol-low; - brcm,clk-div =3D <4>; - - power_red { - reg =3D <0>; - active-low; - label =3D "red:power"; - }; - power_green { - reg =3D <1>; - active-low; - label =3D "green:power"; - default-state =3D "on"; - }; - power_blue { - reg =3D <2>; - label =3D "blue:power"; - }; - broadband_red { - reg =3D <3>; - active-low; - label =3D "red:broadband"; - }; - broadband_green { - reg =3D <4>; - label =3D "green:broadband"; - }; - broadband_blue { - reg =3D <5>; - active-low; - label =3D "blue:broadband"; - }; - wireless_red { - reg =3D <6>; - active-low; - label =3D "red:wireless"; - }; - wireless_green { - reg =3D <7>; - active-low; - label =3D "green:wireless"; - }; - wireless_blue { - reg =3D <8>; - label =3D "blue:wireless"; - }; - phone_red { - reg =3D <9>; - active-low; - label =3D "red:phone"; - }; - phone_green { - reg =3D <10>; - active-low; - label =3D "green:phone"; - }; - phone_blue { - reg =3D <11>; - label =3D "blue:phone"; - }; - upgrading_red { - reg =3D <12>; - active-low; - label =3D "red:upgrading"; - }; - upgrading_green { - reg =3D <13>; - active-low; - label =3D "green:upgrading"; - }; - upgrading_blue { - reg =3D <14>; - label =3D "blue:upgrading"; - }; - }; --=20 2.54.0