Skip to content

Commit

Permalink
ipq40xx: Lyra: update RGB LED-Controller node for 5.10+
Browse files Browse the repository at this point in the history
Add the reg and color property to each channel node. This
update is to accommodate the multicolor framework.

Refer to:
<https://lore.kernel.org/all/20200622185919.2131-9-dmurphy@ti.com>
<https://lore.kernel.org/all/20210818070209.1540451-1-michal.vokac@ysoft.com>

Note:

There is only a single extremely bright RGB-LED.
The RGB-color channels (i.e.: blue-0, blue-1 and blue-2)
are running in parallel to increase the current delivery
beyond what a single PWM-output on the LED controller
could do.

BugLink: openwrt#9851
Reported-By: Thomas Bøge <thomas@boegenielsen.dk>
Tested-By: Thomas Bøge <thomas@boegenielsen.dk>
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
  • Loading branch information
chunkeey committed May 14, 2022
1 parent d65bafa commit 834c9b3
Show file tree
Hide file tree
Showing 2 changed files with 78 additions and 47 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,9 @@
board=$(board_name)

case "$board" in
asus,map-ac2200)
migrate_leds ':chan=-'
;;
engenius,emr3500)
migrate_leds "emr3500:="
;;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/input/input.h>
#include <dt-bindings/soc/qcom,tcsr.h>
#include <dt-bindings/leds/common.h>

/ {
model = "ASUS Lyra MAP-AC2200";
Expand Down Expand Up @@ -252,69 +253,96 @@
/* 9-channel RGB LED controller */
compatible = "national,lp5523";
reg = <0x32>;
clock-mode = [01];

led_blue0: blue0 {
chan-name = "blue0";
label = "blue:chan0";
led-cur = [fa];
max-cur = [ff];
clock-mode = /bits/ 8 <1>;
#address-cells = <1>;
#size-cells = <0>;

/*
* There is only one single extremely bright RGB-LED.
* The RGB-color channels are running in parallel to
* increase the current delivery capabilities beyond
* what a single PWM-output of the controller can do.
*/

led_blue0: led@0 {
chan-name = "blue-0";
led-cur = /bits/ 8 <0xfa>;
max-cur = /bits/ 8 <0xff>;
reg = <0>;
color = <LED_COLOR_ID_BLUE>;
function-enumerator = <0>;
};

blue1 {
chan-name = "blue1";
label = "blue:chan1";
led-cur = [fa];
max-cur = [ff];
led@1 {
chan-name = "blue-1";
led-cur = /bits/ 8 <0xfa>;
max-cur = /bits/ 8 <0xff>;
reg = <1>;
color = <LED_COLOR_ID_BLUE>;
function-enumerator = <1>;
};

blue2 {
chan-name = "blue2";
label = "blue:chan2";
led-cur = [fa];
max-cur = [ff];
led@2 {
chan-name = "blue-2";
led-cur = /bits/ 8 <0xfa>;
max-cur = /bits/ 8 <0xff>;
reg = <2>;
color = <LED_COLOR_ID_BLUE>;
function-enumerator = <2>;
};

led_green0: green0 {
chan-name = "green0";
label = "green:chan0";
led-cur = [fa];
max-cur = [ff];
led_green0: led@3 {
chan-name = "green-0";
led-cur = /bits/ 8 <0xfa>;
max-cur = /bits/ 8 <0xff>;
reg = <3>;
color = <LED_COLOR_ID_GREEN>;
function-enumerator = <0>;
};

green1 {
chan-name = "green1";
label = "green:chan1";
led-cur = [fa];
max-cur = [ff];
led@4 {
chan-name = "green-1";
led-cur = /bits/ 8 <0xfa>;
max-cur = /bits/ 8 <0xff>;
reg = <4>;
color = <LED_COLOR_ID_GREEN>;
function-enumerator = <1>;
};

green2 {
chan-name = "green2";
label = "green:chan2";
led-cur = [fa];
max-cur = [ff];
led@5 {
chan-name = "green-2";
led-cur = /bits/ 8 <0xfa>;
max-cur = /bits/ 8 <0xff>;
reg = <5>;
color = <LED_COLOR_ID_GREEN>;
function-enumerator = <2>;
};

led_red0: red0 {
chan-name = "red0";
label = "red:chan0";
led-cur = [fa];
max-cur = [ff];
led_red0: led@6 {
chan-name = "red-0";
led-cur = /bits/ 8 <0xfa>;
max-cur = /bits/ 8 <0xff>;
reg = <6>;
color = <LED_COLOR_ID_RED>;
function-enumerator = <0>;
};

red1 {
chan-name = "red1";
label = "red:chan1";
led-cur = [fa];
max-cur = [ff];
led@7 {
chan-name = "red-1";
led-cur = /bits/ 8 <0xfa>;
max-cur = /bits/ 8 <0xff>;
reg = <7>;
color = <LED_COLOR_ID_RED>;
function-enumerator = <1>;
};

red2 {
chan-name = "red2";
label = "red:chan2";
led-cur = [fa];
max-cur = [ff];
led@8 {
chan-name = "red-2";
led-cur = /bits/ 8 <0xfa>;
max-cur = /bits/ 8 <0xff>;
reg = <8>;
color = <LED_COLOR_ID_RED>;
function-enumerator = <2>;
};
};
};
Expand Down

0 comments on commit 834c9b3

Please sign in to comment.