Skip to contentSkip to conversation

arm: tegra: initial support for apalis t30

PATCH Superseded Marcel Ziswiler 2 participants 3 messages Sep 2, 2014 – Sep 5, 2014

Subsystems (2)

v4 of 5 Superseded Latest is v5 →

lore
Share & tools
lore
#0 lore raw

PATCH v4 1/1 arm: tegra: initial support for apalis t30

This patch adds board support for the Toradex Apalis T30 a computer on module which can be used on different carrier boards.

For the sake of ease of use we do not distinguish between different carrier boards for now as the base module features are deemed sufficient enough for regular booting.

The following functionality is working so far:
- eMMC boot and environment storage
- Gigabit Ethernet (once Thierry's PCIe as well as Marek's i210 patches hit mainline)
- MMC/SD cards (both 8-bit as well as 4-bit slot)
- USB client/host (dual role port as client e.g. for DFU/UMS, other two ports as host)

---
changes in v4:
- Update device tree to conform to Thierry's latest PCIe specific supply scheme.

changes in v3:
- Drop architecture specific memcpy configuration again in favour of enabling it for all Tegra configurations (via separate patch)
- Fix 8-bit operation of 8-bit MMC/SD card slot

Changes in v2:
- Fixed my odd commenting style within the device tree
- Added gigabit Ethernet (and with it PCIe and PMIC) support
- Fixed PCIe pinmux
- Cleaned-up order of includes in board file
- Added comments in configuration file
- Use architecture specific memcpy to speed up things

This patch got re-based to u-boot-tegra.

 arch/arm/Kconfig                                   |   4 +
 arch/arm/dts/Makefile                              |   1 +
 arch/arm/dts/tegra30-apalis.dts                    | 300 ++++++++++++++++++
 arch/arm/include/asm/mach-types.h                  |  13 +
 board/toradex/apalis_t30/Kconfig                   |  24 ++
 board/toradex/apalis_t30/MAINTAINERS               |   7 +
 board/toradex/apalis_t30/Makefile                  |   6 +
 board/toradex/apalis_t30/apalis_t30.c              |  92 ++++++
 .../toradex/apalis_t30/pinmux-config-apalis_t30.h  | 347 +++++++++++++++++++++
 configs/apalis_t30_defconfig                       |   3 +
 include/configs/apalis_t30.h                       |  80 +++++
 11 files changed, 877 insertions(+)
 create mode 100644 arch/arm/dts/tegra30-apalis.dts
 create mode 100644 board/toradex/apalis_t30/Kconfig
 create mode 100644 board/toradex/apalis_t30/MAINTAINERS
 create mode 100644 board/toradex/apalis_t30/Makefile
 create mode 100644 board/toradex/apalis_t30/apalis_t30.c
 create mode 100644 board/toradex/apalis_t30/pinmux-config-apalis_t30.h
 create mode 100644 configs/apalis_t30_defconfig
 create mode 100644 include/configs/apalis_t30.h
arch/arm/Kconfig +4 -0
index dd987cc..e5d31f9 100644
@@ -701,6 +701,9 @@ config TARGET_WHISTLER
 config TARGET_COLIBRI_T20_IRIS
 	bool "Support colibri_t20_iris"
 
+config TARGET_APALIS_T30
+	bool "Support Apalis T30"
+
 config TARGET_COLIBRI_T30
 	bool "Support Colibri T30"
 
@@ -990,6 +993,7 @@ source "board/ti/ti816x/Kconfig"
 source "board/ti/tnetv107xevm/Kconfig"
 source "board/timll/devkit3250/Kconfig"
 source "board/timll/devkit8000/Kconfig"
+source "board/toradex/apalis_t30/Kconfig"
 source "board/toradex/colibri_pxa270/Kconfig"
 source "board/toradex/colibri_t20_iris/Kconfig"
 source "board/toradex/colibri_t30/Kconfig"
arch/arm/dts/Makefile +1 -0
index c46b7be..45f7f8b 100644
@@ -19,6 +19,7 @@ dtb-$(CONFIG_TEGRA) += tegra20-harmony.dtb \
 	tegra20-ventana.dtb \
 	tegra20-whistler.dtb \
 	tegra20-colibri_t20_iris.dtb \
+	tegra30-apalis.dtb \
 	tegra30-beaver.dtb \
 	tegra30-cardhu.dtb \
 	tegra30-colibri.dtb \
arch/arm/dts/tegra30-apalis.dts new file +300 -0

300 lines not on this page · raw message

arch/arm/include/asm/mach-types.h +13 -0
index 560924e..d4a447b 100644
@@ -1107,6 +1107,7 @@ extern unsigned int __machine_arch_type;
 #define MACH_TYPE_ARMADILLO_800EVA     3863
 #define MACH_TYPE_KZM9G                4140
 #define MACH_TYPE_COLIBRI_T30          4493
+#define MACH_TYPE_APALIS_T30           4513
 
 #ifdef CONFIG_ARCH_EBSA110
 # ifdef machine_arch_type
@@ -14248,6 +14249,18 @@ extern unsigned int __machine_arch_type;
 # define machine_is_colibri_t30()	(0)
 #endif
 
+#ifdef CONFIG_MACH_APALIS_T30
+# ifdef machine_arch_type
+#  undef machine_arch_type
+#  define machine_arch_type	__machine_arch_type
+# else
+#  define machine_arch_type	MACH_TYPE_APALIS_T30
+# endif
+# define machine_is_apalis_t30()	(machine_arch_type == MACH_TYPE_APALIS_T30)
+#else
+# define machine_is_apalis_t30()	(0)
+#endif
+
 /*
  * These have not yet been registered
  */
board/toradex/apalis_t30/Kconfig new file +24 -0
new file mode 100644
index 0000000..4a9ccc2
@@ -0,0 +1,24 @@
+if TARGET_APALIS_T30
+
+config SYS_CPU
+	string
+	default "arm720t" if SPL_BUILD
+	default "armv7" if !SPL_BUILD
+
+config SYS_BOARD
+	string
+	default "apalis_t30"
+
+config SYS_VENDOR
+	string
+	default "toradex"
+
+config SYS_SOC
+	string
+	default "tegra30"
+
+config SYS_CONFIG_NAME
+	string
+	default "apalis_t30"
+
+endif
board/toradex/apalis_t30/MAINTAINERS new file +7 -0
new file mode 100644
index 0000000..01bc73e
@@ -0,0 +1,7 @@
+Apalis T30
+M:	Marcel Ziswiler <[email protected]>
+S:	Maintained
+F:	board/toradex/apalis_t30/
+F:	include/configs/apalis_t30.h
+F:	configs/apalis_t30_defconfig
+F:	arch/arm/dts/tegra30-apalis.dtb
board/toradex/apalis_t30/Makefile new file +6 -0
new file mode 100644
index 0000000..a968e6b
@@ -0,0 +1,6 @@
+# Copyright (c) 2014 Marcel Ziswiler
+# SPDX-License-Identifier:      GPL-2.0+
+
+include $(srctree)/board/nvidia/common/common.mk
+
+obj-y	+= apalis_t30.o
board/toradex/apalis_t30/apalis_t30.c new file +92 -0

92 lines not on this page · raw message

board/toradex/apalis_t30/pinmux-config-apalis_t30.h new file +347 -0

347 lines not on this page · raw message

configs/apalis_t30_defconfig new file +3 -0
new file mode 100644
index 0000000..782298f
@@ -0,0 +1,3 @@
+CONFIG_SPL=y
++S:CONFIG_ARM=y
++S:CONFIG_TARGET_APALIS_T30=y
include/configs/apalis_t30.h new file +80 -0

80 lines not on this page · raw message

Signature · 1 line
1.9.3
#1 lore raw

PATCH v4 1/1 arm: tegra: initial support for apalis t30

Hi Marcel,

2014-09-02 19:57 GMT+09:00 Marcel Ziswiler <[email protected]>:

Quoted 6 lines
arch/arm/Kconfig +0 -0
index dd987cc..e5d31f9 100644

arch/arm/Kconfig config TARGET_WHISTLER · line 708

Quoted 8 lines
arch/arm/Kconfig +3 -0
@@ -701,6 +701,9 @@ config TARGET_WHISTLER
 config TARGET_COLIBRI_T20_IRIS
        bool "Support colibri_t20_iris"
 
+config TARGET_APALIS_T30
+       bool "Support Apalis T30"
+
 config TARGET_COLIBRI_T30
        bool "Support Colibri T30"

I am afraid this patch is no longer applicable to the mainline since commit ddd960e6c4b8412fa5c5a35f36cc3ac9f3ffbc16 (tegra: kconfig: move board select menu and common settings).

I am sorry about this, but could you rebase your patch please?

Tom Warren,
Could you have u-boot-tegra/master to be fast-forwarded to u-boot/master to avoid a lator conflict ?

Signature · 2 lines
Best Regards
Masahiro Yamada
#2 lore raw

PATCH v4 1/1 arm: tegra: initial support for apalis t30

Quoted 1 line · Masahiro YAMADA

I am sorry about this, but could you rebase your patch please?

Sure, will re-base to u-boot/master and re-submit ASAP.