Introduce necessary things to enable DOMAIN_BUILD_HELPERS config for RISC-V.
This patch series is rebased on top of [PATCH v3 0/3] dom0less: various updates
as it could be some merge conflicts depends on which patch series will go first.
CI: https://gitlab.com/xen-project/people/olkur/xen/-/pipelines/2477740734
---
Changes in v4:
- Move patch up, closer to other common/Arm related patches:
- xen/dom0less: rename kernel_zimage_probe() to kernel_image_probe()
- xen: move declaration of fw_unreserved_regions() to common header
- xen: move domain_use_host_layout() to common header
- xen: rename p2m_ipa_bits to p2m_gpa_bits
- Merged to upstream/staging:
xen/riscv: implement get_page_from_gfn()
- Rebase this patch series on top of [PATCH v3 0/3] dom0less: various updates.
- Address the comments from ML.
---
Changes in v3:
- Address the comments from ML.
---
Changes in v2:
- Address the comments from ML.
- Introduce some new patches to make dom0less solution more architecture
indepenent from terminology point of view.
- Minor fixes.
---
Oleksii Kurochko (11):
xen: arm: fix len type for guest copy functions
xen/dom0less: rename kernel_zimage_probe() to kernel_image_probe()
xen: move declaration of fw_unreserved_regions() to common header
xen: introduce domain-layout.h with common domain_use_host_layout()
xen: rename p2m_ipa_bits to p2m_gpa_bits
xen/riscv: implement copy_to_guest_phys()
xen/riscv: add Linux kernel loading support
xen/riscv: rework G-stage mode handling
xen/riscv: introduce p2m_gpa_bits
xen/riscv: add definition of guest RAM banks
xen/riscv: enable DOMAIN_BUILD_HELPERS
xen/arch/arm/domain_build.c | 1 +
xen/arch/arm/guestcopy.c | 6 +-
xen/arch/arm/include/asm/domain.h | 14 --
xen/arch/arm/include/asm/guest_access.h | 2 +-
xen/arch/arm/include/asm/p2m.h | 2 +
xen/arch/arm/include/asm/setup.h | 3 -
xen/arch/arm/kernel.c | 48 ++---
xen/arch/arm/vgic-v3.c | 1 +
xen/arch/riscv/Kconfig | 1 +
xen/arch/riscv/Makefile | 3 +
xen/arch/riscv/dom0less-build.c | 70 +++++++
xen/arch/riscv/guestcopy.c | 116 +++++++++++
xen/arch/riscv/include/asm/config.h | 13 ++
xen/arch/riscv/include/asm/domain.h | 1 +
xen/arch/riscv/include/asm/guest-layout.h | 23 ++
xen/arch/riscv/include/asm/guest_access.h | 7 +
xen/arch/riscv/include/asm/p2m.h | 21 +-
xen/arch/riscv/kernel.c | 242 ++++++++++++++++++++++
xen/arch/riscv/p2m.c | 133 ++++++++----
xen/arch/riscv/vmid.c | 2 +-
xen/common/device-tree/domain-build.c | 3 +-
xen/common/device-tree/kernel.c | 2 +-
xen/include/public/arch-riscv.h | 5 +
xen/include/xen/bootinfo.h | 4 +
xen/include/xen/domain-layout.h | 27 +++
xen/include/xen/fdt-domain-build.h | 2 +-
xen/include/xen/fdt-kernel.h | 15 +-
27 files changed, 670 insertions(+), 97 deletions(-)
create mode 100644 xen/arch/riscv/dom0less-build.c
create mode 100644 xen/arch/riscv/guestcopy.c
create mode 100644 xen/arch/riscv/include/asm/guest-layout.h
create mode 100644 xen/arch/riscv/kernel.c
create mode 100644 xen/include/xen/domain-layout.h
--
2.53.0