summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNathan Rossi <nathan.rossi@xilinx.com>2015-04-20 16:38:00 +1000
committerNathan Rossi <nathan.rossi@xilinx.com>2015-04-20 16:38:00 +1000
commit50ed79670d32372d86e3d904fa0c0d0f8262684c (patch)
treef7e8d64c91bb1dab0f6d9b372d434d7e4a6eca6a
parentbc07a46a710120f749fdb2529be5e885d7c1d5bb (diff)
downloadmeta-xilinx-50ed79670d32372d86e3d904fa0c0d0f8262684c.tar.gz
u-boot-zynqmp-mainline_2015.04: Update to final tag
* Remove ZynqMP patch as it was accepted and part of the v2015.04 release Signed-off-by: Nathan Rossi <nathan.rossi@xilinx.com>
-rw-r--r--recipes-bsp/u-boot/u-boot-zynqmp-mainline/0001-arm64-Add-Xilinx-ZynqMP-support.patch597
-rw-r--r--recipes-bsp/u-boot/u-boot-zynqmp-mainline_2015.04.bb11
2 files changed, 3 insertions, 605 deletions
diff --git a/recipes-bsp/u-boot/u-boot-zynqmp-mainline/0001-arm64-Add-Xilinx-ZynqMP-support.patch b/recipes-bsp/u-boot/u-boot-zynqmp-mainline/0001-arm64-Add-Xilinx-ZynqMP-support.patch
deleted file mode 100644
index 7aa42664..00000000
--- a/recipes-bsp/u-boot/u-boot-zynqmp-mainline/0001-arm64-Add-Xilinx-ZynqMP-support.patch
+++ /dev/null
@@ -1,597 +0,0 @@
1From 87adcf00f0718fe99578f58e9bba9aa5785803a8 Mon Sep 17 00:00:00 2001
2From: Michal Simek <michal.simek@xilinx.com>
3Date: Thu, 15 Jan 2015 10:01:51 +0100
4Subject: [PATCH] arm64: Add Xilinx ZynqMP support
5
6Add basic Xilinx ZynqMP arm64 support.
7Serial and SD is supported.
8It supports emulation platfrom ep108 and QEMU.
9
10Signed-off-by: Michal Simek <michal.simek@xilinx.com>
11---
12 MAINTAINERS | 6 ++
13 arch/arm/Kconfig | 5 +
14 arch/arm/cpu/armv8/Makefile | 1 +
15 arch/arm/cpu/armv8/zynqmp/Makefile | 9 ++
16 arch/arm/cpu/armv8/zynqmp/clk.c | 49 ++++++++++
17 arch/arm/cpu/armv8/zynqmp/cpu.c | 28 ++++++
18 arch/arm/include/asm/arch-zynqmp/clk.h | 13 +++
19 arch/arm/include/asm/arch-zynqmp/hardware.h | 52 +++++++++++
20 arch/arm/include/asm/arch-zynqmp/sys_proto.h | 15 +++
21 board/xilinx/zynqmp/Kconfig | 15 +++
22 board/xilinx/zynqmp/MAINTAINERS | 6 ++
23 board/xilinx/zynqmp/Makefile | 8 ++
24 board/xilinx/zynqmp/zynqmp.c | 90 ++++++++++++++++++
25 configs/xilinx_zynqmp_defconfig | 14 +++
26 include/configs/xilinx_zynqmp.h | 134 +++++++++++++++++++++++++++
27 15 files changed, 445 insertions(+)
28 create mode 100644 arch/arm/cpu/armv8/zynqmp/Makefile
29 create mode 100644 arch/arm/cpu/armv8/zynqmp/clk.c
30 create mode 100644 arch/arm/cpu/armv8/zynqmp/cpu.c
31 create mode 100644 arch/arm/include/asm/arch-zynqmp/clk.h
32 create mode 100644 arch/arm/include/asm/arch-zynqmp/hardware.h
33 create mode 100644 arch/arm/include/asm/arch-zynqmp/sys_proto.h
34 create mode 100644 board/xilinx/zynqmp/Kconfig
35 create mode 100644 board/xilinx/zynqmp/MAINTAINERS
36 create mode 100644 board/xilinx/zynqmp/Makefile
37 create mode 100644 board/xilinx/zynqmp/zynqmp.c
38 create mode 100644 configs/xilinx_zynqmp_defconfig
39 create mode 100644 include/configs/xilinx_zynqmp.h
40
41diff --git a/MAINTAINERS b/MAINTAINERS
42index 1f77359..d2becd2 100644
43--- a/MAINTAINERS
44+++ b/MAINTAINERS
45@@ -178,6 +178,12 @@ S: Maintained
46 F: arch/arm/cpu/armv7/zynq/
47 F: arch/arm/include/asm/arch-zynq/
48
49+ARM ZYNQMP
50+M: Michal Simek <michal.simek@xilinx.com>
51+S: Maintained
52+F: arch/arm/cpu/armv8/zynqmp/
53+F: arch/arm/include/asm/arch-zynqmp/
54+
55 AVR32
56 M: Andreas Bießmann <andreas.devel@googlemail.com>
57 S: Maintained
58diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
59index 986b4c5..3d01775 100644
60--- a/arch/arm/Kconfig
61+++ b/arch/arm/Kconfig
62@@ -719,6 +719,10 @@ config ZYNQ
63 select CPU_V7
64 select SUPPORT_SPL
65
66+config TARGET_XILINX_ZYNQMP
67+ bool "Support Xilinx ZynqMP Platform"
68+ select ARM64
69+
70 config TEGRA
71 bool "NVIDIA Tegra"
72 select SUPPORT_SPL
73@@ -998,6 +1002,7 @@ source "board/vpac270/Kconfig"
74 source "board/wandboard/Kconfig"
75 source "board/woodburn/Kconfig"
76 source "board/xaeniax/Kconfig"
77+source "board/xilinx/zynqmp/Kconfig"
78 source "board/zipitz2/Kconfig"
79
80 source "arch/arm/Kconfig.debug"
81diff --git a/arch/arm/cpu/armv8/Makefile b/arch/arm/cpu/armv8/Makefile
82index 0c10223..dee5e25 100644
83--- a/arch/arm/cpu/armv8/Makefile
84+++ b/arch/arm/cpu/armv8/Makefile
85@@ -16,3 +16,4 @@ obj-y += tlb.o
86 obj-y += transition.o
87
88 obj-$(CONFIG_FSL_LSCH3) += fsl-lsch3/
89+obj-$(CONFIG_TARGET_XILINX_ZYNQMP) += zynqmp/
90diff --git a/arch/arm/cpu/armv8/zynqmp/Makefile b/arch/arm/cpu/armv8/zynqmp/Makefile
91new file mode 100644
92index 0000000..a997e04
93--- /dev/null
94+++ b/arch/arm/cpu/armv8/zynqmp/Makefile
95@@ -0,0 +1,9 @@
96+#
97+# (C) Copyright 2014 - 2015 Xilinx, Inc.
98+# Michal Simek <michal.simek@xilinx.com>
99+#
100+# SPDX-License-Identifier: GPL-2.0+
101+#
102+
103+obj-y += clk.o
104+obj-y += cpu.o
105diff --git a/arch/arm/cpu/armv8/zynqmp/clk.c b/arch/arm/cpu/armv8/zynqmp/clk.c
106new file mode 100644
107index 0000000..0af619d
108--- /dev/null
109+++ b/arch/arm/cpu/armv8/zynqmp/clk.c
110@@ -0,0 +1,49 @@
111+/*
112+ * (C) Copyright 2014 - 2015 Xilinx, Inc.
113+ * Michal Simek <michal.simek@xilinx.com>
114+ *
115+ * SPDX-License-Identifier: GPL-2.0+
116+ */
117+
118+#include <common.h>
119+#include <asm/arch/hardware.h>
120+#include <asm/arch/sys_proto.h>
121+
122+DECLARE_GLOBAL_DATA_PTR;
123+
124+unsigned long get_uart_clk(int dev_id)
125+{
126+ u32 ver = zynqmp_get_silicon_version();
127+
128+ switch (ver) {
129+ case ZYNQMP_CSU_VERSION_EP108:
130+ return 25000000;
131+ }
132+
133+ return 133000000;
134+}
135+
136+#ifdef CONFIG_CLOCKS
137+/**
138+ * set_cpu_clk_info() - Initialize clock framework
139+ * Always returns zero.
140+ *
141+ * This function is called from common code after relocation and sets up the
142+ * clock framework. The framework must not be used before this function had been
143+ * called.
144+ */
145+int set_cpu_clk_info(void)
146+{
147+ gd->cpu_clk = get_tbclk();
148+
149+ /* Support Veloce to show at least 1MHz via bdi */
150+ if (gd->cpu_clk > 1000000)
151+ gd->bd->bi_arm_freq = gd->cpu_clk / 1000000;
152+ else
153+ gd->bd->bi_arm_freq = 1;
154+
155+ gd->bd->bi_dsp_freq = 0;
156+
157+ return 0;
158+}
159+#endif
160diff --git a/arch/arm/cpu/armv8/zynqmp/cpu.c b/arch/arm/cpu/armv8/zynqmp/cpu.c
161new file mode 100644
162index 0000000..6fae03c
163--- /dev/null
164+++ b/arch/arm/cpu/armv8/zynqmp/cpu.c
165@@ -0,0 +1,28 @@
166+/*
167+ * (C) Copyright 2014 - 2015 Xilinx, Inc.
168+ * Michal Simek <michal.simek@xilinx.com>
169+ *
170+ * SPDX-License-Identifier: GPL-2.0+
171+ */
172+
173+#include <common.h>
174+#include <asm/arch/hardware.h>
175+#include <asm/arch/sys_proto.h>
176+#include <asm/io.h>
177+
178+#define ZYNQ_SILICON_VER_MASK 0xF000
179+#define ZYNQ_SILICON_VER_SHIFT 12
180+
181+DECLARE_GLOBAL_DATA_PTR;
182+
183+unsigned int zynqmp_get_silicon_version(void)
184+{
185+ gd->cpu_clk = get_tbclk();
186+
187+ switch (gd->cpu_clk) {
188+ case 50000000:
189+ return ZYNQMP_CSU_VERSION_QEMU;
190+ }
191+
192+ return ZYNQMP_CSU_VERSION_EP108;
193+}
194diff --git a/arch/arm/include/asm/arch-zynqmp/clk.h b/arch/arm/include/asm/arch-zynqmp/clk.h
195new file mode 100644
196index 0000000..d55bc31
197--- /dev/null
198+++ b/arch/arm/include/asm/arch-zynqmp/clk.h
199@@ -0,0 +1,13 @@
200+/*
201+ * (C) Copyright 2014 - 2015 Xilinx, Inc.
202+ * Michal Simek <michal.simek@xilinx.com>
203+ *
204+ * SPDX-License-Identifier: GPL-2.0+
205+ */
206+
207+#ifndef _ASM_ARCH_CLK_H_
208+#define _ASM_ARCH_CLK_H_
209+
210+unsigned long get_uart_clk(int dev_id);
211+
212+#endif /* _ASM_ARCH_CLK_H_ */
213diff --git a/arch/arm/include/asm/arch-zynqmp/hardware.h b/arch/arm/include/asm/arch-zynqmp/hardware.h
214new file mode 100644
215index 0000000..97fb49a
216--- /dev/null
217+++ b/arch/arm/include/asm/arch-zynqmp/hardware.h
218@@ -0,0 +1,52 @@
219+/*
220+ * (C) Copyright 2014 - 2015 Xilinx, Inc.
221+ * Michal Simek <michal.simek@xilinx.com>
222+ *
223+ * SPDX-License-Identifier: GPL-2.0+
224+ */
225+
226+#ifndef _ASM_ARCH_HARDWARE_H
227+#define _ASM_ARCH_HARDWARE_H
228+
229+#define ZYNQ_SERIAL_BASEADDR0 0xFF000000
230+#define ZYNQ_SERIAL_BASEADDR1 0xFF001000
231+
232+#define ZYNQ_SDHCI_BASEADDR0 0xFF160000
233+#define ZYNQ_SDHCI_BASEADDR1 0xFF170000
234+
235+#define ZYNQMP_CRL_APB_BASEADDR 0xFF5E0000
236+#define ZYNQMP_CRL_APB_TIMESTAMP_REF_CTRL_CLKACT 0x1000000
237+
238+struct crlapb_regs {
239+ u32 reserved0[74];
240+ u32 timestamp_ref_ctrl; /* 0x128 */
241+ u32 reserved0_1[53];
242+ u32 boot_mode; /* 0x200 */
243+ u32 reserved1[26];
244+};
245+
246+#define crlapb_base ((struct crlapb_regs *)ZYNQMP_CRL_APB_BASEADDR)
247+
248+#define ZYNQMP_IOU_SCNTR 0xFF250000
249+#define ZYNQMP_IOU_SCNTR_COUNTER_CONTROL_REGISTER_EN 0x1
250+#define ZYNQMP_IOU_SCNTR_COUNTER_CONTROL_REGISTER_HDBG 0x2
251+
252+struct iou_scntr {
253+ u32 counter_control_register;
254+ u32 reserved0[7];
255+ u32 base_frequency_id_register;
256+};
257+
258+#define iou_scntr ((struct iou_scntr *)ZYNQMP_IOU_SCNTR)
259+
260+/* Bootmode setting values */
261+#define BOOT_MODES_MASK 0x0000000F
262+#define SD_MODE 0x00000005
263+#define JTAG_MODE 0x00000000
264+
265+/* Board version value */
266+#define ZYNQMP_CSU_VERSION_SILICON 0x0
267+#define ZYNQMP_CSU_VERSION_EP108 0x1
268+#define ZYNQMP_CSU_VERSION_QEMU 0x3
269+
270+#endif /* _ASM_ARCH_HARDWARE_H */
271diff --git a/arch/arm/include/asm/arch-zynqmp/sys_proto.h b/arch/arm/include/asm/arch-zynqmp/sys_proto.h
272new file mode 100644
273index 0000000..d8e0ba1
274--- /dev/null
275+++ b/arch/arm/include/asm/arch-zynqmp/sys_proto.h
276@@ -0,0 +1,15 @@
277+/*
278+ * (C) Copyright 2014 - 2015 Xilinx, Inc.
279+ * Michal Simek <michal.simek@xilinx.com>
280+ *
281+ * SPDX-License-Identifier: GPL-2.0+
282+ */
283+
284+#ifndef _ASM_ARCH_SYS_PROTO_H
285+#define _ASM_ARCH_SYS_PROTO_H
286+
287+int zynq_sdhci_init(unsigned long regbase);
288+
289+unsigned int zynqmp_get_silicon_version(void);
290+
291+#endif /* _ASM_ARCH_SYS_PROTO_H */
292diff --git a/board/xilinx/zynqmp/Kconfig b/board/xilinx/zynqmp/Kconfig
293new file mode 100644
294index 0000000..b07932e
295--- /dev/null
296+++ b/board/xilinx/zynqmp/Kconfig
297@@ -0,0 +1,15 @@
298+if TARGET_XILINX_ZYNQMP
299+
300+config SYS_BOARD
301+ default "zynqmp"
302+
303+config SYS_VENDOR
304+ default "xilinx"
305+
306+config SYS_SOC
307+ default "zynqmp"
308+
309+config SYS_CONFIG_NAME
310+ default "xilinx_zynqmp"
311+
312+endif
313diff --git a/board/xilinx/zynqmp/MAINTAINERS b/board/xilinx/zynqmp/MAINTAINERS
314new file mode 100644
315index 0000000..da33340
316--- /dev/null
317+++ b/board/xilinx/zynqmp/MAINTAINERS
318@@ -0,0 +1,6 @@
319+XILINX_ZYNQMP BOARD
320+M: Michal Simek <michal.simek@xilinx.com>
321+S: Maintained
322+F: board/xilinx/zynqmp/
323+F: include/configs/xilinx_zynqmp.h
324+F: configs/xilinx_zynqmp_defconfig
325diff --git a/board/xilinx/zynqmp/Makefile b/board/xilinx/zynqmp/Makefile
326new file mode 100644
327index 0000000..2ab3f19
328--- /dev/null
329+++ b/board/xilinx/zynqmp/Makefile
330@@ -0,0 +1,8 @@
331+#
332+# (C) Copyright 2014 - 2015 Xilinx, Inc.
333+# Michal Simek <michal.simek@xilinx.com>
334+#
335+# SPDX-License-Identifier: GPL-2.0+
336+#
337+
338+obj-y := zynqmp.o
339diff --git a/board/xilinx/zynqmp/zynqmp.c b/board/xilinx/zynqmp/zynqmp.c
340new file mode 100644
341index 0000000..1325bca
342--- /dev/null
343+++ b/board/xilinx/zynqmp/zynqmp.c
344@@ -0,0 +1,90 @@
345+/*
346+ * (C) Copyright 2014 - 2015 Xilinx, Inc.
347+ * Michal Simek <michal.simek@xilinx.com>
348+ *
349+ * SPDX-License-Identifier: GPL-2.0+
350+ */
351+
352+#include <common.h>
353+#include <netdev.h>
354+#include <asm/arch/hardware.h>
355+#include <asm/arch/sys_proto.h>
356+#include <asm/io.h>
357+
358+DECLARE_GLOBAL_DATA_PTR;
359+
360+int board_init(void)
361+{
362+ return 0;
363+}
364+
365+int board_early_init_r(void)
366+{
367+ u32 val;
368+
369+ val = readl(&crlapb_base->timestamp_ref_ctrl);
370+ val |= ZYNQMP_CRL_APB_TIMESTAMP_REF_CTRL_CLKACT;
371+ writel(val, &crlapb_base->timestamp_ref_ctrl);
372+
373+ /* Program freq register in System counter and enable system counter */
374+ writel(gd->cpu_clk, &iou_scntr->base_frequency_id_register);
375+ writel(ZYNQMP_IOU_SCNTR_COUNTER_CONTROL_REGISTER_HDBG |
376+ ZYNQMP_IOU_SCNTR_COUNTER_CONTROL_REGISTER_EN,
377+ &iou_scntr->counter_control_register);
378+
379+ return 0;
380+}
381+
382+int dram_init(void)
383+{
384+ gd->ram_size = CONFIG_SYS_SDRAM_SIZE;
385+
386+ return 0;
387+}
388+
389+int timer_init(void)
390+{
391+ return 0;
392+}
393+
394+void reset_cpu(ulong addr)
395+{
396+}
397+
398+#ifdef CONFIG_CMD_MMC
399+int board_mmc_init(bd_t *bd)
400+{
401+ int ret = 0;
402+
403+#if defined(CONFIG_ZYNQ_SDHCI)
404+# if defined(CONFIG_ZYNQ_SDHCI0)
405+ ret = zynq_sdhci_init(ZYNQ_SDHCI_BASEADDR0);
406+# endif
407+# if defined(CONFIG_ZYNQ_SDHCI1)
408+ ret |= zynq_sdhci_init(ZYNQ_SDHCI_BASEADDR1);
409+# endif
410+#endif
411+
412+ return ret;
413+}
414+#endif
415+
416+int board_late_init(void)
417+{
418+ u32 reg = 0;
419+ u8 bootmode;
420+
421+ reg = readl(&crlapb_base->boot_mode);
422+ bootmode = reg & BOOT_MODES_MASK;
423+
424+ switch (bootmode) {
425+ case SD_MODE:
426+ setenv("modeboot", "sdboot");
427+ break;
428+ default:
429+ printf("Invalid Boot Mode:0x%x\n", bootmode);
430+ break;
431+ }
432+
433+ return 0;
434+}
435diff --git a/configs/xilinx_zynqmp_defconfig b/configs/xilinx_zynqmp_defconfig
436new file mode 100644
437index 0000000..8b6aa70
438--- /dev/null
439+++ b/configs/xilinx_zynqmp_defconfig
440@@ -0,0 +1,14 @@
441+CONFIG_ARM=y
442+CONFIG_TARGET_XILINX_ZYNQMP=y
443+CONFIG_CMD_BDI=y
444+CONFIG_CMD_BOOTD=y
445+CONFIG_CMD_RUN=y
446+CONFIG_CMD_IMI=y
447+CONFIG_CMD_SAVEENV=y
448+CONFIG_CMD_FLASH=y
449+CONFIG_CMD_ECHO=y
450+CONFIG_CMD_SOURCE=y
451+CONFIG_CMD_TIME=y
452+CONFIG_CMD_MISC=y
453+CONFIG_CMD_TIMER=y
454+CONFIG_DEFAULT_DEVICE_TREE="zynqmp"
455diff --git a/include/configs/xilinx_zynqmp.h b/include/configs/xilinx_zynqmp.h
456new file mode 100644
457index 0000000..d503b89
458--- /dev/null
459+++ b/include/configs/xilinx_zynqmp.h
460@@ -0,0 +1,134 @@
461+/*
462+ * Configuration for Xilinx ZynqMP
463+ * (C) Copyright 2014 - 2015 Xilinx, Inc.
464+ * Michal Simek <michal.simek@xilinx.com>
465+ *
466+ * Based on Configuration for Versatile Express
467+ *
468+ * SPDX-License-Identifier: GPL-2.0+
469+ */
470+
471+#ifndef __XILINX_ZYNQMP_H
472+#define __XILINX_ZYNQMP_H
473+
474+#define CONFIG_REMAKE_ELF
475+
476+/* #define CONFIG_ARMV8_SWITCH_TO_EL1 */
477+
478+#define CONFIG_SYS_NO_FLASH
479+
480+#define CONFIG_SYS_GENERIC_BOARD
481+
482+/* Generic Interrupt Controller Definitions */
483+#define CONFIG_GICV2
484+#define GICD_BASE 0xF9010000
485+#define GICC_BASE 0xF9020000
486+
487+/* Physical Memory Map */
488+#define CONFIG_NR_DRAM_BANKS 1
489+#define CONFIG_SYS_SDRAM_BASE 0
490+#define CONFIG_SYS_SDRAM_SIZE 0x40000000
491+
492+#define CONFIG_SYS_MEMTEST_START CONFIG_SYS_SDRAM_BASE
493+#define CONFIG_SYS_MEMTEST_END CONFIG_SYS_SDRAM_SIZE
494+
495+/* Have release address at the end of 256MB for now */
496+#define CPU_RELEASE_ADDR 0xFFFFFF0
497+
498+/* Cache Definitions */
499+#define CONFIG_SYS_DCACHE_OFF
500+
501+#define CONFIG_IDENT_STRING " Xilinx ZynqMP"
502+
503+#define CONFIG_SYS_TEXT_BASE 0x8000000
504+#define CONFIG_SYS_INIT_SP_ADDR (CONFIG_SYS_SDRAM_BASE + 0x7fff0)
505+
506+/* Flat Device Tree Definitions */
507+#define CONFIG_OF_LIBFDT
508+
509+/* Generic Timer Definitions - setup in EL3. Setup by ATF for other cases */
510+#define COUNTER_FREQUENCY 4000000
511+
512+/* Size of malloc() pool */
513+#define CONFIG_SYS_MALLOC_LEN (CONFIG_ENV_SIZE + 0x400000)
514+
515+/* Serial setup */
516+#define CONFIG_ZYNQ_SERIAL_UART0
517+#define CONFIG_ZYNQ_SERIAL
518+
519+#define CONFIG_CONS_INDEX 0
520+#define CONFIG_BAUDRATE 115200
521+#define CONFIG_SYS_BAUDRATE_TABLE \
522+ { 4800, 9600, 19200, 38400, 57600, 115200 }
523+
524+/* Command line configuration */
525+#define CONFIG_CMD_ENV
526+#define CONFIG_CMD_EXT2
527+#define CONFIG_CMD_EXT4
528+#define CONFIG_CMD_FAT
529+#define CONFIG_CMD_MEMORY
530+#define CONFIG_DOS_PARTITION
531+
532+#if defined(CONFIG_ZYNQ_SDHCI0) || defined(CONFIG_ZYNQ_SDHCI1)
533+# define CONFIG_MMC
534+# define CONFIG_GENERIC_MMC
535+# define CONFIG_SDHCI
536+# define CONFIG_ZYNQ_SDHCI
537+# define CONFIG_CMD_MMC
538+#endif
539+
540+#if defined(CONFIG_ZYNQ_SDHCI)
541+# define CONFIG_FAT_WRITE
542+# define CONFIG_CMD_EXT4_WRITE
543+#endif
544+
545+/* Miscellaneous configurable options */
546+#define CONFIG_SYS_LOAD_ADDR 0x8000000
547+
548+/* Initial environment variables */
549+#define CONFIG_EXTRA_ENV_SETTINGS \
550+ "ethaddr=00:0a:35:00:01:22\0" \
551+ "kernel_addr=0x200000\0" \
552+ "initrd_addr=0xa00000\0" \
553+ "initrd_size=0x2000000\0" \
554+ "fdt_addr=0x100000\0" \
555+ "fdt_high=0x10000000\0" \
556+ "sdboot=mmcinfo && fatload mmc 0:0 f000000 system.dtb && " \
557+ "fatload mmc 0:0 f000000 Image && booti 80000 - f000000\0"
558+
559+#define CONFIG_BOOTARGS "setenv bootargs console=ttyPS0,${baudrate} " \
560+ "earlycon=cdns,mmio,0xff000000,${baudrate}n8"
561+#define CONFIG_PREBOOT "run bootargs"
562+#define CONFIG_BOOTCOMMAND "run $modeboot"
563+#define CONFIG_BOOTDELAY 5
564+
565+#define CONFIG_BOARD_LATE_INIT
566+
567+/* Do not preserve environment */
568+#define CONFIG_ENV_IS_NOWHERE 1
569+#define CONFIG_ENV_SIZE 0x1000
570+
571+/* Monitor Command Prompt */
572+/* Console I/O Buffer Size */
573+#define CONFIG_SYS_CBSIZE 2048
574+#define CONFIG_SYS_PROMPT "ZynqMP> "
575+#define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + \
576+ sizeof(CONFIG_SYS_PROMPT) + 16)
577+#define CONFIG_SYS_HUSH_PARSER
578+#define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE
579+#define CONFIG_SYS_LONGHELP
580+#define CONFIG_CMDLINE_EDITING
581+#define CONFIG_SYS_MAXARGS 64
582+
583+#define CONFIG_FIT
584+#define CONFIG_FIT_VERBOSE /* enable fit_format_{error,warning}() */
585+
586+#define CONFIG_SYS_BOOTM_LEN (60 * 1024 * 1024)
587+
588+#define CONFIG_CMD_BOOTI
589+#define CONFIG_CMD_UNZIP
590+
591+#define CONFIG_BOARD_EARLY_INIT_R
592+#define CONFIG_CLOCKS
593+
594+#endif /* __XILINX_ZYNQMP_H */
595--
5962.1.1
597
diff --git a/recipes-bsp/u-boot/u-boot-zynqmp-mainline_2015.04.bb b/recipes-bsp/u-boot/u-boot-zynqmp-mainline_2015.04.bb
index 5c3bcfce..43f6b03f 100644
--- a/recipes-bsp/u-boot/u-boot-zynqmp-mainline_2015.04.bb
+++ b/recipes-bsp/u-boot/u-boot-zynqmp-mainline_2015.04.bb
@@ -3,13 +3,8 @@ require u-boot-elf.inc
3 3
4DEPENDS += "dtc-native" 4DEPENDS += "dtc-native"
5 5
6# This revision corresponds to the tag "v2015.04-rc1" 6# This revision corresponds to the tag "v2015.04"
7SRCREV = "112db9407dd338f71200beb0fc99dffa8dcb57a8" 7SRCREV = "f33cdaa4c3da4a8fd35aa2f9a3172f31cc887b35"
8 8
9PV = "v2015.04-rc1+git${SRCPV}" 9PV = "v2015.04+git${SRCPV}"
10
11FILESEXTRAPATHS_prepend := "${THISDIR}/u-boot-zynqmp-mainline:"
12SRC_URI_append += " \
13 file://0001-arm64-Add-Xilinx-ZynqMP-support.patch \
14 "
15 10