[U-Boot] [PATCH 1/2] zynq: Add Adapteva Parallella board support
Nathan Rossi
nathan at nathanrossi.com
Wed Jun 1 18:35:05 CEST 2016
The Parallella is a single board computer showcasing the Epiphany
multi-core processor from Adapteva. The board uses a Zynq-7000 SoC which
interconnects to the Epiphany. This patch adds support for booting on
the Zynq system of the board.
More information on this board is available at: https://parallella.org/
Signed-off-by: Nathan Rossi <nathan at nathanrossi.com>
Cc: Albert Aribaud <albert.u.boot at aribaud.net>
Cc: Michal Simek <monstr at monstr.eu>
---
arch/arm/dts/Makefile | 1 +
arch/arm/dts/zynq-parallella.dts | 96 +++++++++++++++++++++++++++++++++++++++
configs/zynq_parallella_defconfig | 36 +++++++++++++++
include/configs/zynq_parallella.h | 17 +++++++
4 files changed, 150 insertions(+)
create mode 100644 arch/arm/dts/zynq-parallella.dts
create mode 100644 configs/zynq_parallella_defconfig
create mode 100644 include/configs/zynq_parallella.h
diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile
index 92c7545..de249a4 100644
--- a/arch/arm/dts/Makefile
+++ b/arch/arm/dts/Makefile
@@ -79,6 +79,7 @@ dtb-$(CONFIG_ARCH_ZYNQ) += zynq-zc702.dtb \
zynq-zed.dtb \
zynq-zybo.dtb \
zynq-microzed.dtb \
+ zynq-parallella.dtb \
zynq-picozed.dtb \
zynq-zc770-xm010.dtb \
zynq-zc770-xm011.dtb \
diff --git a/arch/arm/dts/zynq-parallella.dts b/arch/arm/dts/zynq-parallella.dts
new file mode 100644
index 0000000..2a8a805
--- /dev/null
+++ b/arch/arm/dts/zynq-parallella.dts
@@ -0,0 +1,96 @@
+/*
+ * Adapteva Parallella board DTS
+ *
+ * Copyright (C) 2011 - 2013 Xilinx
+ * Copyright (C) 2012 National Instruments Corp.
+ * Copyright (C) 2014 SUSE LINUX Products GmbH
+ * Copyright (C) 2016 Nathan Rossi
+ *
+ * SPDX-License-Identifier: GPL-2.0+
+ */
+/dts-v1/;
+/include/ "zynq-7000.dtsi"
+
+/ {
+ model = "Adapteva Parallella Board";
+ compatible = "adapteva,parallella", "xlnx,zynq-7000";
+
+ aliases {
+ ethernet0 = &gem0;
+ serial0 = &uart1;
+ spi0 = &qspi;
+ mmc0 = &sdhci0;
+ };
+
+ memory {
+ device_type = "memory";
+ reg = <0x0 0x40000000>;
+ };
+
+ chosen {
+ bootargs = "earlyprintk";
+ stdout-path = "serial0:115200n8";
+ };
+};
+
+&clkc {
+ fclk-enable = <0xf>;
+ ps-clk-frequency = <33333333>;
+};
+
+&gem0 {
+ status = "okay";
+ phy-mode = "rgmii-id";
+ phy-handle = <ðernet_phy>;
+
+ ethernet_phy: ethernet-phy at 0 {
+ /* Marvell 88E1318 */
+ compatible = "ethernet-phy-id0141.0e90",
+ "ethernet-phy-ieee802.3-c22";
+ reg = <0>;
+ marvell,reg-init = <0x3 0x10 0xff00 0x1e>,
+ <0x3 0x11 0xfff0 0xa>;
+ };
+};
+
+&i2c0 {
+ status = "okay";
+
+ isl9305: isl9305 at 68 {
+ compatible = "isil,isl9305";
+ reg = <0x68>;
+
+ regulators {
+ dcd1 {
+ regulator-name = "VDD_DSP";
+ regulator-always-on;
+ };
+ dcd2 {
+ regulator-name = "1P35V";
+ regulator-always-on;
+ };
+ ldo1 {
+ regulator-name = "VDD_ADJ";
+ };
+ ldo2 {
+ regulator-name = "VDD_GPIO";
+ regulator-always-on;
+ };
+ };
+ };
+};
+
+&sdhci1 {
+ u-boot,dm-pre-reloc;
+ status = "okay";
+};
+
+&uart1 {
+ u-boot,dm-pre-reloc;
+ status = "okay";
+};
+
+&qspi {
+ u-boot,dm-pre-reloc;
+ status = "okay";
+};
diff --git a/configs/zynq_parallella_defconfig b/configs/zynq_parallella_defconfig
new file mode 100644
index 0000000..fe05c82
--- /dev/null
+++ b/configs/zynq_parallella_defconfig
@@ -0,0 +1,36 @@
+CONFIG_ARM=y
+CONFIG_SYS_CONFIG_NAME="zynq_parallella"
+CONFIG_ARCH_ZYNQ=y
+CONFIG_DEFAULT_DEVICE_TREE="zynq-parallella"
+CONFIG_SPL=y
+CONFIG_FIT=y
+CONFIG_FIT_VERBOSE=y
+CONFIG_FIT_SIGNATURE=y
+CONFIG_HUSH_PARSER=y
+CONFIG_SYS_PROMPT="Parallella> "
+# CONFIG_CMD_IMLS is not set
+# CONFIG_CMD_FLASH is not set
+CONFIG_CMD_MMC=y
+CONFIG_CMD_SF=y
+CONFIG_CMD_GPIO=y
+# CONFIG_CMD_SETEXPR is not set
+CONFIG_CMD_TFTPPUT=y
+CONFIG_CMD_DHCP=y
+CONFIG_CMD_MII=y
+CONFIG_CMD_PING=y
+CONFIG_CMD_CACHE=y
+CONFIG_CMD_EXT2=y
+CONFIG_CMD_EXT4=y
+CONFIG_CMD_EXT4_WRITE=y
+CONFIG_CMD_FAT=y
+CONFIG_CMD_FS_GENERIC=y
+CONFIG_NET_RANDOM_ETHADDR=y
+CONFIG_SPL_DM_SEQ_ALIAS=y
+CONFIG_ZYNQ_SDHCI=y
+CONFIG_SPI_FLASH=y
+CONFIG_SPI_FLASH_BAR=y
+CONFIG_SPI_FLASH_SPANSION=y
+CONFIG_SPI_FLASH_STMICRO=y
+CONFIG_SPI_FLASH_WINBOND=y
+CONFIG_ZYNQ_GEM=y
+CONFIG_ZYNQ_QSPI=y
diff --git a/include/configs/zynq_parallella.h b/include/configs/zynq_parallella.h
new file mode 100644
index 0000000..f7d17b8
--- /dev/null
+++ b/include/configs/zynq_parallella.h
@@ -0,0 +1,17 @@
+/*
+ * (C) Copyright 2016 Nathan Rossi
+ *
+ * Configuration for Adapteva Parallella Board
+ * See zynq-common.h for Zynq common configs
+ *
+ * SPDX-License-Identifier: GPL-2.0+
+ */
+
+#ifndef __CONFIG_ZYNQ_PARALLELLA_H
+#define __CONFIG_ZYNQ_PARALLELLA_H
+
+#define CONFIG_SYS_NO_FLASH
+
+#include <configs/zynq-common.h>
+
+#endif /* __CONFIG_ZYNQ_PARALLELLA_H */
--
2.8.1
More information about the U-Boot
mailing list