Skip to contentSkip to conversation

Add device tree data for AM33XX devices

PATCH Superseded AnilKumar Ch 4 participants 13 messages Aug 28, 2012 – Sep 3, 2012 Device tree bindings

v4 of 7 Superseded Latest is v7 →

lore
Share & tools
lore
#0 lore raw

v4 cover Add device tree data for AM33XX devices

Add pinctrl and d_can device tree data to AM33XX family of devices. First two patches add support for pinctrl DT data and third one adds dcan DT data.

Reason behind combining these patches is to apply cleanly on linux-omap tree, because these are sequential patches.

These patches were tested on AM335x-Bone and AM335x-EVM apply on linux-omap:master

d_can:
Changes from v3:
- Removed d_can1 node from am335x-evm.dts file. Instance one of CAN (d_can1) is available on AM335x-EVM only under a specific CPLD mode selection. am335x-evm.dts does not support this mode so remove the d_can1 node.
- Dropped d_can pinmux settings patch, above comment applies here as well.

Changes from v2:
- Incorporated Vaibhav H's comments on v2
* Added dcan0 instances to am33xx.dtsi file

Changes from v1:
- These two patches separated from c_can DT support patch series.

pinctrl:
Changes from v3:
- Updated the reg length based on latest AM335x TRM.

Changes from v2:
- user led pinmux comments updated according to Tony's comment.

Changes from v1:
- Rebased the patches based on latest pinctrl-single driver

AnilKumar Ch (3):
arm/dts: AM33XX: Add basic pinctrl device tree data arm/dts: AM33XX: Configure pinmuxs for user leds control on Bone arm/dts: AM33XX: Add D_CAN device tree data

 arch/arm/boot/dts/am335x-bone.dts |   14 ++++++++++++++
 arch/arm/boot/dts/am33xx.dtsi     |   27 +++++++++++++++++++++++++++
 2 files changed, 41 insertions(+)
Signature · 1 line
1.7.9.5
#1 lore raw

PATCH RESEND v4 1/3 arm/dts: AM33XX: Add basic pinctrl device tree data

Adds basic pinctrl device tree data for AM33XX family of devices. This patch is based on the pinctrl-single driver.

---
 arch/arm/boot/dts/am33xx.dtsi |    9 +++++++++
 1 file changed, 9 insertions(+)
arch/arm/boot/dts/am33xx.dtsi +9 -0
index dde76f7..dfe9c559 100644
@@ -40,6 +40,15 @@
 		};
 	};
 
+	am3358_pinmux: pinmux at 44E10800 {
+		compatible = "pinctrl-single";
+		reg = <0x44E10800 0x0238>;
+		#address-cells = <1>;
+		#size-cells = <0>;
+		pinctrl-single,register-width = <32>;
+		pinctrl-single,function-mask = <0x7F>;
+	};
+
 	/*
 	 * XXX: Use a flat representation of the AM33XX interconnect.
 	 * The real AM33XX interconnect network is quite complex.Since
Signature · 1 line
1.7.9.5
#2 lore raw

PATCH RESEND v4 1/3 arm/dts: AM33XX: Add basic pinctrl device tree data

Quoted 15 lines · AnilKumar Ch

Adds basic pinctrl device tree data for AM33XX family of devices. This patch is based on the pinctrl-single driver.

---
 arch/arm/boot/dts/am33xx.dtsi |    9 +++++++++
 1 file changed, 9 insertions(+)
arch/arm/boot/dts/am33xx.dtsi +0 -0
index dde76f7..dfe9c559 100644
@@ -40,6 +40,15 @@
 		};
 	};

arch/arm/boot/dts/am33xx.dtsi line 51

Quoted 10 lines
arch/arm/boot/dts/am33xx.dtsi +9 -0
 
+	am3358_pinmux: pinmux at 44E10800 {
+		compatible = "pinctrl-single";
+		reg = <0x44E10800 0x0238>;
+		#address-cells = <1>;
+		#size-cells = <0>;
+		pinctrl-single,register-width = <32>;
+		pinctrl-single,function-mask = <0x7F>;
+	};
+

Nit: Please use lower case for the hex numbers as that's the standard in Linux kernel.

Tony

#3 lore raw

PATCH RESEND v4 1/3 arm/dts: AM33XX: Add basic pinctrl device tree data

Quoted 17 lines · Tony Lindgren
Quoted 16 lines · AnilKumar Ch

Adds basic pinctrl device tree data for AM33XX family of devices. This patch is based on the pinctrl-single driver.

---
 arch/arm/boot/dts/am33xx.dtsi |    9 +++++++++
 1 file changed, 9 insertions(+)
arch/arm/boot/dts/am33xx.dtsi +0 -0
index dde76f7..dfe9c559 100644
@@ -40,6 +40,15 @@
 		};
 	};
 
Quoted 13 lines

arch/arm/boot/dts/am33xx.dtsi line 51

Quoted 9 lines
arch/arm/boot/dts/am33xx.dtsi +9 -0
+	am3358_pinmux: pinmux at 44E10800 {
+		compatible = "pinctrl-single";
+		reg = <0x44E10800 0x0238>;
+		#address-cells = <1>;
+		#size-cells = <0>;
+		pinctrl-single,register-width = <32>;
+		pinctrl-single,function-mask = <0x7F>;
+	};
+

Nit: Please use lower case for the hex numbers as that's the standard in Linux kernel.

Tony,

I could see that you have already merged the patch from Anil for regulator support in bone & evm dts file, which has uppper-case hex numbers. Request you to merge the patch which I submitted to convert all hex numbers to lower-case and then merge all dts changes only with lower-case presentation.

http://www.mail-archive.com/linux-omap at vger.kernel.org/msg74393.html

Thanks,
Vaibhav

Quoted 6 lines

Tony
_______________________________________________
devicetree-discuss mailing list
devicetree-discuss at lists.ozlabs.org
https://lists.ozlabs.org/listinfo/devicetree-discuss

#4 lore raw

PATCH RESEND v4 2/3 arm/dts: AM33XX: Configure pinmuxs for user leds control on Bone

In reply to AnilKumar Ch

Adds GPIO pinctrl nodes to am3358_pinmux master node to control user leds (USR0, USR1, USR2 and USR3) present on BeagleBone.

---
 arch/arm/boot/dts/am335x-bone.dts |   14 ++++++++++++++
 1 file changed, 14 insertions(+)
arch/arm/boot/dts/am335x-bone.dts +14 -0
index a7906cb..58f5042 100644
@@ -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 */
+			>;
+		};
+	};
+
 	ocp {
 		uart1: serial at 44E09000 {
 			status = "okay";
Signature · 1 line
1.7.9.5
#5 lore raw

PATCH RESEND v4 2/3 arm/dts: AM33XX: Configure pinmuxs for user leds control on Bone

Quoted 20 lines · AnilKumar Ch

Adds GPIO pinctrl nodes to am3358_pinmux master node to control user leds (USR0, USR1, USR2 and USR3) present on BeagleBone.

---
 arch/arm/boot/dts/am335x-bone.dts |   14 ++++++++++++++
 1 file changed, 14 insertions(+)
arch/arm/boot/dts/am335x-bone.dts +4 -0
index a7906cb..58f5042 100644
@@ -18,6 +18,20 @@
 		reg = <0x80000000 0x10000000>; /* 256 MB */
 	};
 
+	am3358_pinmux: pinmux at 44E10800 {
+		pinctrl-names = "default";
+		pinctrl-0 = <&userled_pins>;
+

arch/arm/boot/dts/am335x-bone.dts line 34

Quoted 10 lines
arch/arm/boot/dts/am335x-bone.dts +10 -0
+		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.

Tony

#6 lore raw

PATCH RESEND v4 2/3 arm/dts: AM33XX: Configure pinmuxs for user leds control on Bone

Op 30 aug. 2012, om 22:35 heeft Tony Lindgren <[email protected]> het volgende geschreven:

Quoted 27 lines · AnilKumar Ch
Quoted 26 lines

Adds GPIO pinctrl nodes to am3358_pinmux master node to control user leds (USR0, USR1, USR2 and USR3) present on BeagleBone.

---
arch/arm/boot/dts/am335x-bone.dts | 14 ++++++++++++++

1 file changed, 14 insertions(+)
arch/arm/boot/dts/am335x-bone.dts +10 -0
index a7906cb..58f5042 100644
@@ -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 */
Quoted 8 lines

arch/arm/boot/dts/am335x-bone.dts line 34

Quoted 4 lines
arch/arm/boot/dts/am335x-bone.dts +4 -0
+			>;
+		};
+	};
+

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";

+ };

#7 lore raw

PATCH RESEND v4 2/3 arm/dts: AM33XX: Configure pinmuxs for user leds control on Bone

Hi Koen,

Quoted 44 lines · Koen Kooi

Op 30 aug. 2012, om 22:35 heeft Tony Lindgren <[email protected]> het volgende geschreven:

Quoted 27 lines · AnilKumar Ch
Quoted 26 lines

Adds GPIO pinctrl nodes to am3358_pinmux master node to control user leds (USR0, USR1, USR2 and USR3) present on BeagleBone.

---
arch/arm/boot/dts/am335x-bone.dts | 14 ++++++++++++++

1 file changed, 14 insertions(+)
arch/arm/boot/dts/am335x-bone.dts +10 -0
index a7906cb..58f5042 100644
@@ -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 */
Quoted 8 lines

arch/arm/boot/dts/am335x-bone.dts line 34

Quoted 4 lines
arch/arm/boot/dts/am335x-bone.dts +4 -0
+			>;
+		};
+	};
+

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:

(quoted diff) +3 -0
+       leds {
+               compatible = "gpio-leds";
+               heartbeat {

Review

Quoted 10 lines
(quoted diff) +10 -0
+                       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?

Thanks
AnilKumar

#8 lore raw

PATCH RESEND v4 2/3 arm/dts: AM33XX: Configure pinmuxs for user leds control on Bone

Op 1 sep. 2012 om 09:01 heeft "AnilKumar, Chimata" <[email protected]> het volgende geschreven:

Quoted 92 lines

Hi Koen,

Quoted 44 lines · Koen Kooi

Op 30 aug. 2012, om 22:35 heeft Tony Lindgren <[email protected]> het volgende geschreven:

Quoted 27 lines · AnilKumar Ch
Quoted 26 lines

Adds GPIO pinctrl nodes to am3358_pinmux master node to control user leds (USR0, USR1, USR2 and USR3) present on BeagleBone.

---
arch/arm/boot/dts/am335x-bone.dts | 14 ++++++++++++++

1 file changed, 14 insertions(+)
arch/arm/boot/dts/am335x-bone.dts +10 -0
index a7906cb..58f5042 100644
@@ -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 */
Quoted 8 lines

arch/arm/boot/dts/am335x-bone.dts line 34

Quoted 4 lines
arch/arm/boot/dts/am335x-bone.dts +4 -0
+            >;
+        };
+    };
+

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:

(quoted diff) +3 -0
+       leds {
+               compatible = "gpio-leds";
+               heartbeat {

Review

Quoted 10 lines
(quoted diff) +10 -0
+                       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.

(quoted diff) +30 -0
+        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";
+            };
+        };
+
Quoted 2 lines

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 bone

Quoted 3 lines

Thanks
AnilKumar

#9 lore raw

PATCH RESEND v4 2/3 arm/dts: AM33XX: Configure pinmuxs for user leds control on Bone

Hi Koen,

Quoted 96 lines · Koen Kooi

Op 1 sep. 2012 om 09:01 heeft "AnilKumar, Chimata" <[email protected]> het volgende geschreven:

Quoted 92 lines

Hi Koen,

Quoted 44 lines · Koen Kooi

Op 30 aug. 2012, om 22:35 heeft Tony Lindgren <[email protected]> het volgende geschreven:

Quoted 27 lines · AnilKumar Ch
Quoted 26 lines

Adds GPIO pinctrl nodes to am3358_pinmux master node to control user leds (USR0, USR1, USR2 and USR3) present on BeagleBone.

---
arch/arm/boot/dts/am335x-bone.dts | 14 ++++++++++++++

1 file changed, 14 insertions(+)
arch/arm/boot/dts/am335x-bone.dts +10 -0
index a7906cb..58f5042 100644
@@ -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 */
Quoted 8 lines

arch/arm/boot/dts/am335x-bone.dts line 34

Quoted 4 lines
arch/arm/boot/dts/am335x-bone.dts +4 -0
+            >;
+        };
+    };
+

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:

(quoted diff) +3 -0
+       leds {
+               compatible = "gpio-leds";
+               heartbeat {

Review

Quoted 10 lines
(quoted diff) +10 -0
+                       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.

(quoted diff) +30 -0
+        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";
+            };
+        };
+
Quoted 5 lines
Quoted 2 lines

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 bone

I will merge your changes and repost the patches.

Thanks
AnilKumar

#10 lore raw

PATCH RESEND v4 2/3 arm/dts: AM33XX: Configure pinmuxs for user leds control on Bone

In reply to Koen Kooi

Hi Koen,

Quoted 99 lines · Chimata

Hi Koen,

Quoted 96 lines · Koen Kooi

Op 1 sep. 2012 om 09:01 heeft "AnilKumar, Chimata" <[email protected]> het volgende geschreven:

Quoted 92 lines

Hi Koen,

Quoted 44 lines · Koen Kooi

Op 30 aug. 2012, om 22:35 heeft Tony Lindgren <[email protected]> het volgende geschreven:

Quoted 27 lines · AnilKumar Ch
Quoted 26 lines

Adds GPIO pinctrl nodes to am3358_pinmux master node to control user leds (USR0, USR1, USR2 and USR3) present on BeagleBone.

---
arch/arm/boot/dts/am335x-bone.dts | 14 ++++++++++++++

1 file changed, 14 insertions(+)
arch/arm/boot/dts/am335x-bone.dts +10 -0
index a7906cb..58f5042 100644
@@ -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 */
Quoted 8 lines

arch/arm/boot/dts/am335x-bone.dts line 34

Quoted 4 lines
arch/arm/boot/dts/am335x-bone.dts +4 -0
+            >;
+        };
+    };
+

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:

(quoted diff) +3 -0
+       leds {
+               compatible = "gpio-leds";
+               heartbeat {

Review

Quoted 10 lines
(quoted diff) +10 -0
+                       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.

(quoted diff) +30 -0
+        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";
+            };
+        };
+
Quoted 8 lines
Quoted 5 lines
Quoted 2 lines

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 bone

I 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

#11 lore raw

PATCH v4 3/3 arm/dts: AM33XX: Add D_CAN device tree data

In reply to AnilKumar Ch

Add Bosch D_CAN controller device tree data to AM33XX dtsi file by adding d_can device nodes with all the necessary parameters.

---
 arch/arm/boot/dts/am33xx.dtsi |   18 ++++++++++++++++++
 1 file changed, 18 insertions(+)
arch/arm/boot/dts/am33xx.dtsi +18 -0
index dfe9c559..d965137 100644
@@ -177,5 +177,23 @@
 			compatible = "ti,omap3-wdt";
 			ti,hwmods = "wd_timer2";
 		};
+
+		dcan0: d_can at 481CC000 {
+			compatible = "bosch,d_can";
+			ti,hwmods = "d_can0";
+			reg = <0x481CC000 0x2000>;
+			interrupts = <52>;
+			interrupt-parent = <&intc>;
+			status = "disabled";
+		};
+
+		dcan1: d_can at 481D0000 {
+			compatible = "bosch,d_can";
+			ti,hwmods = "d_can1";
+			reg = <0x481D0000 0x2000>;
+			interrupts = <55>;
+			interrupt-parent = <&intc>;
+			status = "disabled";
+		};
 	};
 };
Signature · 1 line
1.7.9.5
#12 lore raw

PATCH v4 3/3 arm/dts: AM33XX: Add D_CAN device tree data

Quoted 27 lines · AnilKumar Ch

Add Bosch D_CAN controller device tree data to AM33XX dtsi file by adding d_can device nodes with all the necessary parameters.

---
 arch/arm/boot/dts/am33xx.dtsi |   18 ++++++++++++++++++
 1 file changed, 18 insertions(+)
arch/arm/boot/dts/am33xx.dtsi +10 -0
index dfe9c559..d965137 100644
@@ -177,5 +177,23 @@
 			compatible = "ti,omap3-wdt";
 			ti,hwmods = "wd_timer2";
 		};
+
+		dcan0: d_can at 481CC000 {
+			compatible = "bosch,d_can";
+			ti,hwmods = "d_can0";
+			reg = <0x481CC000 0x2000>;
+			interrupts = <52>;
+			interrupt-parent = <&intc>;
+			status = "disabled";
+		};
+

arch/arm/boot/dts/am33xx.dtsi line 199

Quoted 10 lines
arch/arm/boot/dts/am33xx.dtsi +8 -0
+		dcan1: d_can at 481D0000 {
+			compatible = "bosch,d_can";
+			ti,hwmods = "d_can1";
+			reg = <0x481D0000 0x2000>;
+			interrupts = <55>;
+			interrupt-parent = <&intc>;
+			status = "disabled";
+		};
 	};
 };

Use lower case for hex numbers here too and add support to claim the pins in the dcan driver.

Tony