Tegra: T30: Beaver board support.
authorTom Warren <twarren@nvidia.com>
Fri, 12 Apr 2013 18:20:51 +0000 (11:20 -0700)
committerTom Warren <twarren@nvidia.com>
Mon, 15 Apr 2013 23:13:51 +0000 (16:13 -0700)
Beaver is a Tegra30 board that is nearly 100% compatible w/Cardhu.
Add a Beaver build so it can begin to be differentiated, if need be.

Signed-off-by: Tom Warren <twarren@nvidia.com>
Reviewed-by: Stephen Warren <swarren@nvidia.com>
MAINTAINERS
board/nvidia/dts/tegra30-beaver.dts [new file with mode: 0644]
boards.cfg
include/configs/beaver.h [new file with mode: 0644]

index bbab5fe5952297a03b0fb0214e35910fdd77358a..643a5acc4121c30d35567cca1be36cdf896b5915 100644 (file)
@@ -994,6 +994,7 @@ Stephen Warren <swarren@nvidia.com>
        paz00           Tegra20 (ARM7 & A9 Dual Core)
        trimslice       Tegra20 (ARM7 & A9 Dual Core)
        whistler        Tegra20 (ARM7 & A9 Dual Core)
+       beaver          Tegra30 (ARM7 & A9 Quad Core)
 
 Stephen Warren <swarren@wwwdotorg.org>
 
diff --git a/board/nvidia/dts/tegra30-beaver.dts b/board/nvidia/dts/tegra30-beaver.dts
new file mode 100644 (file)
index 0000000..836169f
--- /dev/null
@@ -0,0 +1,71 @@
+/dts-v1/;
+
+#include "tegra30.dtsi"
+
+/ {
+       model = "NVIDIA Beaver";
+       compatible = "nvidia,beaver", "nvidia,tegra30";
+
+       aliases {
+               i2c0 = "/i2c@7000d000";
+               i2c1 = "/i2c@7000c000";
+               i2c2 = "/i2c@7000c400";
+               i2c3 = "/i2c@7000c500";
+               i2c4 = "/i2c@7000c700";
+               sdhci0 = "/sdhci@78000600";
+               sdhci1 = "/sdhci@78000000";
+       };
+
+       memory {
+               device_type = "memory";
+               reg = <0x80000000 0x7ff00000>;
+       };
+
+       i2c@7000c000 {
+               status = "okay";
+               clock-frequency = <100000>;
+       };
+
+       i2c@7000c400 {
+               status = "okay";
+               clock-frequency = <100000>;
+       };
+
+       i2c@7000c500 {
+               status = "okay";
+               clock-frequency = <100000>;
+       };
+
+       i2c@7000c700 {
+               status = "okay";
+               clock-frequency = <100000>;
+       };
+
+       i2c@7000d000 {
+               status = "okay";
+               clock-frequency = <100000>;
+       };
+
+       spi@7000da00 {
+               status = "okay";
+               spi-max-frequency = <25000000>;
+               spi-flash@1 {
+                       compatible = "winbond,w25q32";
+                       reg = <1>;
+                       spi-max-frequency = <20000000>;
+               };
+       };
+
+       sdhci@78000000 {
+               status = "okay";
+               cd-gpios = <&gpio 69 1>; /* gpio PI5 */
+               wp-gpios = <&gpio 155 0>; /* gpio PT3 */
+               power-gpios = <&gpio 31 0>; /* gpio PD7 */
+               bus-width = <4>;
+       };
+
+       sdhci@78000600 {
+               status = "okay";
+               bus-width = <8>;
+       };
+};
index f785da8766d517321f03d7ff877d28f4ccd636f8..31483d623fb4a35cd54961fa07153e3192e1ef24 100644 (file)
@@ -311,6 +311,7 @@ seaboard                     arm         armv7:arm720t seaboard          nvidia
 ventana                      arm         armv7:arm720t ventana           nvidia         tegra20
 whistler                     arm         armv7:arm720t whistler          nvidia         tegra20
 cardhu                       arm         armv7:arm720t cardhu            nvidia         tegra30
+beaver                       arm         armv7:arm720t cardhu            nvidia         tegra30
 dalmore                      arm         armv7:arm720t dalmore           nvidia         tegra114
 colibri_t20_iris             arm         armv7:arm720t colibri_t20_iris  toradex        tegra20
 u8500_href                   arm         armv7       u8500               st-ericsson    u8500
diff --git a/include/configs/beaver.h b/include/configs/beaver.h
new file mode 100644 (file)
index 0000000..058da4f
--- /dev/null
@@ -0,0 +1,76 @@
+/*
+ * Copyright (c) 2013, NVIDIA CORPORATION.  All rights reserved.
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope 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.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#ifndef __CONFIG_H
+#define __CONFIG_H
+
+#include <asm/sizes.h>
+
+#include "tegra30-common.h"
+
+/* Enable fdt support for Beaver. Flash the image in u-boot-dtb.bin */
+#define CONFIG_DEFAULT_DEVICE_TREE     tegra30-beaver
+#define CONFIG_OF_CONTROL
+#define CONFIG_OF_SEPARATE
+
+/* High-level configuration options */
+#define V_PROMPT               "Tegra30 (Beaver) # "
+#define CONFIG_TEGRA_BOARD_STRING      "NVIDIA Beaver"
+
+/* Board-specific serial config */
+#define CONFIG_SERIAL_MULTI
+#define CONFIG_TEGRA_ENABLE_UARTA
+#define CONFIG_SYS_NS16550_COM1                NV_PA_APB_UARTA_BASE
+
+#define MACH_TYPE_BEAVER               4597    /* not yet in mach-types.h */
+#define CONFIG_MACH_TYPE               MACH_TYPE_BEAVER
+
+#define CONFIG_BOARD_EARLY_INIT_F
+
+/* I2C */
+#define CONFIG_TEGRA_I2C
+#define CONFIG_SYS_I2C_INIT_BOARD
+#define CONFIG_I2C_MULTI_BUS
+#define CONFIG_SYS_MAX_I2C_BUS         TEGRA_I2C_NUM_CONTROLLERS
+#define CONFIG_SYS_I2C_SPEED           100000
+#define CONFIG_CMD_I2C
+
+/* SD/MMC */
+#define CONFIG_MMC
+#define CONFIG_GENERIC_MMC
+#define CONFIG_TEGRA_MMC
+#define CONFIG_CMD_MMC
+
+/* Environment in eMMC, at the end of 2nd "boot sector" */
+#define CONFIG_ENV_IS_IN_MMC
+#define CONFIG_ENV_OFFSET              ((1024 * 1024) - CONFIG_ENV_SIZE)
+#define CONFIG_SYS_MMC_ENV_DEV         0
+#define CONFIG_SYS_MMC_ENV_PART                2
+
+/* SPI */
+#define CONFIG_TEGRA20_SLINK
+#define CONFIG_TEGRA_SLINK_CTRLS       6
+#define CONFIG_SPI_FLASH
+#define CONFIG_SPI_FLASH_WINBOND
+#define CONFIG_SF_DEFAULT_MODE         SPI_MODE_0
+#define CONFIG_SF_DEFAULT_SPEED        24000000
+#define CONFIG_CMD_SPI
+#define CONFIG_CMD_SF
+#define CONFIG_SPI_FLASH_SIZE          (4 << 20)
+
+#include "tegra-common-post.h"
+
+#endif /* __CONFIG_H */