diff mbox series

[5/7] ARM: dts: exynos: k3g: Add notification LED support

Message ID 20230716220644.22158-7-markuss.broks@gmail.com
State New
Headers show
Series Add various peripheral support for K3G | expand

Commit Message

Markuss Broks July 16, 2023, 10:05 p.m. UTC
This device has a Texas Instruments LP5562 LED controller
which controls the LEDs which are used as notification lights.
It has three colors which can be combined, supports pulse mode
and other various features.

Signed-off-by: Markuss Broks <markuss.broks@gmail.com>
---
 arch/arm/boot/dts/exynos5422-samsung-k3g.dts | 47 ++++++++++++++++++++
 1 file changed, 47 insertions(+)

Comments

Krzysztof Kozlowski July 19, 2023, 9:17 a.m. UTC | #1
On 17/07/2023 00:05, Markuss Broks wrote:
> This device has a Texas Instruments LP5562 LED controller
> which controls the LEDs which are used as notification lights.
> It has three colors which can be combined, supports pulse mode
> and other various features.
> 
> Signed-off-by: Markuss Broks <markuss.broks@gmail.com>
> ---
>  arch/arm/boot/dts/exynos5422-samsung-k3g.dts | 47 ++++++++++++++++++++
>  1 file changed, 47 insertions(+)
> 
> diff --git a/arch/arm/boot/dts/exynos5422-samsung-k3g.dts b/arch/arm/boot/dts/exynos5422-samsung-k3g.dts
> index b3576a745054..813dbf0438de 100644
> --- a/arch/arm/boot/dts/exynos5422-samsung-k3g.dts
> +++ b/arch/arm/boot/dts/exynos5422-samsung-k3g.dts
> @@ -10,6 +10,7 @@
>  #include <dt-bindings/gpio/gpio.h>
>  #include <dt-bindings/input/input.h>
>  #include <dt-bindings/interrupt-controller/irq.h>
> +#include <dt-bindings/leds/common.h>
>  #include "exynos5800.dtsi"
>  #include "exynos5422-cpus.dtsi"
>  
> @@ -131,6 +132,52 @@ touchkey@20 {
>  		};
>  	};
>  
> +	i2c-led {
> +		compatible = "i2c-gpio";
> +
> +		sda-gpios = <&gpy3 6 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
> +		scl-gpios = <&gpy3 7 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
> +		i2c-gpio,delay-us = <2>;
> +
> +		#address-cells = <1>;
> +		#size-cells = <0>;
> +
> +		lp5562@30 {

Node names should be generic. See also an explanation and list of
examples (not exhaustive) in DT specification:
https://devicetree-specification.readthedocs.io/en/latest/chapter2-devicetree-basics.html#generic-names-recommendation

Most likely this is led-controller



Best regards,
Krzysztof
diff mbox series

Patch

diff --git a/arch/arm/boot/dts/exynos5422-samsung-k3g.dts b/arch/arm/boot/dts/exynos5422-samsung-k3g.dts
index b3576a745054..813dbf0438de 100644
--- a/arch/arm/boot/dts/exynos5422-samsung-k3g.dts
+++ b/arch/arm/boot/dts/exynos5422-samsung-k3g.dts
@@ -10,6 +10,7 @@ 
 #include <dt-bindings/gpio/gpio.h>
 #include <dt-bindings/input/input.h>
 #include <dt-bindings/interrupt-controller/irq.h>
+#include <dt-bindings/leds/common.h>
 #include "exynos5800.dtsi"
 #include "exynos5422-cpus.dtsi"
 
@@ -131,6 +132,52 @@  touchkey@20 {
 		};
 	};
 
+	i2c-led {
+		compatible = "i2c-gpio";
+
+		sda-gpios = <&gpy3 6 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
+		scl-gpios = <&gpy3 7 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
+		i2c-gpio,delay-us = <2>;
+
+		#address-cells = <1>;
+		#size-cells = <0>;
+
+		lp5562@30 {
+			compatible = "ti,lp5562";
+			reg = <0x30>;
+
+			clock-mode = /bits/ 8 <2>;
+			label = "notification-leds";
+
+			#address-cells = <1>;
+			#size-cells = <0>;
+
+			led@0 {
+				reg = <0>;
+				chan-name = "notification-red";
+				color = <LED_COLOR_ID_RED>;
+				led-cur = /bits/ 8 <0x40>;
+				max-cur = /bits/ 8 <0x40>;
+			};
+
+			led@1 {
+				reg = <1>;
+				chan-name = "notification-green";
+				color = <LED_COLOR_ID_GREEN>;
+				led-cur = /bits/ 8 <0x40>;
+				max-cur = /bits/ 8 <0x40>;
+			};
+
+			led@2 {
+				reg = <2>;
+				chan-name = "notification-blue";
+				color = <LED_COLOR_ID_BLUE>;
+				led-cur = /bits/ 8 <0x40>;
+				max-cur = /bits/ 8 <0x40>;
+			};
+		};
+	};
+
 	tsp_vdd: regulator-tsp-vdd-en {
 		compatible = "regulator-fixed";
 		regulator-name = "tsp_vdd_en";