From: Chen-Yu Tsai Date: Fri, 1 Dec 2017 16:27:33 +0000 (+0800) Subject: arm64: dts: allwinner: a64: bananapi-m64: Add LED device node X-Git-Tag: v4.19~1679^2~29^2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=36252668c14ca14691d40c3455849ac5d8a60b62;p=platform%2Fkernel%2Flinux-rpi.git arm64: dts: allwinner: a64: bananapi-m64: Add LED device node The Bananapi-M64 has 3 LEDS in red, green, and blue. These are toggled via GPIO lines, which drive transistors that control current across the LEDS. The red LED is by default on, via an additional pull-up on the control line. We consider this means that it is a power indicator. So we set the "default-on" property for it. The pingroups the GPIO lines belong to require external regulators be enabled to be able to drive the GPIO high. These regulators also have other purposes. However the pin controller does not have bindings for regulators. Here we just set them to always-on. Signed-off-by: Chen-Yu Tsai Signed-off-by: Maxime Ripard --- diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts b/arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts index 45bdbfb..1abb450 100644 --- a/arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts +++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts @@ -60,6 +60,26 @@ stdout-path = "serial0:115200n8"; }; + leds { + compatible = "gpio-leds"; + + pwr-led { + label = "bananapi-m64:red:pwr"; + gpios = <&pio 3 24 GPIO_ACTIVE_HIGH>; /* PD24 */ + default-state = "on"; + }; + + green { + label = "bananapi-m64:green:user"; + gpios = <&pio 4 14 GPIO_ACTIVE_HIGH>; /* PE14 */ + }; + + blue { + label = "bananapi-m64:blue:user"; + gpios = <&pio 4 15 GPIO_ACTIVE_HIGH>; /* PE15 */ + }; + }; + wifi_pwrseq: wifi_pwrseq { compatible = "mmc-pwrseq-simple"; reset-gpios = <&r_pio 0 2 GPIO_ACTIVE_LOW>; /* PL2 */ @@ -152,6 +172,17 @@ #include "axp803.dtsi" +®_aldo1 { + /* + * This regulator also drives the PE pingroup GPIOs, + * which also controls two LEDs. + */ + regulator-always-on; + regulator-min-microvolt = <2800000>; + regulator-max-microvolt = <2800000>; + regulator-name = "afvcc-csi"; +}; + ®_aldo2 { regulator-always-on; regulator-min-microvolt = <1800000>; @@ -167,6 +198,11 @@ }; ®_dc1sw { + /* + * This regulator also indirectly drives the PD pingroup GPIOs, + * which also controls the power LED. + */ + regulator-always-on; regulator-name = "vcc-phy"; };