[PATCH RESEND v4 2/3] arm/dts: AM33XX: Configure pinmuxs for user leds control on Bone
From: AnilKumar, Chimata <hidden>
Date: 2012-09-03 12:25:36
Also in:
linux-devicetree, linux-omap
Hi Koen, On Sat, Sep 01, 2012 at 18:21:10, AnilKumar, Chimata wrote:
Hi Koen, On Sat, Sep 01, 2012 at 16:17:35, Koen Kooi wrote:quoted
Op 1 sep. 2012 om 09:01 heeft "AnilKumar, Chimata" [off-list ref] het volgende geschreven:quoted
Hi Koen, On Fri, Aug 31, 2012 at 21:23:18, Koen Kooi wrote:quoted
Op 30 aug. 2012, om 22:35 heeft Tony Lindgren [off-list ref] het volgende geschreven:quoted
* AnilKumar Ch [off-list ref] [120828 01:11]:quoted
Adds GPIO pinctrl nodes to am3358_pinmux master node to control user leds (USR0, USR1, USR2 and USR3) present on BeagleBone. Signed-off-by: AnilKumar Ch <redacted> --- arch/arm/boot/dts/am335x-bone.dts | 14 ++++++++++++++ 1 file changed, 14 insertions(+)diff --git a/arch/arm/boot/dts/am335x-bone.dts b/arch/arm/boot/dts/am335x-bone.dts index a7906cb..58f5042 100644 --- a/arch/arm/boot/dts/am335x-bone.dts +++ b/arch/arm/boot/dts/am335x-bone.dts@@ -18,6 +18,20 @@ reg = <0x80000000 0x10000000>; /* 256 MB */ }; + am3358_pinmux: pinmux at 44E10800 { + pinctrl-names = "default"; + pinctrl-0 = <&userled_pins>; + + userled_pins: pinmux_userled_pins { + pinctrl-single,pins = < + 0x54 0x7 /* gpmc_a5.gpio1_21, OUTPUT | MODE7 */ + 0x58 0x17 /* gpmc_a6.gpio1_22, OUTPUT_PULLUP | MODE7 */ + 0x5C 0x7 /* gpmc_a7.gpio1_23, OUTPUT | MODE7 */ + 0x60 0x17 /* gpmc_a8.gpio1_24, OUTPUT_PULLUP | MODE7 */ + >; + }; + }; +Looks like this patch should also claim these pins by the led driver. Then the led driver should just do pinctrl_get_select_default(&pdev->dev) in it's probe function to set the pins.FWIW, I've been using this for a while now: + leds { + compatible = "gpio-leds"; + heartbeat { + label = "beaglebone::usr0"; + gpios = <&gpio2 21 0>; + linux,default-trigger = "heartbeat"; + }; + + mmc { + label = "beaglebone:usr1"; + gpios = <&gpio2 22 0>; + linux,default-trigger = "mmc0"; + };Thanks for the inputs, similar data but not exact is added to v5 series. + gpio-leds { + compatible = "gpio-leds"; + pinctrl-names = "default"; + pinctrl-0 = <&userled_pins>; + + led0 { + label = "status:green:user0"; + gpios = <&gpio2 21 0>; + default-state = "off"; + }; + + led1 { + label = "status:green:user1"; + gpios = <&gpio2 22 0>; + default-state = "off"; + }; + + led2 { + label = "status:green:user2"; + gpios = <&gpio2 23 0>; + default-state = "off"; + }; + + led3 { + label = "status:green:user3"; + gpios = <&gpio2 24 0>; + default-state = "off"; + }; + }; + Can you review my v5 patches and tell me if there are any modifications/changes required?It would be nice to keep de heartbeat and mmc triggers like we have in the 3.2 kernel that ships with the boneI will merge your changes and repost the patches.
Adding first two leds according to your inputs and for other two
I am adding like this.
+ heartbeat {
+ label = "beaglebone:green:usr0";
+ gpios = <&gpio2 21 0>;
+ linux,default-trigger = "heartbeat";
+ default-state = "off";
+ };
+
+ mmc {
+ label = "beaglebone:green:usr1";
+ gpios = <&gpio2 22 0>;
+ linux,default-trigger = "mmc0";
+ default-state = "off";
+ };
+
+ timer {
+ label = "beaglebone:green:usr2";
+ gpios = <&gpio2 23 0>;
+ linux,default-trigger = "timer";
+ default-state = "off";
+ };
+
+ led3 {
+ label = "beaglebone:green:usr3";
+ gpios = <&gpio2 24 0>;
+ default-state = "off";
+ };
+ };
+
Thanks
AnilKumar