Commit 719f39fe authored by Peter Chubb's avatar Peter Chubb Committed by Kukjin Kim

ARM: dts: exynos5422-odroidxu3: Hook up PWM and use it for LEDs

PWM output wasn't working because it wasn't hooked up to its pincontrol.
This patch:
   - hooks up PWM to its pincontrol, and documents what
     the outputs are on the XU3
   - switches the LEDs that are on PWM outputs to use PWM
     rather than GPIO.

The main effect is that the brightness of the LEDs can be controlled, and
user-mode fan control is enabled via /sys/class/pwm
Acked-by: default avatarKrzysztof Kozlowski <k.kozlowski@samsung.com>
Signed-off-by: default avatarPeter Chubb <peter.chubb@nicta.com.au>
Signed-off-by: default avatarKrzysztof Kozlowski <k.kozlowski@samsung.com>
Signed-off-by: default avatarKukjin Kim <kgene@kernel.org>
parent 81ce4816
...@@ -285,25 +285,35 @@ hdmiddc@50 { ...@@ -285,25 +285,35 @@ hdmiddc@50 {
}; };
}; };
leds { pwmleds {
compatible = "gpio-leds"; compatible = "pwm-leds";
heartbeat {
label = "blue:heartbeart"; greenled {
gpios = <&gpb2 2 0>; label = "green:mmc0";
default-state = "off"; pwms = <&pwm 1 2000000 0>;
linux,default-trigger = "heartbeat"; pwm-names = "pwm1";
/*
* Green LED is much brighter than the others
* so limit its max brightness
*/
max_brightness = <127>;
linux,default-trigger = "mmc0";
}; };
eMMC { blueled {
label = "green:eMMC"; label = "blue:heartbeat";
gpios = <&gpb2 1 0>; pwms = <&pwm 2 2000000 0>;
default-state = "off"; pwm-names = "pwm2";
linux,default-trigger = "mmc0"; max_brightness = <255>;
linux,default-trigger = "heartbeat";
};
}; };
microSD { gpioleds {
compatible = "gpio-leds";
redled {
label = "red:microSD"; label = "red:microSD";
gpios = <&gpx2 3 0>; gpios = <&gpx2 3 GPIO_ACTIVE_HIGH>;
default-state = "off"; default-state = "off";
linux,default-trigger = "mmc1"; linux,default-trigger = "mmc1";
}; };
...@@ -472,6 +482,18 @@ ina231@45 { ...@@ -472,6 +482,18 @@ ina231@45 {
}; };
}; };
&pwm {
/*
* PWM 0 -- fan
* PWM 1 -- Green LED
* PWM 2 -- Blue LED
* PWM 3 -- on MIPI connector for backlight
*/
pinctrl-0 = <&pwm0_out &pwm1_out &pwm2_out &pwm3_out>;
pinctrl-names = "default";
status = "okay";
};
&rtc { &rtc {
status = "okay"; status = "okay";
clocks = <&clock CLK_RTC>, <&s2mps11_osc S2MPS11_CLK_AP>; clocks = <&clock CLK_RTC>, <&s2mps11_osc S2MPS11_CLK_AP>;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment