summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLucas Stach <dev@lynxeye.de>2019-12-10 23:03:19 +0100
committerSascha Hauer <s.hauer@pengutronix.de>2019-12-11 09:51:23 +0100
commit5d2d55ebd6add4ea395022772c5736e67ba68e33 (patch)
tree50d00106813e212c53350fc4a947950675ade59c
parentdc7f246040d5664079ed21c20cb1444b583ec278 (diff)
downloadbarebox-5d2d55ebd6add4ea395022772c5736e67ba68e33.tar.gz
barebox-5d2d55ebd6add4ea395022772c5736e67ba68e33.tar.xz
ARM: zynq: zedboard: split out PS7 init
Move the PS7 inititalization into its own function. This helps readability and logically splits the FPGA toolchain generated setup from the reset of the board init. Also execute the PS7 setup after the lowlevel CPU init, as this is the regular order used in the Barebox codebase. Signed-off-by: Lucas Stach <dev@lynxeye.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
-rw-r--r--arch/arm/boards/avnet-zedboard/lowlevel.c13
1 files changed, 9 insertions, 4 deletions
diff --git a/arch/arm/boards/avnet-zedboard/lowlevel.c b/arch/arm/boards/avnet-zedboard/lowlevel.c
index 93e4da96ec..b50c36b288 100644
--- a/arch/arm/boards/avnet-zedboard/lowlevel.c
+++ b/arch/arm/boards/avnet-zedboard/lowlevel.c
@@ -29,11 +29,8 @@
extern char __dtb_zynq_zed_start[];
-ENTRY_FUNCTION(start_avnet_zedboard, r0, r1, r2)
+static void avnet_zedboard_ps7_init(void)
{
-
- void *fdt = __dtb_zynq_zed_start + get_runtime_offset();
-
/* open sesame */
writel(0x0000DF0D, ZYNQ_SLCR_UNLOCK);
@@ -260,8 +257,16 @@ ENTRY_FUNCTION(start_avnet_zedboard, r0, r1, r2)
/* lock up. secure, secure */
writel(0x0000767B, ZYNQ_SLCR_LOCK);
+}
+
+ENTRY_FUNCTION(start_avnet_zedboard, r0, r1, r2)
+{
+
+ void *fdt = __dtb_zynq_zed_start + get_runtime_offset();
arm_cpu_lowlevel_init();
+ avnet_zedboard_ps7_init();
+
barebox_arm_entry(0, SZ_512M, fdt);
}