All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v8 0/3 RESEND] Multicolor PWM LED support
@ 2022-04-07  7:32 sven
  2022-04-07  7:32 ` [PATCH v8 1/3 RESEND] dt-bindings: leds: Optional multi-led unit address sven
                   ` (4 more replies)
  0 siblings, 5 replies; 10+ messages in thread
From: sven @ 2022-04-07  7:32 UTC (permalink / raw)
  To: linux-leds, devicetree, linux-pwm
  Cc: Sven Schwermer, pavel, robh+dt, thierry.reding, u.kleine-koenig,
	lee.jones, post, andy.shevchenko, robh

From: Sven Schwermer <sven.schwermer@disruptive-technologies.com>

Hi,

I believe this patch series is ready for merging.

Pavel, please let me know if you need more to get this merged.

Best regards,
Sven

Sven Schwermer (3):
  dt-bindings: leds: Optional multi-led unit address
  dt-bindings: leds: Add multicolor PWM LED bindings
  leds: Add PWM multicolor driver

 .../bindings/leds/leds-class-multicolor.yaml  |   2 +-
 .../bindings/leds/leds-pwm-multicolor.yaml    |  79 ++++++++
 drivers/leds/Kconfig                          |  11 ++
 drivers/leds/Makefile                         |   1 +
 drivers/leds/leds-pwm-multicolor.c            | 186 ++++++++++++++++++
 5 files changed, 278 insertions(+), 1 deletion(-)
 create mode 100644 Documentation/devicetree/bindings/leds/leds-pwm-multicolor.yaml
 create mode 100644 drivers/leds/leds-pwm-multicolor.c

-- 
2.35.1


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

* [PATCH v8 1/3 RESEND] dt-bindings: leds: Optional multi-led unit address
  2022-04-07  7:32 [PATCH v8 0/3 RESEND] Multicolor PWM LED support sven
@ 2022-04-07  7:32 ` sven
  2022-04-07  7:32 ` [PATCH v8 2/3 RESEND] dt-bindings: leds: Add multicolor PWM LED bindings sven
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 10+ messages in thread
From: sven @ 2022-04-07  7:32 UTC (permalink / raw)
  To: linux-leds, devicetree, linux-pwm
  Cc: Sven Schwermer, pavel, robh+dt, thierry.reding, u.kleine-koenig,
	lee.jones, post, andy.shevchenko, robh

From: Sven Schwermer <sven.schwermer@disruptive-technologies.com>

The unit address does not make sense in all cases the multi-led node is
used, e.g. for the upcoming PWM multi-color LED driver.

Signed-off-by: Sven Schwermer <sven.schwermer@disruptive-technologies.com>
Reviewed-by: Rob Herring <robh@kernel.org>
---

Notes:
    Changes in v8:
    * (no changes)
    
    Changes in v7:
    * (no changes)
    
    Added in v6

 .../devicetree/bindings/leds/leds-class-multicolor.yaml         | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/Documentation/devicetree/bindings/leds/leds-class-multicolor.yaml b/Documentation/devicetree/bindings/leds/leds-class-multicolor.yaml
index 37445c68cdef..f41d021ed677 100644
--- a/Documentation/devicetree/bindings/leds/leds-class-multicolor.yaml
+++ b/Documentation/devicetree/bindings/leds/leds-class-multicolor.yaml
@@ -20,7 +20,7 @@ description: |
   within this documentation directory.
 
 patternProperties:
-  "^multi-led@([0-9a-f])$":
+  "^multi-led(@[0-9a-f])?$":
     type: object
     description: Represents the LEDs that are to be grouped.
     properties:
-- 
2.35.1


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

* [PATCH v8 2/3 RESEND] dt-bindings: leds: Add multicolor PWM LED bindings
  2022-04-07  7:32 [PATCH v8 0/3 RESEND] Multicolor PWM LED support sven
  2022-04-07  7:32 ` [PATCH v8 1/3 RESEND] dt-bindings: leds: Optional multi-led unit address sven
@ 2022-04-07  7:32 ` sven
  2022-04-07  7:32 ` [PATCH v8 3/3 RESEND] leds: Add PWM multicolor driver sven
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 10+ messages in thread
From: sven @ 2022-04-07  7:32 UTC (permalink / raw)
  To: linux-leds, devicetree, linux-pwm
  Cc: Sven Schwermer, pavel, robh+dt, thierry.reding, u.kleine-koenig,
	lee.jones, post, andy.shevchenko, robh

From: Sven Schwermer <sven.schwermer@disruptive-technologies.com>

This allows to group multiple PWM-connected monochrome LEDs into
multicolor LEDs, e.g. RGB LEDs.

Signed-off-by: Sven Schwermer <sven.schwermer@disruptive-technologies.com>
Reviewed-by: Rob Herring <robh@kernel.org>
---

Notes:
    Changes in v8:
    * (no changes)
    
    Changes in v7:
    * Added newlines
    * Reorder slightly
    * Rename top-level node in example
    
    Changes in v6:
    * Fix device tree binding schema
    
    Changes in v5:
    * (no changes)
    
    Changes in v4:
    * (no changes)
    
    Changes in v3:
    * Remove multi-led unit name

 .../bindings/leds/leds-pwm-multicolor.yaml    | 79 +++++++++++++++++++
 1 file changed, 79 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/leds/leds-pwm-multicolor.yaml

diff --git a/Documentation/devicetree/bindings/leds/leds-pwm-multicolor.yaml b/Documentation/devicetree/bindings/leds/leds-pwm-multicolor.yaml
new file mode 100644
index 000000000000..6625a528f727
--- /dev/null
+++ b/Documentation/devicetree/bindings/leds/leds-pwm-multicolor.yaml
@@ -0,0 +1,79 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/leds/leds-pwm-multicolor.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Multi-color LEDs connected to PWM
+
+maintainers:
+  - Sven Schwermer <sven.schwermer@disruptive-technologies.com>
+
+description: |
+  This driver combines several monochrome PWM LEDs into one multi-color
+  LED using the multicolor LED class.
+
+properties:
+  compatible:
+    const: pwm-leds-multicolor
+
+  multi-led:
+    type: object
+
+    patternProperties:
+      "^led-[0-9a-z]+$":
+        type: object
+        $ref: common.yaml#
+
+        additionalProperties: false
+
+        properties:
+          pwms:
+            maxItems: 1
+
+          pwm-names: true
+
+          color: true
+
+        required:
+          - pwms
+          - color
+
+required:
+  - compatible
+
+allOf:
+  - $ref: leds-class-multicolor.yaml#
+
+additionalProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/leds/common.h>
+
+    led-controller {
+        compatible = "pwm-leds-multicolor";
+
+        multi-led {
+          color = <LED_COLOR_ID_RGB>;
+          function = LED_FUNCTION_INDICATOR;
+          max-brightness = <65535>;
+
+          led-red {
+              pwms = <&pwm1 0 1000000>;
+              color = <LED_COLOR_ID_RED>;
+          };
+
+          led-green {
+              pwms = <&pwm2 0 1000000>;
+              color = <LED_COLOR_ID_GREEN>;
+          };
+
+          led-blue {
+              pwms = <&pwm3 0 1000000>;
+              color = <LED_COLOR_ID_BLUE>;
+          };
+        };
+    };
+
+...
-- 
2.35.1


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

* [PATCH v8 3/3 RESEND] leds: Add PWM multicolor driver
  2022-04-07  7:32 [PATCH v8 0/3 RESEND] Multicolor PWM LED support sven
  2022-04-07  7:32 ` [PATCH v8 1/3 RESEND] dt-bindings: leds: Optional multi-led unit address sven
  2022-04-07  7:32 ` [PATCH v8 2/3 RESEND] dt-bindings: leds: Add multicolor PWM LED bindings sven
@ 2022-04-07  7:32 ` sven
  2022-05-02 14:04 ` [PATCH v8 0/3 RESEND] Multicolor PWM LED support Sven Schwermer
  2022-05-04 17:47 ` Pavel Machek
  4 siblings, 0 replies; 10+ messages in thread
From: sven @ 2022-04-07  7:32 UTC (permalink / raw)
  To: linux-leds, devicetree, linux-pwm
  Cc: Sven Schwermer, pavel, robh+dt, thierry.reding, u.kleine-koenig,
	lee.jones, post, andy.shevchenko, robh

From: Sven Schwermer <sven.schwermer@disruptive-technologies.com>

By allowing to group multiple monochrome PWM LEDs into multicolor LEDs,
all involved LEDs can be controlled in-sync. This enables using effects
using triggers, etc.

Signed-off-by: Sven Schwermer <sven.schwermer@disruptive-technologies.com>
Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>
---

Notes:
    Changes in v8:
    * (no changes)
    
    Changes in v7:
    * (no changes)
    
    Changes in v6:
    * (no changes)
    
    Changes in v5:
    * Factor iteration over subleds out into function
    
    Changes in v4:
    * Remove mutex destruction and remove function
    * Include missing headers
    * Use post-increment instead of pre-increment
    * Variable declarations in reverse xmas tree order
    * Use dev_err_probe where possible
    * Return immediately where possible
    * Cosmetic changes
    * Document LKM name
    
    Changes in v3:
    * Release fwnode handles
    * Sort header includes
    * Remove deprecated device tree properties
    * Remove deprecated LED_OFF
    * Remove subled channel assignment
    * s/pwmstate/state/

 drivers/leds/Kconfig               |  11 ++
 drivers/leds/Makefile              |   1 +
 drivers/leds/leds-pwm-multicolor.c | 186 +++++++++++++++++++++++++++++
 3 files changed, 198 insertions(+)
 create mode 100644 drivers/leds/leds-pwm-multicolor.c

diff --git a/drivers/leds/Kconfig b/drivers/leds/Kconfig
index 6090e647daee..e70a46704076 100644
--- a/drivers/leds/Kconfig
+++ b/drivers/leds/Kconfig
@@ -552,6 +552,17 @@ config LEDS_PWM
 	help
 	  This option enables support for pwm driven LEDs
 
+config LEDS_PWM_MULTICOLOR
+	tristate "PWM driven multi-color LED Support"
+	depends on LEDS_CLASS_MULTICOLOR
+	depends on PWM
+	help
+	  This option enables support for PWM driven monochrome LEDs that are
+	  grouped into multicolor LEDs.
+
+	  To compile this driver as a module, choose M here: the module
+	  will be called leds-pwm-multicolor.
+
 config LEDS_REGULATOR
 	tristate "REGULATOR driven LED support"
 	depends on LEDS_CLASS
diff --git a/drivers/leds/Makefile b/drivers/leds/Makefile
index e58ecb36360f..ba2c2c1edf12 100644
--- a/drivers/leds/Makefile
+++ b/drivers/leds/Makefile
@@ -73,6 +73,7 @@ obj-$(CONFIG_LEDS_PCA963X)		+= leds-pca963x.o
 obj-$(CONFIG_LEDS_PM8058)		+= leds-pm8058.o
 obj-$(CONFIG_LEDS_POWERNV)		+= leds-powernv.o
 obj-$(CONFIG_LEDS_PWM)			+= leds-pwm.o
+obj-$(CONFIG_LEDS_PWM_MULTICOLOR)	+= leds-pwm-multicolor.o
 obj-$(CONFIG_LEDS_REGULATOR)		+= leds-regulator.o
 obj-$(CONFIG_LEDS_S3C24XX)		+= leds-s3c24xx.o
 obj-$(CONFIG_LEDS_SC27XX_BLTC)		+= leds-sc27xx-bltc.o
diff --git a/drivers/leds/leds-pwm-multicolor.c b/drivers/leds/leds-pwm-multicolor.c
new file mode 100644
index 000000000000..45e38708ecb1
--- /dev/null
+++ b/drivers/leds/leds-pwm-multicolor.c
@@ -0,0 +1,186 @@
+// SPDX-License-Identifier: GPL-2.0-only
+/*
+ * PWM-based multi-color LED control
+ *
+ * Copyright 2022 Sven Schwermer <sven.schwermer@disruptive-technologies.com>
+ */
+
+#include <linux/err.h>
+#include <linux/kernel.h>
+#include <linux/led-class-multicolor.h>
+#include <linux/leds.h>
+#include <linux/mod_devicetable.h>
+#include <linux/module.h>
+#include <linux/mutex.h>
+#include <linux/platform_device.h>
+#include <linux/property.h>
+#include <linux/pwm.h>
+
+struct pwm_led {
+	struct pwm_device *pwm;
+	struct pwm_state state;
+};
+
+struct pwm_mc_led {
+	struct led_classdev_mc mc_cdev;
+	struct mutex lock;
+	struct pwm_led leds[];
+};
+
+static int led_pwm_mc_set(struct led_classdev *cdev,
+			  enum led_brightness brightness)
+{
+	struct led_classdev_mc *mc_cdev = lcdev_to_mccdev(cdev);
+	struct pwm_mc_led *priv = container_of(mc_cdev, struct pwm_mc_led, mc_cdev);
+	unsigned long long duty;
+	int ret = 0;
+	int i;
+
+	led_mc_calc_color_components(mc_cdev, brightness);
+
+	mutex_lock(&priv->lock);
+
+	for (i = 0; i < mc_cdev->num_colors; i++) {
+		duty = priv->leds[i].state.period;
+		duty *= mc_cdev->subled_info[i].brightness;
+		do_div(duty, cdev->max_brightness);
+
+		priv->leds[i].state.duty_cycle = duty;
+		priv->leds[i].state.enabled = duty > 0;
+		ret = pwm_apply_state(priv->leds[i].pwm,
+				      &priv->leds[i].state);
+		if (ret)
+			break;
+	}
+
+	mutex_unlock(&priv->lock);
+
+	return ret;
+}
+
+static int iterate_subleds(struct device *dev, struct pwm_mc_led *priv,
+			   struct fwnode_handle *mcnode)
+{
+	struct mc_subled *subled = priv->mc_cdev.subled_info;
+	struct fwnode_handle *fwnode;
+	struct pwm_led *pwmled;
+	u32 color;
+	int ret;
+
+	/* iterate over the nodes inside the multi-led node */
+	fwnode_for_each_child_node(mcnode, fwnode) {
+		pwmled = &priv->leds[priv->mc_cdev.num_colors];
+		pwmled->pwm = devm_fwnode_pwm_get(dev, fwnode, NULL);
+		if (IS_ERR(pwmled->pwm)) {
+			ret = PTR_ERR(pwmled->pwm);
+			dev_err(dev, "unable to request PWM: %d\n", ret);
+			goto release_fwnode;
+		}
+		pwm_init_state(pwmled->pwm, &pwmled->state);
+
+		ret = fwnode_property_read_u32(fwnode, "color", &color);
+		if (ret) {
+			dev_err(dev, "cannot read color: %d\n", ret);
+			goto release_fwnode;
+		}
+
+		subled[priv->mc_cdev.num_colors].color_index = color;
+		priv->mc_cdev.num_colors++;
+	}
+
+	return 0;
+
+release_fwnode:
+	fwnode_handle_put(fwnode);
+	return ret;
+}
+
+static int led_pwm_mc_probe(struct platform_device *pdev)
+{
+	struct fwnode_handle *mcnode, *fwnode;
+	struct led_init_data init_data = {};
+	struct led_classdev *cdev;
+	struct mc_subled *subled;
+	struct pwm_mc_led *priv;
+	int count = 0;
+	int ret = 0;
+
+	mcnode = device_get_named_child_node(&pdev->dev, "multi-led");
+	if (!mcnode)
+		return dev_err_probe(&pdev->dev, -ENODEV,
+				     "expected multi-led node\n");
+
+	/* count the nodes inside the multi-led node */
+	fwnode_for_each_child_node(mcnode, fwnode)
+		count++;
+
+	priv = devm_kzalloc(&pdev->dev, struct_size(priv, leds, count),
+			    GFP_KERNEL);
+	if (!priv) {
+		ret = -ENOMEM;
+		goto release_mcnode;
+	}
+	mutex_init(&priv->lock);
+
+	subled = devm_kcalloc(&pdev->dev, count, sizeof(*subled), GFP_KERNEL);
+	if (!subled) {
+		ret = -ENOMEM;
+		goto release_mcnode;
+	}
+	priv->mc_cdev.subled_info = subled;
+
+	/* init the multicolor's LED class device */
+	cdev = &priv->mc_cdev.led_cdev;
+	fwnode_property_read_u32(mcnode, "max-brightness",
+				 &cdev->max_brightness);
+	cdev->flags = LED_CORE_SUSPENDRESUME;
+	cdev->brightness_set_blocking = led_pwm_mc_set;
+
+	ret = iterate_subleds(&pdev->dev, priv, mcnode);
+	if (ret)
+		goto release_mcnode;
+
+	init_data.fwnode = mcnode;
+	ret = devm_led_classdev_multicolor_register_ext(&pdev->dev,
+							&priv->mc_cdev,
+							&init_data);
+	if (ret) {
+		dev_err(&pdev->dev,
+			"failed to register multicolor PWM led for %s: %d\n",
+			cdev->name, ret);
+		goto release_mcnode;
+	}
+
+	ret = led_pwm_mc_set(cdev, cdev->brightness);
+	if (ret)
+		return dev_err_probe(&pdev->dev, ret,
+				     "failed to set led PWM value for %s: %d",
+				     cdev->name, ret);
+
+	platform_set_drvdata(pdev, priv);
+	return 0;
+
+release_mcnode:
+	fwnode_handle_put(mcnode);
+	return ret;
+}
+
+static const struct of_device_id of_pwm_leds_mc_match[] = {
+	{ .compatible = "pwm-leds-multicolor", },
+	{}
+};
+MODULE_DEVICE_TABLE(of, of_pwm_leds_mc_match);
+
+static struct platform_driver led_pwm_mc_driver = {
+	.probe		= led_pwm_mc_probe,
+	.driver		= {
+		.name	= "leds_pwm_multicolor",
+		.of_match_table = of_pwm_leds_mc_match,
+	},
+};
+module_platform_driver(led_pwm_mc_driver);
+
+MODULE_AUTHOR("Sven Schwermer <sven.schwermer@disruptive-technologies.com>");
+MODULE_DESCRIPTION("multi-color PWM LED driver");
+MODULE_LICENSE("GPL v2");
+MODULE_ALIAS("platform:leds-pwm-multicolor");
-- 
2.35.1


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

* Re: [PATCH v8 0/3 RESEND] Multicolor PWM LED support
  2022-04-07  7:32 [PATCH v8 0/3 RESEND] Multicolor PWM LED support sven
                   ` (2 preceding siblings ...)
  2022-04-07  7:32 ` [PATCH v8 3/3 RESEND] leds: Add PWM multicolor driver sven
@ 2022-05-02 14:04 ` Sven Schwermer
  2022-05-04 17:47 ` Pavel Machek
  4 siblings, 0 replies; 10+ messages in thread
From: Sven Schwermer @ 2022-05-02 14:04 UTC (permalink / raw)
  To: linux-leds, devicetree
  Cc: pavel, robh+dt, thierry.reding, u.kleine-koenig, lee.jones, post,
	andy.shevchenko, robh

Hi,

Is there anything else I can do to get this series merged soon?

Best regards,
Sven

On 4/7/22 09:32, sven@svenschwermer.de wrote:
> From: Sven Schwermer <sven.schwermer@disruptive-technologies.com>
> 
> Hi,
> 
> I believe this patch series is ready for merging.
> 
> Pavel, please let me know if you need more to get this merged.
> 
> Best regards,
> Sven
> 
> Sven Schwermer (3):
>    dt-bindings: leds: Optional multi-led unit address
>    dt-bindings: leds: Add multicolor PWM LED bindings
>    leds: Add PWM multicolor driver
> 
>   .../bindings/leds/leds-class-multicolor.yaml  |   2 +-
>   .../bindings/leds/leds-pwm-multicolor.yaml    |  79 ++++++++
>   drivers/leds/Kconfig                          |  11 ++
>   drivers/leds/Makefile                         |   1 +
>   drivers/leds/leds-pwm-multicolor.c            | 186 ++++++++++++++++++
>   5 files changed, 278 insertions(+), 1 deletion(-)
>   create mode 100644 Documentation/devicetree/bindings/leds/leds-pwm-multicolor.yaml
>   create mode 100644 drivers/leds/leds-pwm-multicolor.c
> 

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

* Re: [PATCH v8 0/3 RESEND] Multicolor PWM LED support
  2022-04-07  7:32 [PATCH v8 0/3 RESEND] Multicolor PWM LED support sven
                   ` (3 preceding siblings ...)
  2022-05-02 14:04 ` [PATCH v8 0/3 RESEND] Multicolor PWM LED support Sven Schwermer
@ 2022-05-04 17:47 ` Pavel Machek
  2022-05-04 18:41   ` Sven Schwermer
  2022-05-04 18:49   ` [PATCH v1] leds: Move pwm-multicolor driver into rgb directory Sven Schwermer
  4 siblings, 2 replies; 10+ messages in thread
From: Pavel Machek @ 2022-05-04 17:47 UTC (permalink / raw)
  To: sven
  Cc: linux-leds, devicetree, linux-pwm, Sven Schwermer, robh+dt,
	thierry.reding, u.kleine-koenig, lee.jones, post,
	andy.shevchenko, robh

[-- Attachment #1: Type: text/plain, Size: 332 bytes --]

Hi!

> I believe this patch series is ready for merging.
> 
> Pavel, please let me know if you need more to get this merged.

Thank you, applied.

Could I get you to submit patch to move this driver into
drivers/leds/rgb/ ?

Thank you,							Pavel
-- 
People of Russia, stop Putin before his war on Ukraine escalates.

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 195 bytes --]

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

* Re: [PATCH v8 0/3 RESEND] Multicolor PWM LED support
  2022-05-04 17:47 ` Pavel Machek
@ 2022-05-04 18:41   ` Sven Schwermer
  2022-05-07 21:14     ` Pavel Machek
  2022-05-04 18:49   ` [PATCH v1] leds: Move pwm-multicolor driver into rgb directory Sven Schwermer
  1 sibling, 1 reply; 10+ messages in thread
From: Sven Schwermer @ 2022-05-04 18:41 UTC (permalink / raw)
  To: Pavel Machek; +Cc: linux-leds

Hi,

On 5/4/22 19:47, Pavel Machek wrote:
> Hi!
> 
>> I believe this patch series is ready for merging.
>>
>> Pavel, please let me know if you need more to get this merged.
> 
> Thank you, applied.

Thank you!

> Could I get you to submit patch to move this driver into
> drivers/leds/rgb/ ?

Coming up... :)

Best regards,
Sven

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

* [PATCH v1] leds: Move pwm-multicolor driver into rgb directory
  2022-05-04 17:47 ` Pavel Machek
  2022-05-04 18:41   ` Sven Schwermer
@ 2022-05-04 18:49   ` Sven Schwermer
  2022-05-07 21:09     ` Pavel Machek
  1 sibling, 1 reply; 10+ messages in thread
From: Sven Schwermer @ 2022-05-04 18:49 UTC (permalink / raw)
  To: linux-leds, pavel; +Cc: Sven Schwermer

From: Sven Schwermer <sven.schwermer@disruptive-technologies.com>

The drivers/leds/rgb subdirectory is relatively fresh, so we move this
new PWM multi-color driver into it.

Signed-off-by: Sven Schwermer <sven.schwermer@disruptive-technologies.com>
---
 drivers/leds/Kconfig                         | 11 -----------
 drivers/leds/Makefile                        |  1 -
 drivers/leds/rgb/Kconfig                     | 10 ++++++++++
 drivers/leds/rgb/Makefile                    |  3 ++-
 drivers/leds/{ => rgb}/leds-pwm-multicolor.c |  0
 5 files changed, 12 insertions(+), 13 deletions(-)
 rename drivers/leds/{ => rgb}/leds-pwm-multicolor.c (100%)

diff --git a/drivers/leds/Kconfig b/drivers/leds/Kconfig
index ea4481000bfe..a49979f41eee 100644
--- a/drivers/leds/Kconfig
+++ b/drivers/leds/Kconfig
@@ -552,17 +552,6 @@ config LEDS_PWM
 	help
 	  This option enables support for pwm driven LEDs
 
-config LEDS_PWM_MULTICOLOR
-	tristate "PWM driven multi-color LED Support"
-	depends on LEDS_CLASS_MULTICOLOR
-	depends on PWM
-	help
-	  This option enables support for PWM driven monochrome LEDs that are
-	  grouped into multicolor LEDs.
-
-	  To compile this driver as a module, choose M here: the module
-	  will be called leds-pwm-multicolor.
-
 config LEDS_REGULATOR
 	tristate "REGULATOR driven LED support"
 	depends on LEDS_CLASS
diff --git a/drivers/leds/Makefile b/drivers/leds/Makefile
index c6a147865705..4fd2f92cd198 100644
--- a/drivers/leds/Makefile
+++ b/drivers/leds/Makefile
@@ -73,7 +73,6 @@ obj-$(CONFIG_LEDS_PCA963X)		+= leds-pca963x.o
 obj-$(CONFIG_LEDS_PM8058)		+= leds-pm8058.o
 obj-$(CONFIG_LEDS_POWERNV)		+= leds-powernv.o
 obj-$(CONFIG_LEDS_PWM)			+= leds-pwm.o
-obj-$(CONFIG_LEDS_PWM_MULTICOLOR)	+= leds-pwm-multicolor.o
 obj-$(CONFIG_LEDS_REGULATOR)		+= leds-regulator.o
 obj-$(CONFIG_LEDS_S3C24XX)		+= leds-s3c24xx.o
 obj-$(CONFIG_LEDS_SC27XX_BLTC)		+= leds-sc27xx-bltc.o
diff --git a/drivers/leds/rgb/Kconfig b/drivers/leds/rgb/Kconfig
index 5dd27ad80856..63fd40b257ec 100644
--- a/drivers/leds/rgb/Kconfig
+++ b/drivers/leds/rgb/Kconfig
@@ -2,6 +2,16 @@
 
 if LEDS_CLASS_MULTICOLOR
 
+config LEDS_PWM_MULTICOLOR
+	tristate "PWM driven multi-color LED Support"
+	depends on PWM
+	help
+	  This option enables support for PWM driven monochrome LEDs that are
+	  grouped into multicolor LEDs.
+
+	  To compile this driver as a module, choose M here: the module
+	  will be called leds-pwm-multicolor.
+
 config LEDS_QCOM_LPG
 	tristate "LED support for Qualcomm LPG"
 	depends on OF
diff --git a/drivers/leds/rgb/Makefile b/drivers/leds/rgb/Makefile
index 83114f44c4ea..0675bc0f6e18 100644
--- a/drivers/leds/rgb/Makefile
+++ b/drivers/leds/rgb/Makefile
@@ -1,3 +1,4 @@
 # SPDX-License-Identifier: GPL-2.0
 
-obj-$(CONFIG_LEDS_QCOM_LPG)	+= leds-qcom-lpg.o
+obj-$(CONFIG_LEDS_PWM_MULTICOLOR)	+= leds-pwm-multicolor.o
+obj-$(CONFIG_LEDS_QCOM_LPG)		+= leds-qcom-lpg.o
diff --git a/drivers/leds/leds-pwm-multicolor.c b/drivers/leds/rgb/leds-pwm-multicolor.c
similarity index 100%
rename from drivers/leds/leds-pwm-multicolor.c
rename to drivers/leds/rgb/leds-pwm-multicolor.c
-- 
2.36.0


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

* Re: [PATCH v1] leds: Move pwm-multicolor driver into rgb directory
  2022-05-04 18:49   ` [PATCH v1] leds: Move pwm-multicolor driver into rgb directory Sven Schwermer
@ 2022-05-07 21:09     ` Pavel Machek
  0 siblings, 0 replies; 10+ messages in thread
From: Pavel Machek @ 2022-05-07 21:09 UTC (permalink / raw)
  To: Sven Schwermer; +Cc: linux-leds, Sven Schwermer

[-- Attachment #1: Type: text/plain, Size: 388 bytes --]

Hi!

> From: Sven Schwermer <sven.schwermer@disruptive-technologies.com>
> 
> The drivers/leds/rgb subdirectory is relatively fresh, so we move this
> new PWM multi-color driver into it.
> 
> Signed-off-by: Sven Schwermer
> <sven.schwermer@disruptive-technologies.com>

Thank you, applied.
								Pavel
-- 
People of Russia, stop Putin before his war on Ukraine escalates.

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 195 bytes --]

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

* Re: [PATCH v8 0/3 RESEND] Multicolor PWM LED support
  2022-05-04 18:41   ` Sven Schwermer
@ 2022-05-07 21:14     ` Pavel Machek
  0 siblings, 0 replies; 10+ messages in thread
From: Pavel Machek @ 2022-05-07 21:14 UTC (permalink / raw)
  To: Sven Schwermer; +Cc: linux-leds

[-- Attachment #1: Type: text/plain, Size: 277 bytes --]


> > Thank you, applied.
> 
> Thank you!
> 
> > Could I get you to submit patch to move this driver into
> > drivers/leds/rgb/ ?
> 
> Coming up... :)

That was fast. Thank you!
								Pavel

-- 
People of Russia, stop Putin before his war on Ukraine escalates.

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 195 bytes --]

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

end of thread, other threads:[~2022-05-07 21:14 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-04-07  7:32 [PATCH v8 0/3 RESEND] Multicolor PWM LED support sven
2022-04-07  7:32 ` [PATCH v8 1/3 RESEND] dt-bindings: leds: Optional multi-led unit address sven
2022-04-07  7:32 ` [PATCH v8 2/3 RESEND] dt-bindings: leds: Add multicolor PWM LED bindings sven
2022-04-07  7:32 ` [PATCH v8 3/3 RESEND] leds: Add PWM multicolor driver sven
2022-05-02 14:04 ` [PATCH v8 0/3 RESEND] Multicolor PWM LED support Sven Schwermer
2022-05-04 17:47 ` Pavel Machek
2022-05-04 18:41   ` Sven Schwermer
2022-05-07 21:14     ` Pavel Machek
2022-05-04 18:49   ` [PATCH v1] leds: Move pwm-multicolor driver into rgb directory Sven Schwermer
2022-05-07 21:09     ` Pavel Machek

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.