summaryrefslogtreecommitdiffstats
path: root/arch/arm/cpu/board-dt-2nd-aarch64.S
diff options
context:
space:
mode:
authorSascha Hauer <s.hauer@pengutronix.de>2019-07-19 14:45:17 +0200
committerSascha Hauer <s.hauer@pengutronix.de>2019-08-19 15:40:45 +0200
commitffb0344b7410dddea0c7804e1a9797a802736c69 (patch)
tree8f158b5e989fdebb0adf928aeea1a27b8e6f5491 /arch/arm/cpu/board-dt-2nd-aarch64.S
parent7887781e0faadfa1f71a10c81475543bcfca6b22 (diff)
downloadbarebox-ffb0344b7410dddea0c7804e1a9797a802736c69.tar.gz
barebox-ffb0344b7410dddea0c7804e1a9797a802736c69.tar.xz
ARM: Add generic device tree 2nd stage support
This adds support for building a barebox image that boots with the Linux ARM Kernel booting convention. Support for this image can be enabled in Kconfig. It picks up a device tree passed in r2. This new image helps for example with qemu. It can be started with: qemu-system-aarch64 -m 2G -M virt -kernel images/barebox-dt-2nd.img -cpu cortex-a57 -serial stdio or: qemu-system-arm -m 1G -M sabrelite -kernel images/barebox-dt-2nd.img -nographic -dtb arch/arm/dts/imx6q-sabrelite.dtb Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'arch/arm/cpu/board-dt-2nd-aarch64.S')
-rw-r--r--arch/arm/cpu/board-dt-2nd-aarch64.S11
1 files changed, 11 insertions, 0 deletions
diff --git a/arch/arm/cpu/board-dt-2nd-aarch64.S b/arch/arm/cpu/board-dt-2nd-aarch64.S
new file mode 100644
index 0000000000..0540a1690d
--- /dev/null
+++ b/arch/arm/cpu/board-dt-2nd-aarch64.S
@@ -0,0 +1,11 @@
+/* SPDX-License-Identifier: GPL-2.0-or-later */
+#include <linux/linkage.h>
+#include <asm/barebox-arm64.h>
+
+ENTRY_PROC(start_dt_2nd)
+ adr x1, stack
+ mov sp, x1
+ b dt_2nd_aarch64
+.word 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
+stack:
+ENTRY_PROC_END(start_dt_2nd)