aboutsummaryrefslogtreecommitdiff
path: root/common
diff options
context:
space:
mode:
authorOleksandr Andrushchenko2020-08-06 12:42:48 +0300
committerTom Rini2020-08-14 15:18:30 -0400
commit486544161fa97accff12c2fc585ffe218b8dfc52 (patch)
treedf95622b7bfc2602efce52193ab81971991fdc8c /common
parent770a8eef3e27a5dc16e286cafa1a58e9201c9721 (diff)
xen: Port Xen hypervisor related code from mini-os
Port hypervisor related code from Mini-OS. This is referencing the code of Mini-OS from [1] by Huang Shijie and Volodymyr Babchuk which is for ARM64. Update essential arch code to support required bit operations, memory barriers etc. Copyright for the bits ported belong to at least the following authors, please see related files for details: Copyright (c) 2002-2003, K A Fraser Copyright (c) 2005, Grzegorz Milos, gm281@cam.ac.uk,Intel Research Cambridge Copyright (c) 2014, Karim Allah Ahmed <karim.allah.ahmed@gmail.com> [1] - https://github.com/zyzii/mini-os.git Signed-off-by: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com> Signed-off-by: Anastasiia Lukianenko <anastasiia_lukianenko@epam.com> [trini: Drop wmb() from musb-net/linux-compat.h now] Signed-off-by: Tom Rini <trini@konsulko.com>
Diffstat (limited to 'common')
-rw-r--r--common/board_r.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/common/board_r.c b/common/board_r.c
index d48d2bb8a04..add544da550 100644
--- a/common/board_r.c
+++ b/common/board_r.c
@@ -56,6 +56,9 @@
#include <timer.h>
#include <trace.h>
#include <watchdog.h>
+#ifdef CONFIG_XEN
+#include <xen.h>
+#endif
#ifdef CONFIG_ADDR_MAP
#include <asm/mmu.h>
#endif
@@ -465,6 +468,13 @@ static int initr_mmc(void)
}
#endif
+#ifdef CONFIG_XEN
+static int initr_xen(void)
+{
+ xen_init();
+ return 0;
+}
+#endif
/*
* Tell if it's OK to load the environment early in boot.
*
@@ -762,6 +772,9 @@ static init_fnc_t init_sequence_r[] = {
#ifdef CONFIG_MMC
initr_mmc,
#endif
+#ifdef CONFIG_XEN
+ initr_xen,
+#endif
initr_env,
#ifdef CONFIG_SYS_BOOTPARAMS_LEN
initr_malloc_bootparams,