diff mbox series

[1/3] arm64: dts: rockchip: Add Pinephone Pro support for GPIO LEDs

Message ID 20240623165326.1273944-1-pbrobinson@gmail.com (mailing list archive)
State New
Headers show
Series [1/3] arm64: dts: rockchip: Add Pinephone Pro support for GPIO LEDs | expand

Commit Message

Peter Robinson June 23, 2024, 4:53 p.m. UTC
The PinePhone Pro has a cluster of 3 single RGB GPIO LEDs.
Add the GPIO entries for the 3 red/green/blue LEDs and an
entry for the multi-color group to allow them to be used
as a combined RGB LED.

Signed-off-by: Peter Robinson <pbrobinson@gmail.com>
---
 .../dts/rockchip/rk3399-pinephone-pro.dts     | 43 +++++++++++++++++++
 1 file changed, 43 insertions(+)

Comments

Heiko Stuebner June 24, 2024, 4:20 p.m. UTC | #1
On Sun, 23 Jun 2024 17:53:20 +0100, Peter Robinson wrote:
> The PinePhone Pro has a cluster of 3 single RGB GPIO LEDs.
> Add the GPIO entries for the 3 red/green/blue LEDs and an
> entry for the multi-color group to allow them to be used
> as a combined RGB LED.
> 
> 

Applied, thanks!

[1/3] arm64: dts: rockchip: Add Pinephone Pro support for GPIO LEDs
      commit: ee9b6b6414790223e8315ef0e25df69b3b5e6e50
[2/3] arm64: dts: rockchip: Enable PinePhone Pro IMU sensor
      commit: c1d9ced35621bdc894321ad284a29922dd3e7251
[3/3] arm64: dts: rockchip: Enable PinePhone Pro vibrator
      commit: 3f9cfd4f5e453aa33ca4dc40959a1cc524501160

Best regards,
diff mbox series

Patch

diff --git a/arch/arm64/boot/dts/rockchip/rk3399-pinephone-pro.dts b/arch/arm64/boot/dts/rockchip/rk3399-pinephone-pro.dts
index e5709c7ee06aa..5e46f682f0f0b 100644
--- a/arch/arm64/boot/dts/rockchip/rk3399-pinephone-pro.dts
+++ b/arch/arm64/boot/dts/rockchip/rk3399-pinephone-pro.dts
@@ -12,6 +12,7 @@ 
 /dts-v1/;
 #include <dt-bindings/input/gpio-keys.h>
 #include <dt-bindings/input/linux-event-codes.h>
+#include <dt-bindings/leds/common.h>
 #include "rk3399.dtsi"
 #include "rk3399-opp.dtsi"
 
@@ -69,6 +70,34 @@  key-power {
 		};
 	};
 
+	leds {
+		compatible = "gpio-leds";
+		pinctrl-names = "default";
+		pinctrl-0 = <&red_led_pin &green_led_pin &blue_led_pin>;
+
+		led_red: led-0 {
+			color = <LED_COLOR_ID_RED>;
+			gpios = <&gpio4 RK_PD2 GPIO_ACTIVE_HIGH>;
+		};
+
+		led_green: led-1 {
+			color = <LED_COLOR_ID_GREEN>;
+			gpios = <&gpio4 RK_PD5 GPIO_ACTIVE_HIGH>;
+		};
+
+		led_blue: led-2 {
+			color = <LED_COLOR_ID_BLUE>;
+			gpios = <&gpio4 RK_PD6 GPIO_ACTIVE_HIGH>;
+		};
+	};
+
+	multi-led {
+		compatible = "leds-group-multicolor";
+		color = <LED_COLOR_ID_RGB>;
+		function = LED_FUNCTION_INDICATOR;
+		leds = <&led_red>, <&led_green>, <&led_blue>;
+	};
+
 	vcc_sys: vcc-sys-regulator {
 		compatible = "regulator-fixed";
 		regulator-name = "vcc_sys";
@@ -481,6 +510,20 @@  pwrbtn_pin: pwrbtn-pin {
 		};
 	};
 
+	leds {
+		red_led_pin: red-led-pin {
+			rockchip,pins = <4 RK_PD2 RK_FUNC_GPIO &pcfg_pull_none>;
+		};
+
+		green_led_pin: green-led-pin {
+			rockchip,pins = <4 RK_PD5 RK_FUNC_GPIO &pcfg_pull_none>;
+		};
+
+		blue_led_pin: blue-led-pin {
+			rockchip,pins = <4 RK_PD6 RK_FUNC_GPIO &pcfg_pull_none>;
+		};
+	};
+
 	pmic {
 		pmic_int_l: pmic-int-l {
 			rockchip,pins = <1 RK_PC5 RK_FUNC_GPIO &pcfg_pull_up>;