* [U-Boot] [PATCH] ARM: tegra: Add support for norrin board
@ 2014-06-30 20:53 Allen Martin
2014-06-30 21:32 ` Stephen Warren
0 siblings, 1 reply; 3+ messages in thread
From: Allen Martin @ 2014-06-30 20:53 UTC (permalink / raw)
To: u-boot
Norrin (PM370) is a Tegra124 clamshell board that is very similar to
venice2, but it has a different panel, the sdcard cd sense is flipped,
and it has a different revision of the AS3722 PMIC. Reuse the venice2
config with a norrin dtb. This board is also refered to as "nyan" in
the ChromeOS trees.
Signed-off-by: Allen Martin <amartin@nvidia.com>
---
arch/arm/dts/Makefile | 3 +-
arch/arm/dts/tegra124-norrin.dts | 91 ++++++++++++++++++++++++++++++++++++++
board/nvidia/venice2/as3722_init.h | 2 +-
boards.cfg | 1 +
include/configs/venice2.h | 9 ++++
5 files changed, 104 insertions(+), 2 deletions(-)
create mode 100644 arch/arm/dts/tegra124-norrin.dts
diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile
index 55546152b94b..414f206cb6f0 100644
--- a/arch/arm/dts/Makefile
+++ b/arch/arm/dts/Makefile
@@ -23,7 +23,8 @@ dtb-$(CONFIG_TEGRA) += tegra20-harmony.dtb \
tegra30-tec-ng.dtb \
tegra114-dalmore.dtb \
tegra124-jetson-tk1.dtb \
- tegra124-venice2.dtb
+ tegra124-venice2.dtb \
+ tegra124-norrin.dtb
dtb-$(CONFIG_ZYNQ) += zynq-zc702.dtb \
zynq-zc706.dtb \
zynq-zed.dtb \
diff --git a/arch/arm/dts/tegra124-norrin.dts b/arch/arm/dts/tegra124-norrin.dts
new file mode 100644
index 000000000000..fdf000cf75ec
--- /dev/null
+++ b/arch/arm/dts/tegra124-norrin.dts
@@ -0,0 +1,91 @@
+/dts-v1/;
+
+#include "tegra124.dtsi"
+
+/ {
+ model = "NVIDIA Norrin";
+ compatible = "nvidia,norrin", "nvidia,tegra124";
+
+ aliases {
+ i2c0 = "/i2c at 7000d000";
+ i2c1 = "/i2c at 7000c000";
+ i2c2 = "/i2c at 7000c400";
+ i2c3 = "/i2c at 7000c500";
+ i2c4 = "/i2c at 7000c700";
+ i2c5 = "/i2c at 7000d100";
+ sdhci0 = "/sdhci at 700b0600";
+ sdhci1 = "/sdhci at 700b0400";
+ spi0 = "/spi at 7000d400";
+ spi1 = "/spi at 7000da00";
+ usb0 = "/usb at 7d000000";
+ usb1 = "/usb at 7d008000";
+ };
+
+ memory {
+ device_type = "memory";
+ reg = <0x80000000 0x80000000>;
+ };
+
+ i2c at 7000c000 {
+ status = "okay";
+ clock-frequency = <100000>;
+ };
+
+ i2c at 7000c400 {
+ status = "okay";
+ clock-frequency = <100000>;
+ };
+
+ i2c at 7000c500 {
+ status = "okay";
+ clock-frequency = <100000>;
+ };
+
+ i2c at 7000c700 {
+ status = "okay";
+ clock-frequency = <100000>;
+ };
+
+ i2c at 7000d000 {
+ status = "okay";
+ clock-frequency = <400000>;
+ };
+
+ i2c at 7000d100 {
+ status = "okay";
+ clock-frequency = <400000>;
+ };
+
+ spi at 7000d400 {
+ status = "okay";
+ spi-max-frequency = <25000000>;
+ };
+
+ spi at 7000da00 {
+ status = "okay";
+ spi-max-frequency = <25000000>;
+ };
+
+ sdhci at 700b0400 {
+ status = "okay";
+ cd-gpios = <&gpio 170 1>; /* gpio PV2 */
+ power-gpios = <&gpio 136 0>; /* gpio PR0 */
+ bus-width = <4>;
+ };
+
+ sdhci at 700b0600 {
+ status = "okay";
+ bus-width = <8>;
+ };
+
+ usb at 7d000000 {
+ status = "okay";
+ dr_mode = "otg";
+ nvidia,vbus-gpio = <&gpio 108 0>; /* gpio PN4, USB_VBUS_EN0 */
+ };
+
+ usb at 7d008000 {
+ status = "okay";
+ nvidia,vbus-gpio = <&gpio 109 0>; /* gpio PN5, USB_VBUS_EN1 */
+ };
+};
diff --git a/board/nvidia/venice2/as3722_init.h b/board/nvidia/venice2/as3722_init.h
index a7b24039f6aa..7c80ef09387b 100644
--- a/board/nvidia/venice2/as3722_init.h
+++ b/board/nvidia/venice2/as3722_init.h
@@ -18,7 +18,7 @@
#define AS3722_LDO6VOLTAGE_REG 0x16 /* VDD_SDMMC */
#define AS3722_LDCONTROL_REG 0x4E
-#ifdef CONFIG_BOARD_JETSON_TK1
+#if defined(CONFIG_BOARD_JETSON_TK1) || defined(CONFIG_BOARD_NORRIN)
#define AS3722_SD0VOLTAGE_DATA (0x3C00 | AS3722_SD0VOLTAGE_REG)
#else
#define AS3722_SD0VOLTAGE_DATA (0x2800 | AS3722_SD0VOLTAGE_REG)
diff --git a/boards.cfg b/boards.cfg
index 5a85fad48095..3950688ba30b 100644
--- a/boards.cfg
+++ b/boards.cfg
@@ -395,6 +395,7 @@ Active arm armv7 zynq xilinx zynq
Active arm armv7:arm720t tegra114 nvidia dalmore dalmore - Tom Warren <twarren@nvidia.com>
Active arm armv7:arm720t tegra124 nvidia jetson-tk1 jetson-tk1 jetson-tk1:BOARD_JETSON_TK1= Stephen Warren <swarren@nvidia.com>
Active arm armv7:arm720t tegra124 nvidia venice2 venice2 - Tom Warren <twarren@nvidia.com>
+Active arm armv7:arm720t tegra124 nvidia venice2 norrin venice2:BOARD_NORRIN Tom Warren <twarren@nvidia.com>
Active arm armv7:arm720t tegra20 avionic-design medcom-wide medcom-wide - Alban Bedel <alban.bedel@avionic-design.de>
Active arm armv7:arm720t tegra20 avionic-design plutux plutux - Alban Bedel <alban.bedel@avionic-design.de>
Active arm armv7:arm720t tegra20 avionic-design tec tec - Alban Bedel <alban.bedel@avionic-design.de>
diff --git a/include/configs/venice2.h b/include/configs/venice2.h
index c4a1b94b98e1..7162d2e4bd47 100644
--- a/include/configs/venice2.h
+++ b/include/configs/venice2.h
@@ -13,13 +13,22 @@
#include "tegra124-common.h"
/* Enable fdt support for Venice2. Flash the image in u-boot-dtb.bin */
+#ifdef CONFIG_BOARD_NORRIN
+#define CONFIG_DEFAULT_DEVICE_TREE tegra124-norrin
+#else
#define CONFIG_DEFAULT_DEVICE_TREE tegra124-venice2
+#endif
#define CONFIG_OF_CONTROL
#define CONFIG_OF_SEPARATE
/* High-level configuration options */
+#ifdef CONFIG_BOARD_NORRIN
+#define V_PROMPT "Tegra124 (Norrin) # "
+#define CONFIG_TEGRA_BOARD_STRING "NVIDIA Norrin"
+#else
#define V_PROMPT "Tegra124 (Venice2) # "
#define CONFIG_TEGRA_BOARD_STRING "NVIDIA Venice2"
+#endif
/* Board-specific serial config */
#define CONFIG_SERIAL_MULTI
--
1.8.1.5
^ permalink raw reply related [flat|nested] 3+ messages in thread
* [U-Boot] [PATCH] ARM: tegra: Add support for norrin board
2014-06-30 20:53 [U-Boot] [PATCH] ARM: tegra: Add support for norrin board Allen Martin
@ 2014-06-30 21:32 ` Stephen Warren
2014-07-01 18:13 ` Allen Martin
0 siblings, 1 reply; 3+ messages in thread
From: Stephen Warren @ 2014-06-30 21:32 UTC (permalink / raw)
To: u-boot
On 06/30/2014 02:53 PM, Allen Martin wrote:
> Norrin (PM370) is a Tegra124 clamshell board that is very similar to
> venice2, but it has a different panel, the sdcard cd sense is flipped,
> and it has a different revision of the AS3722 PMIC. Reuse the venice2
> config with a norrin dtb. This board is also refered to as "nyan" in
> the ChromeOS trees.
Isn't the pinmux different too? I think this patch should contain
board/nvidia/norrin/pinmux-config-norrin.h shouldn't it? That in turn
would mean adding Norrin support to tegra-pinmux-scripts. Of course, if
they really do have 100% identical pinmux, then there's no issue. I'm
skeptical though.
^ permalink raw reply [flat|nested] 3+ messages in thread
* [U-Boot] [PATCH] ARM: tegra: Add support for norrin board
2014-06-30 21:32 ` Stephen Warren
@ 2014-07-01 18:13 ` Allen Martin
0 siblings, 0 replies; 3+ messages in thread
From: Allen Martin @ 2014-07-01 18:13 UTC (permalink / raw)
To: u-boot
On Mon, Jun 30, 2014 at 02:32:20PM -0700, Stephen Warren wrote:
> On 06/30/2014 02:53 PM, Allen Martin wrote:
> > Norrin (PM370) is a Tegra124 clamshell board that is very similar to
> > venice2, but it has a different panel, the sdcard cd sense is flipped,
> > and it has a different revision of the AS3722 PMIC. Reuse the venice2
> > config with a norrin dtb. This board is also refered to as "nyan" in
> > the ChromeOS trees.
>
> Isn't the pinmux different too? I think this patch should contain
> board/nvidia/norrin/pinmux-config-norrin.h shouldn't it? That in turn
> would mean adding Norrin support to tegra-pinmux-scripts. Of course, if
> they really do have 100% identical pinmux, then there's no issue. I'm
> skeptical though.
AFAIK they really do have identical pinmux, I'll double check the
pinmux spreadsheet to make sure.
There's another unintended side effect of reusing the venice2 board
this way that I discovered after posting this. It causes
CONFIG_SYS_BOARD to be set to venice2 still, which causes the
"board_name" environment variable to be set to venice2, which causes
boot.scr to look for a venice2 dtb.
It may be cleaner to make norrin a proper board, and just have it
#include the vencie2 pinmux.
-Allen
nvpublic
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2014-07-01 18:13 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-06-30 20:53 [U-Boot] [PATCH] ARM: tegra: Add support for norrin board Allen Martin
2014-06-30 21:32 ` Stephen Warren
2014-07-01 18:13 ` Allen Martin
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox