Nothing changed. Only some functions declaration are moved to xen/include/
headers as they are expected to be used by common code of domain builing
or dom0less.
Signed-off-by: Oleksii Kurochko<oleksii.kuroc...@gmail.com>
---
Chnages in v3:
- Drop inclusion of <asm/domain_build.h> from xen/fdt-domain-build.h.
- Add empty line after license tag in xen/fdt-domain-build.h.
---
Chnages in v2:
- Add missed declaration of construct_hwdom().
- Drop unnessary blank line.
- Introduce xen/fdt-domain-build.h and move parts of Arm's domain_build.h to
it.
- Update the commit message.
---
xen/arch/arm/acpi/domain_build.c | 1 +
xen/arch/arm/dom0less-build.c | 1 +
xen/arch/arm/domain_build.c | 1 +
xen/arch/arm/include/asm/domain_build.h | 21 ++----------
xen/arch/arm/kernel.c | 1 +
xen/arch/arm/static-shmem.c | 1 +
xen/include/xen/fdt-domain-build.h | 43 +++++++++++++++++++++++++
7 files changed, 51 insertions(+), 18 deletions(-)
create mode 100644 xen/include/xen/fdt-domain-build.h
diff --git a/xen/arch/arm/acpi/domain_build.c b/xen/arch/arm/acpi/domain_build.c
index f9ca8b47e5..1c3555d814 100644
--- a/xen/arch/arm/acpi/domain_build.c
+++ b/xen/arch/arm/acpi/domain_build.c
@@ -10,6 +10,7 @@
*/
#include <xen/compile.h>
+#include <xen/fdt-domain-build.h>
#include <xen/fdt-kernel.h>
#include <xen/mm.h>
#include <xen/sched.h>
diff --git a/xen/arch/arm/dom0less-build.c b/xen/arch/arm/dom0less-build.c
index 7eecd06d44..0310579863 100644
--- a/xen/arch/arm/dom0less-build.c
+++ b/xen/arch/arm/dom0less-build.c
@@ -1,6 +1,7 @@
/* SPDX-License-Identifier: GPL-2.0-only */
#include <xen/device_tree.h>
#include <xen/domain_page.h>
+#include <xen/fdt-domain-build.h>
#include <xen/fdt-kernel.h>
#include <xen/err.h>
#include <xen/event.h>
diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
index 8c7a054718..9d649b06b3 100644
--- a/xen/arch/arm/domain_build.c
+++ b/xen/arch/arm/domain_build.c
@@ -1,6 +1,7 @@
/* SPDX-License-Identifier: GPL-2.0-only */
#include <xen/init.h>
#include <xen/compile.h>
+#include <xen/fdt-domain-build.h>
#include <xen/fdt-kernel.h>
#include <xen/lib.h>
#include <xen/llc-coloring.h>
diff --git a/xen/arch/arm/include/asm/domain_build.h
b/xen/arch/arm/include/asm/domain_build.h
index df1c0fe301..397e408a1f 100644
--- a/xen/arch/arm/include/asm/domain_build.h
+++ b/xen/arch/arm/include/asm/domain_build.h
@@ -5,28 +5,13 @@
#include <xen/sched.h>
typedef __be32 gic_interrupt_t[3];
-typedef bool (*alloc_domheap_mem_cb)(struct domain *d, struct page_info *pg,
- unsigned int order, void *extra);
-bool allocate_domheap_memory(struct domain *d, paddr_t tot_size,
- alloc_domheap_mem_cb cb, void *extra);
-bool allocate_bank_memory(struct kernel_info *kinfo, gfn_t sgfn,
- paddr_t tot_size);
-void allocate_memory(struct domain *d, struct kernel_info *kinfo);
-int construct_domain(struct domain *d, struct kernel_info *kinfo);
-int construct_hwdom(struct kernel_info *kinfo,
- const struct dt_device_node *node);
+
int domain_fdt_begin_node(void *fdt, const char *name, uint64_t unit);
-int make_chosen_node(const struct kernel_info *kinfo);
-int make_cpus_node(const struct domain *d, void *fdt);
-int make_hypervisor_node(struct domain *d, const struct kernel_info *kinfo,
- int addrcells, int sizecells);
-int make_memory_node(const struct kernel_info *kinfo, int addrcells,
- int sizecells, const struct membanks *mem);
int make_psci_node(void *fdt);
-int make_timer_node(const struct kernel_info *kinfo);
void evtchn_allocate(struct domain *d);
-unsigned int get_allocation_size(paddr_t size);
+int construct_hwdom(struct kernel_info *kinfo,
+ const struct dt_device_node *node);