From fb8d8766988e536056788358a6ed8d41a03c4290 Mon Sep 17 00:00:00 2001 From: Peter Crosthwaite Date: Thu, 7 Aug 2014 22:26:43 +1000 Subject: zynq: spl: Add vectors section to linker script The vectors section contains the _start symbol which is used as the program entry point. Add it to the linker script in same fashion as done for regular u-boot. This allows for correct generation of an spl elf with a non-zero entry point. A similar change was applied to sunxi platform in "sunxi: Fix u-boot-spl.lds to refer to .vectors" (sha1: 9e5f80d823e3fd2a685b10ecf02009e34b86cff9) This also allows for placement of the vector table at the hivecs location by setting the TEXT_BASE to 0xffff0000. Tested-by: Michal Simek Signed-off-by: Peter Crosthwaite Signed-off-by: Michal Simek diff --git a/arch/arm/cpu/armv7/zynq/u-boot-spl.lds b/arch/arm/cpu/armv7/zynq/u-boot-spl.lds index 0c4501e..0f2f756 100644 --- a/arch/arm/cpu/armv7/zynq/u-boot-spl.lds +++ b/arch/arm/cpu/armv7/zynq/u-boot-spl.lds @@ -22,6 +22,7 @@ SECTIONS .text : { __image_copy_start = .; + *(.vectors) CPUDIR/start.o (.text*) *(.text*) } > .sram -- cgit v0.10.2 From dbc31f6a20d84edeec1ffbb9be0713e102610083 Mon Sep 17 00:00:00 2001 From: Michal Simek Date: Mon, 11 Aug 2014 14:01:57 +0200 Subject: ARM: zynq: Move ps7_init() out of spl.h Prepare for spl.h removal. Signed-off-by: Michal Simek Reviewed-by: Masahiro Yamada diff --git a/arch/arm/include/asm/arch-zynq/spl.h b/arch/arm/include/asm/arch-zynq/spl.h index 5789d28..17f37cb 100644 --- a/arch/arm/include/asm/arch-zynq/spl.h +++ b/arch/arm/include/asm/arch-zynq/spl.h @@ -6,8 +6,6 @@ #ifndef _ASM_ARCH_SPL_H_ #define _ASM_ARCH_SPL_H_ -extern void ps7_init(void); - #define BOOT_DEVICE_NONE 0 #define BOOT_DEVICE_RAM 1 #define BOOT_DEVICE_SPI 2 diff --git a/arch/arm/include/asm/arch-zynq/sys_proto.h b/arch/arm/include/asm/arch-zynq/sys_proto.h index 53c30ec..89c47f3 100644 --- a/arch/arm/include/asm/arch-zynq/sys_proto.h +++ b/arch/arm/include/asm/arch-zynq/sys_proto.h @@ -23,4 +23,6 @@ extern unsigned int zynq_get_silicon_version(void); extern int zynq_sdhci_init(u32 regbase); extern int zynq_sdhci_of_init(const void *blob); +extern void ps7_init(void); + #endif /* _SYS_PROTO_H_ */ -- cgit v0.10.2 From ae2ee77f982d83a9aca06973e39bebb224b5201c Mon Sep 17 00:00:00 2001 From: Michal Simek Date: Mon, 11 Aug 2014 14:03:15 +0200 Subject: ARM: zynq: Remove spl.h Do not specify own zynq specific SPL macros because there is no need for that. Signed-off-by: Michal Simek Reviewed-by: Masahiro Yamada diff --git a/arch/arm/cpu/armv7/zynq/spl.c b/arch/arm/cpu/armv7/zynq/spl.c index d73e5cb..9ff2ef2 100644 --- a/arch/arm/cpu/armv7/zynq/spl.c +++ b/arch/arm/cpu/armv7/zynq/spl.c @@ -8,7 +8,7 @@ #include #include -#include +#include #include DECLARE_GLOBAL_DATA_PTR; diff --git a/arch/arm/include/asm/arch-zynq/spl.h b/arch/arm/include/asm/arch-zynq/spl.h deleted file mode 100644 index 17f37cb..0000000 --- a/arch/arm/include/asm/arch-zynq/spl.h +++ /dev/null @@ -1,16 +0,0 @@ -/* - * (C) Copyright 2014 Xilinx, Inc. Michal Simek - * - * SPDX-License-Identifier: GPL-2.0+ - */ -#ifndef _ASM_ARCH_SPL_H_ -#define _ASM_ARCH_SPL_H_ - -#define BOOT_DEVICE_NONE 0 -#define BOOT_DEVICE_RAM 1 -#define BOOT_DEVICE_SPI 2 -#define BOOT_DEVICE_MMC1 3 -#define BOOT_DEVICE_MMC2 4 -#define BOOT_DEVICE_MMC2_2 5 - -#endif diff --git a/arch/arm/include/asm/spl.h b/arch/arm/include/asm/spl.h index 18a319d..e5daf89 100644 --- a/arch/arm/include/asm/spl.h +++ b/arch/arm/include/asm/spl.h @@ -7,7 +7,7 @@ #ifndef _ASM_SPL_H_ #define _ASM_SPL_H_ -#if defined(CONFIG_OMAP) || defined(CONFIG_SOCFPGA) || defined(CONFIG_ZYNQ) \ +#if defined(CONFIG_OMAP) || defined(CONFIG_SOCFPGA) \ || defined(CONFIG_EXYNOS4) || defined(CONFIG_EXYNOS5) \ || defined(CONFIG_EXYNOS4210) /* Platform-specific defines */ -- cgit v0.10.2