Skip to contentSkip to conversation

tegra: add Colibri T20 board support

PATCH Superseded Lucas Stach 2 participants 4 messages Oct 7, 2012 – Oct 8, 2012 Tegra architecture support

lore
Share & tools
lore
#0 lore raw

PATCH v3 1/1 tegra: add Colibri T20 board support

This adds board support for the Toradex Colibri T20 module.

Working functions:
- SD card boot
- USB boot
- Network
- NAND environment

---
v2:
- rename .dts file to match board name
v3:
- make comments more meaningful
- split into module and carrier board specific part to ease porting to other carrier boards

---
 MAINTAINERS                                        |  4 ++
 .../colibri_t20-common/colibri_t20-common.c        | 44 ++++++++++++
 .../colibri_t20-common/colibri_t20-common.h        | 16 +++++
 board/toradex/colibri_t20_iris/Makefile            | 40 +++++++++++
 board/toradex/colibri_t20_iris/colibri_t20_iris.c  | 46 ++++++++++++
 board/toradex/dts/tegra20-colibri_t20_iris.dts     | 38 ++++++++++
 boards.cfg                                         |  1 +
 include/configs/colibri_t20_iris.h                 | 83 ++++++++++++++++++++++
 8 Dateien ge?ndert, 272 Zeilen hinzugef?gt(+)
 create mode 100644 board/toradex/colibri_t20-common/colibri_t20-common.c
 create mode 100644 board/toradex/colibri_t20-common/colibri_t20-common.h
 create mode 100644 board/toradex/colibri_t20_iris/Makefile
 create mode 100644 board/toradex/colibri_t20_iris/colibri_t20_iris.c
 create mode 100644 board/toradex/dts/tegra20-colibri_t20_iris.dts
 create mode 100644 include/configs/colibri_t20_iris.h
MAINTAINERS +4 -0
index 1f03d8d..aa5e1ba 100644
@@ -904,6 +904,10 @@ Michal Simek <[email protected]>
 
 	zynq		ARM ARMV7 (Zynq SoC)
 
+Lucas Stach <[email protected]>
+
+	colibri_t20_iris	Tegra20 (ARM7 & A9 Dual Core)
+
 Nick Thompson <[email protected]>
 
 	da830evm	ARM926EJS (DA830/OMAP-L137)
board/toradex/colibri_t20-common/colibri_t20-common.c new file +44 -0

44 lines not on this page · raw message

board/toradex/colibri_t20-common/colibri_t20-common.h new file +16 -0
new file mode 100644
index 0000000..76dc860
@@ -0,0 +1,16 @@
+/*
+ *  Copyright (C) 2012 Lucas Stach
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of
+ * the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ */
+
+void colibri_t20_common_pin_mux_usb(void);
board/toradex/colibri_t20_iris/Makefile new file +40 -0
new file mode 100644
index 0000000..c138729
@@ -0,0 +1,40 @@
+#
+#  (C) Copyright 2012 Lucas Stach
+#
+#  This program is free software; you can redistribute it and/or
+#  modify it under the terms of the GNU General Public License as
+#  published by the Free Software Foundation; either version 2 of
+#  the License, or (at your option) any later version.
+#
+#  This program is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#  GNU General Public License for more details.
+#
+#
+
+include $(TOPDIR)/config.mk
+
+$(shell mkdir -p $(obj)../../nvidia/common)
+$(shell mkdir -p $(obj)../colibri_t20-common)
+
+LIB	= $(obj)lib$(BOARD).o
+
+COBJS	:= ../../nvidia/common/board.o
+COBJS	+= ../colibri_t20-common/colibri_t20-common.o
+COBJS	+= $(BOARD).o
+
+SRCS	:= $(COBJS:.o=.c)
+OBJS	:= $(addprefix $(obj),$(COBJS))
+
+$(LIB):	$(obj).depend $(OBJS)
+	$(call cmd_link_o_target, $(OBJS))
+
+#########################################################################
+
+# defines $(obj).depend target
+include $(SRCTREE)/rules.mk
+
+sinclude $(obj).depend
+
+#########################################################################
board/toradex/colibri_t20_iris/colibri_t20_iris.c new file +46 -0

46 lines not on this page · raw message

board/toradex/dts/tegra20-colibri_t20_iris.dts new file +38 -0
new file mode 100644
index 0000000..5e0d132
@@ -0,0 +1,38 @@
+/dts-v1/;
+
+/include/ ARCH_CPU_DTS
+
+/ {
+	model = "Toradex Colibri T20";
+	compatible = "toradex,t20", "nvidia,tegra20";
+	
+	aliases {
+		usb0 = "/usb at c5008000";
+		usb1 = "/usb at c5000000";
+		usb2 = "/usb at c5004000";
+	};
+
+	usb at c5000000 {
+		dr_mode = "otg";
+	};
+	
+	usb at c5004000 {
+		nvidia,phy-reset-gpio = <&gpio 169 0>; /* PV1 */
+		nvidia,vbus-gpio = <&gpio 217 0>; /* PBB1 */
+	};
+
+	usb at c5008000 {
+		nvidia,vbus-gpio = <&gpio 178 1>; /* PW2 low-active */
+	};
+	
+	nand-controller at 70008000 {
+		nvidia,wp-gpios = <&gpio 144 0>; /* PS0 */
+		nvidia,width = <8>;
+		nvidia,timing = <15 100 25 80 25 10 15 10 100>;
+
+		nand at 0 {
+			reg = <0>;
+			compatible = "nand-flash";
+		};
+	};
+};
boards.cfg +1 -0
index 25e32e0..df72233 100644
@@ -276,6 +276,7 @@ harmony                      arm         armv7:arm720t harmony           nvidia
 seaboard                     arm         armv7:arm720t seaboard          nvidia         tegra20
 ventana                      arm         armv7:arm720t ventana           nvidia         tegra20
 whistler                     arm         armv7:arm720t whistler          nvidia         tegra20
+colibri_t20_iris             arm         armv7:arm720t colibri_t20_iris  toradex        tegra20
 u8500_href                   arm         armv7       u8500               st-ericsson    u8500
 snowball                     arm         armv7       snowball               st-ericsson    u8500
 kzm9g                        arm         armv7       kzm9g               kmc            rmobile
include/configs/colibri_t20_iris.h new file +83 -0

83 lines not on this page · raw message

Signature · 1 line
1.7.11.4
#1 lore raw

PATCH v3 1/1 tegra: add Colibri T20 board support

board/toradex/dts/tegra20-colibri_t20_iris.dts

Quoted 18 lines · Lucas Stach

This adds board support for the Toradex Colibri T20 module.

Working functions:
- SD card boot
- USB boot
- Network
- NAND environment

---
v2:
- rename .dts file to match board name
v3:
- make comments more meaningful
- split into module and carrier board specific part to ease porting to other carrier boards

board/toradex/dts/tegra20-colibri_t20_iris.dts +0 -0

I suppose we can do this later, but since this patch has the C files split into separate board and carrier code, I'd also expect the .dts files to be split up in the same way.

#2 lore raw

PATCH v3 1/1 tegra: add Colibri T20 board support

Am Montag, den 08.10.2012, 10:28 -0600 schrieb Stephen Warren:

Quoted 18 lines · Lucas Stach
Quoted 16 lines

This adds board support for the Toradex Colibri T20 module.

Working functions:
- SD card boot
- USB boot
- Network
- NAND environment

---
v2:
- rename .dts file to match board name
v3:
- make comments more meaningful
- split into module and carrier board specific part to ease porting to other carrier boards

Quoted 6 lines

board/toradex/dts/tegra20-colibri_t20_iris.dts

Quoted 1 line
board/toradex/dts/tegra20-colibri_t20_iris.dts +0 -0

I suppose we can do this later, but since this patch has the C files split into separate board and carrier code, I'd also expect the .dts files to be split up in the same way.

I initially tried exactly that, but since the .dts files are compiled a bit different in u-boot than in the linux kernel it's not as easy as doing a simple include. I'm planning to split them up later on, but I first have to familiarize myself with the build process for dts in u-boot.

For now I would wish to get this included as is, to get Colibri T20 some public visibility as a working Tegra platform, so others could take this board into account when making changes to the Tegra 20 common platform.

Thanks,
Lucas

#3 lore raw

PATCH v3 1/1 tegra: add Colibri T20 board support

Quoted 25 lines · Lucas Stach

Am Montag, den 08.10.2012, 10:28 -0600 schrieb Stephen Warren:

Quoted 18 lines · Lucas Stach
Quoted 16 lines

This adds board support for the Toradex Colibri T20 module.

Working functions:
- SD card boot
- USB boot
- Network
- NAND environment

---
v2:
- rename .dts file to match board name
v3:
- make comments more meaningful
- split into module and carrier board specific part to ease porting to other carrier boards

Quoted 5 lines

board/toradex/dts/tegra20-colibri_t20_iris.dts

Quoted 1 line
board/toradex/dts/tegra20-colibri_t20_iris.dts +0 -0

I suppose we can do this later, but since this patch has the C files split into separate board and carrier code, I'd also expect the .dts files to be split up in the same way.

Quoted 5 lines

I initially tried exactly that, but since the .dts files are compiled a bit different in u-boot than in the linux kernel it's not as easy as doing a simple include. I'm planning to split them up later on, but I first have to familiarize myself with the build process for dts in u-boot.

Oh right. Perhaps we should start to rely on the latest dtc, which is able to co-exist with the regular C pre-processor, and can support a bunch of include paths or something...

Quoted 3 lines

For now I would wish to get this included as is, to get Colibri T20 some public visibility as a working Tegra platform, so others could take this board into account when making changes to the Tegra 20 common platform.

Sure.