public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Dan Murphy <dmurphy@ti.com>
To: <jacek.anaszewski@gmail.com>, <pavel@ucw.cz>
Cc: <linux-leds@vger.kernel.org>, <linux-kernel@vger.kernel.org>,
	Dan Murphy <dmurphy@ti.com>, Rob Herring <robh@kernel.org>
Subject: [PATCH v23 01/16] dt: bindings: Add multicolor class dt bindings documention
Date: Wed, 29 Apr 2020 15:28:01 -0500	[thread overview]
Message-ID: <20200429202816.26501-2-dmurphy@ti.com> (raw)
In-Reply-To: <20200429202816.26501-1-dmurphy@ti.com>

Add DT bindings for the LEDs multicolor class framework.
Add multicolor ID to the color ID list for device tree bindings.

CC: Rob Herring <robh@kernel.org>
Acked-by: Pavel Machek <pavel@ucw.cz>
Signed-off-by: Dan Murphy <dmurphy@ti.com>
---
 .../bindings/leds/leds-class-multicolor.yaml  | 70 +++++++++++++++++++
 drivers/leds/led-core.c                       |  1 +
 include/dt-bindings/leds/common.h             |  3 +-
 3 files changed, 73 insertions(+), 1 deletion(-)
 create mode 100644 Documentation/devicetree/bindings/leds/leds-class-multicolor.yaml

diff --git a/Documentation/devicetree/bindings/leds/leds-class-multicolor.yaml b/Documentation/devicetree/bindings/leds/leds-class-multicolor.yaml
new file mode 100644
index 000000000000..e6169ed5ed12
--- /dev/null
+++ b/Documentation/devicetree/bindings/leds/leds-class-multicolor.yaml
@@ -0,0 +1,70 @@
+# SPDX-License-Identifier: GPL-2.0
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/leds/leds-class-multicolor.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Common properties for the multicolor LED class.
+
+maintainers:
+  - Dan Murphy <dmurphy@ti.com>
+
+description: |
+  Bindings for multi color LEDs show how to describe current outputs of
+  either integrated multi-color LED elements (like RGB, RGBW, RGBWA-UV
+  etc.) or standalone LEDs, to achieve logically grouped multi-color LED
+  modules. This is achieved by adding multi-led nodes layer to the
+  monochrome LED bindings.
+  The nodes and properties defined in this document are unique to the multicolor
+  LED class.  Common LED nodes and properties are inherited from the common.txt
+  within this documentation directory.
+
+properties:
+  color:
+    description: |
+      For multicolor LED support this property should be defined as
+      LED_COLOR_ID_MULTI and further definition can be found in
+      include/linux/leds/common.h.
+
+required:
+  - color
+
+examples:
+  - |
+    #include <dt-bindings/leds/common.h>
+    i2c {
+        #address-cells = <1>;
+        #size-cells = <0>;
+        led-controller@14 {
+        #address-cells = <1>;
+        #size-cells = <0>;
+        compatible = "ti,lp5009";
+        reg = <0x14>;
+
+        multi-led@1 {
+          #address-cells = <1>;
+          #size-cells = <0>;
+          reg = <1>;
+          color = <LED_COLOR_ID_MULTI>;
+          function = LED_FUNCTION_CHARGING;
+
+          led@0 {
+            reg = <0>;
+            color = <LED_COLOR_ID_RED>;
+          };
+
+          led@1 {
+            reg = <1>;
+            color = <LED_COLOR_ID_GREEN>;
+          };
+
+          led@2 {
+            reg = <2>;
+            color = <LED_COLOR_ID_BLUE>;
+          };
+        };
+      };
+    };
+
+additionalProperties: false
+...
diff --git a/drivers/leds/led-core.c b/drivers/leds/led-core.c
index f1f718dbe0f8..846248a0693d 100644
--- a/drivers/leds/led-core.c
+++ b/drivers/leds/led-core.c
@@ -34,6 +34,7 @@ const char * const led_colors[LED_COLOR_ID_MAX] = {
 	[LED_COLOR_ID_VIOLET] = "violet",
 	[LED_COLOR_ID_YELLOW] = "yellow",
 	[LED_COLOR_ID_IR] = "ir",
+	[LED_COLOR_ID_MULTI] = "multicolor",
 };
 EXPORT_SYMBOL_GPL(led_colors);
 
diff --git a/include/dt-bindings/leds/common.h b/include/dt-bindings/leds/common.h
index 0ce7dfc00dcb..a463ce6a8794 100644
--- a/include/dt-bindings/leds/common.h
+++ b/include/dt-bindings/leds/common.h
@@ -30,7 +30,8 @@
 #define LED_COLOR_ID_VIOLET	5
 #define LED_COLOR_ID_YELLOW	6
 #define LED_COLOR_ID_IR		7
-#define LED_COLOR_ID_MAX	8
+#define LED_COLOR_ID_MULTI	8
+#define LED_COLOR_ID_MAX	9
 
 /* Standard LED functions */
 /* Keyboard LEDs, usually it would be input4::capslock etc. */
-- 
2.25.1


  reply	other threads:[~2020-04-29 20:37 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-04-29 20:28 [PATCH v23 00/16] Multicolor Framework v23 Dan Murphy
2020-04-29 20:28 ` Dan Murphy [this message]
2020-05-02 21:51   ` [PATCH v23 01/16] dt: bindings: Add multicolor class dt bindings documention Jacek Anaszewski
2020-04-29 20:28 ` [PATCH v23 02/16] leds: multicolor: Introduce a multicolor class definition Dan Murphy
2020-05-02 21:51   ` Jacek Anaszewski
2020-05-03 12:26     ` Dan Murphy
2020-04-29 20:28 ` [PATCH v23 03/16] dt: bindings: lp50xx: Introduce the lp50xx family of RGB drivers Dan Murphy
2020-04-29 20:28 ` [PATCH v23 04/16] leds: lp50xx: Add the LP50XX family of the RGB LED driver Dan Murphy
2020-04-29 20:28 ` [PATCH v23 05/16] dt: bindings: lp55xx: Be consistent in the document with LED acronym Dan Murphy
2020-04-29 20:28 ` [PATCH v23 06/16] dt: bindings: lp55xx: Update binding for Multicolor Framework Dan Murphy
2020-04-29 20:28 ` [PATCH v23 07/16] ARM: dts: n900: Add reg property to the LP5523 channel node Dan Murphy
2020-04-29 20:28 ` [PATCH v23 08/16] ARM: dts: imx6dl-yapp4: Add reg property to the lp5562 " Dan Murphy
2020-04-29 20:28 ` [PATCH v23 09/16] ARM: dts: ste-href: Add reg property to the LP5521 channel nodes Dan Murphy
2020-04-29 20:28 ` [PATCH v23 10/16] leds: lp55xx: Convert LED class registration to devm_* Dan Murphy
2020-04-29 20:28 ` [PATCH v23 11/16] leds: lp55xx: Add multicolor framework support to lp55xx Dan Murphy
2020-04-29 20:28 ` [PATCH v23 12/16] leds: lp5523: Update the lp5523 code to add multicolor brightness function Dan Murphy
2020-04-29 20:28 ` [PATCH v23 13/16] leds: lp5521: Add multicolor framework multicolor brightness support Dan Murphy
2020-04-29 20:28 ` [PATCH v23 14/16] leds: lp55xx: Fix checkpatch file permissions issues Dan Murphy
2020-04-29 20:28 ` [PATCH v23 15/16] leds: lp5523: Fix checkpatch issues in the code Dan Murphy
2020-04-29 20:28 ` [PATCH v23 16/16] dt: bindings: Update lp55xx binding to recommended LED naming Dan Murphy

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=20200429202816.26501-2-dmurphy@ti.com \
    --to=dmurphy@ti.com \
    --cc=jacek.anaszewski@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-leds@vger.kernel.org \
    --cc=pavel@ucw.cz \
    --cc=robh@kernel.org \
    /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