[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20251117-topic-lpg_multi-v1-1-05604374a2dd@oss.qualcomm.com>
Date: Mon, 17 Nov 2025 14:45:59 +0100
From: Konrad Dybcio <konradybcio@...nel.org>
To: Lee Jones <lee@...nel.org>, Pavel Machek <pavel@...nel.org>,
Bjorn Andersson <andersson@...nel.org>
Cc: linux-leds@...r.kernel.org, linux-kernel@...r.kernel.org,
linux-arm-msm@...r.kernel.org,
Konrad Dybcio <konrad.dybcio@....qualcomm.com>
Subject: [PATCH] leds: rgb: leds-qcom-lpg: Allow LED_COLOR_ID_MULTI
From: Konrad Dybcio <konrad.dybcio@....qualcomm.com>
There's nothing special about RGB multi-led instances. Allow any color
combinations by simply extending the "if _RGB" checks.
Signed-off-by: Konrad Dybcio <konrad.dybcio@....qualcomm.com>
---
drivers/leds/rgb/leds-qcom-lpg.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/leds/rgb/leds-qcom-lpg.c b/drivers/leds/rgb/leds-qcom-lpg.c
index 4f2a178e3d26..c8afc68e442f 100644
--- a/drivers/leds/rgb/leds-qcom-lpg.c
+++ b/drivers/leds/rgb/leds-qcom-lpg.c
@@ -1382,7 +1382,7 @@ static int lpg_add_led(struct lpg *lpg, struct device_node *np)
return dev_err_probe(lpg->dev, ret,
"failed to parse \"color\" of %pOF\n", np);
- if (color == LED_COLOR_ID_RGB)
+ if (color == LED_COLOR_ID_RGB || color == LED_COLOR_ID_MULTI)
num_channels = of_get_available_child_count(np);
else
num_channels = 1;
@@ -1394,7 +1394,7 @@ static int lpg_add_led(struct lpg *lpg, struct device_node *np)
led->lpg = lpg;
led->num_channels = num_channels;
- if (color == LED_COLOR_ID_RGB) {
+ if (color == LED_COLOR_ID_RGB || color == LED_COLOR_ID_MULTI) {
info = devm_kcalloc(lpg->dev, num_channels, sizeof(*info), GFP_KERNEL);
if (!info)
return -ENOMEM;
@@ -1454,7 +1454,7 @@ static int lpg_add_led(struct lpg *lpg, struct device_node *np)
init_data.fwnode = of_fwnode_handle(np);
- if (color == LED_COLOR_ID_RGB)
+ if (color == LED_COLOR_ID_RGB || color == LED_COLOR_ID_MULTI)
ret = devm_led_classdev_multicolor_register_ext(lpg->dev, &led->mcdev, &init_data);
else
ret = devm_led_classdev_register_ext(lpg->dev, &led->cdev, &init_data);
---
base-commit: b179ce312bafcb8c68dc718e015aee79b7939ff0
change-id: 20251117-topic-lpg_multi-cf47ea164b14
Best regards,
--
Konrad Dybcio <konrad.dybcio@....qualcomm.com>
Powered by blists - more mailing lists