summaryrefslogtreecommitdiffstats
path: root/arch/arm/boards/qil-a926x
diff options
context:
space:
mode:
authorSam Ravnborg <sam@ravnborg.org>2018-01-06 22:11:08 +0100
committerSascha Hauer <s.hauer@pengutronix.de>2018-01-09 11:34:30 +0100
commit7bf9b6e046b3bcd9b69b2c7be0d307751d47a396 (patch)
treefed2c4a7c7ae7716489c6e88b1a30043923bc82f /arch/arm/boards/qil-a926x
parent7c1386d68f9094e02e28fccac633edbba1269b56 (diff)
downloadbarebox-7bf9b6e046b3bcd9b69b2c7be0d307751d47a396.tar.gz
barebox-7bf9b6e046b3bcd9b69b2c7be0d307751d47a396.tar.xz
qil-a926x: move reset vector to board code
Create new file lowlevel.c that contains the reset vector. Signed-off-by: Sam Ravnborg <sam@ravnborg.org> Reviewed-by: Andrey Smirnov <andrew.smirnov@gmail.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'arch/arm/boards/qil-a926x')
-rw-r--r--arch/arm/boards/qil-a926x/Makefile3
-rw-r--r--arch/arm/boards/qil-a926x/lowlevel.c26
2 files changed, 29 insertions, 0 deletions
diff --git a/arch/arm/boards/qil-a926x/Makefile b/arch/arm/boards/qil-a926x/Makefile
index 0c7bc3f043..82e46b369f 100644
--- a/arch/arm/boards/qil-a926x/Makefile
+++ b/arch/arm/boards/qil-a926x/Makefile
@@ -1,2 +1,5 @@
obj-y += init.o
+
+lwl-y += lowlevel.o
+
bbenv-$(CONFIG_DEFAULT_ENVIRONMENT_GENERIC) += defaultenv-qil-a926x
diff --git a/arch/arm/boards/qil-a926x/lowlevel.c b/arch/arm/boards/qil-a926x/lowlevel.c
new file mode 100644
index 0000000000..b16ef31bf0
--- /dev/null
+++ b/arch/arm/boards/qil-a926x/lowlevel.c
@@ -0,0 +1,26 @@
+/*
+ * Copyright (C) 2009-2013 Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
+ *
+ * Under GPLv2
+ */
+
+#include <common.h>
+#include <init.h>
+
+#include <asm/barebox-arm-head.h>
+#include <asm/barebox-arm.h>
+
+#include <mach/at91sam9_sdramc.h>
+#include <mach/at91sam9260.h>
+#include <mach/hardware.h>
+
+void __naked __bare_init barebox_arm_reset_vector(void)
+{
+ arm_cpu_lowlevel_init();
+
+ arm_setup_stack(AT91SAM9260_SRAM_BASE + AT91SAM9260_SRAM_SIZE - 16);
+
+ barebox_arm_entry(AT91_CHIPSELECT_1,
+ at91_get_sdram_size(IOMEM(AT91SAM9260_BASE_SDRAMC)),
+ NULL);
+}