From 60e49ff1f8a0b8d48b0d12bad94d0dfb8fdbeec8 Mon Sep 17 00:00:00 2001 From: Oleksandr Andrushchenko Date: Thu, 6 Aug 2020 12:42:53 +0300 Subject: xen: Port Xen bus driver from mini-os Make required updates to run on u-boot and strip test code. Signed-off-by: Anastasiia Lukianenko Signed-off-by: Oleksandr Andrushchenko --- board/xen/xenguest_arm64/xenguest_arm64.c | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) (limited to 'board/xen') diff --git a/board/xen/xenguest_arm64/xenguest_arm64.c b/board/xen/xenguest_arm64/xenguest_arm64.c index e3903bb9874..c87ef707694 100644 --- a/board/xen/xenguest_arm64/xenguest_arm64.c +++ b/board/xen/xenguest_arm64/xenguest_arm64.c @@ -66,7 +66,7 @@ static int setup_mem_map(void) /* * Add "magic" region which is used by Xen to provide some essentials - * for the guest: we need console. + * for the guest: we need console and xenstore. */ ret = hvm_get_parameter_maintain_dcache(HVM_PARAM_CONSOLE_PFN, &gfn); if (ret < 0) { @@ -82,6 +82,20 @@ static int setup_mem_map(void) PTE_BLOCK_INNER_SHARE); i++; + ret = hvm_get_parameter_maintain_dcache(HVM_PARAM_STORE_PFN, &gfn); + if (ret < 0) { + printf("%s: Can't get HVM_PARAM_STORE_PFN, ret %d\n", + __func__, ret); + return -EINVAL; + } + + xen_mem_map[i].virt = PFN_PHYS(gfn); + xen_mem_map[i].phys = PFN_PHYS(gfn); + xen_mem_map[i].size = PAGE_SIZE; + xen_mem_map[i].attrs = (PTE_BLOCK_MEMTYPE(MT_NORMAL) | + PTE_BLOCK_INNER_SHARE); + i++; + mem = get_next_memory_node(blob, -1); if (mem < 0) { printf("%s: Missing /memory node\n", __func__); -- cgit