v2 pipeline: https://gitlab.com/xen-project/people/agvallejo/xen/-/pipelines/1855777776
v1: https://lore.kernel.org/xen-devel/20250530120242.39398-1-agarciav@amd.com/
Original cover letter:
This is the aftermath of this discussion:
https://lore.kernel.org/xen-devel/DA1WWRUQLCAG.ZTVR1HXJ85V0@amd.com/https://lore.kernel.org/xen-devel/DA1WWRUQLCAG.ZTVR1HXJ85V0@amd.com/
It's a first round of cleanup and preparation to have a much easier time
later when integrating dom0less boot into hyperlaunch.
The refactor on device-tree/ is _fine_ by I'm open to other suggestions
to achieve the same thing. In particular, after this series x86 can
unflatten the DT host device tree when it has CONFIG_DOM0LESS_BOOT set,
which enables the builder to use factored-out functions from
dom0less-build.c (not done here).
The diffstat is deceptive because I renamed a large file and then
created a new file with the same name. There aren't that many LoC
changes.
Alejandro Vallejo (15):
xen: Clean up asm-generic/device.h
arm/gnttab: Break links between asm/grant_table.h and
xen/grant_table.h
xen/dt: Add BOOTMOD_MICROCODE
x86: Preinitialise all modules to be of kind BOOTMOD_UNKNOWN
x86: Replace boot_module with bootmodule
xen: Refactor kernel_info to have a header like boot_domain
x86: Replace boot_domain with bootdomain
xen/dt: Move bootfdt functions to xen/bootfdt.h
xen/dt: Move bootinfo functions to a new bootinfo.h
xen/dt: Rename bootfdt.c -> bootinfo-fdt.c
xen/dt: Move bootinfo-independent helpers out of bootinfo-fdt.c
xen/dt: Extract helper to map nodes to module kinds
xen/dt: ifdef out DEV_DT-related bits from device_tree.{c,h}
xen/dt: Allow CONFIG_DOM0LESS_BOOT to include device-tree/
kconfig: Allow x86 to pick CONFIG_DOM0LESS_BOOT
xen/arch/arm/dom0less-build.c | 8 +-
xen/arch/arm/domain_build.c | 21 +-
xen/arch/arm/include/asm/grant_table.h | 1 -
xen/arch/arm/include/asm/setup.h | 6 -
xen/arch/arm/kernel.c | 8 +-
xen/arch/arm/mmu/mm.c | 1 +
xen/arch/arm/setup.c | 1 +
xen/arch/riscv/aplic.c | 3 +-
xen/arch/riscv/mm.c | 2 +-
xen/arch/riscv/setup.c | 2 +-
xen/arch/x86/Kconfig | 1 +
xen/arch/x86/cpu/microcode/core.c | 9 +-
xen/arch/x86/dom0_build.c | 2 +-
xen/arch/x86/hvm/dom0_build.c | 14 +-
xen/arch/x86/include/asm/boot-domain.h | 33 --
xen/arch/x86/include/asm/bootfdt.h | 57 ++
xen/arch/x86/include/asm/bootinfo.h | 61 +--
xen/arch/x86/include/asm/dom0_build.h | 6 +-
xen/arch/x86/include/asm/setup.h | 10 +-
xen/arch/x86/pv/dom0_build.c | 12 +-
xen/arch/x86/setup.c | 72 +--
xen/common/Kconfig | 13 +-
xen/common/Makefile | 2 +-
xen/common/device-tree/Makefile | 9 +-
xen/common/device-tree/bootfdt.c | 666 ++----------------------
xen/common/device-tree/bootinfo-fdt.c | 583 +++++++++++++++++++++
xen/common/device-tree/bootinfo.c | 3 +-
xen/common/device-tree/device-tree.c | 2 +
xen/common/device-tree/dom0less-build.c | 21 +-
xen/common/device-tree/domain-build.c | 22 +-
xen/common/device-tree/kernel.c | 22 +-
xen/common/grant_table.c | 2 +
xen/include/asm-generic/device.h | 26 +-
xen/include/xen/bootfdt.h | 273 +++-------
xen/include/xen/bootinfo.h | 213 ++++++++
xen/include/xen/device_tree.h | 38 +-
xen/include/xen/fdt-domain-build.h | 2 +-
xen/include/xen/fdt-kernel.h | 7 +-
xen/include/xen/grant_table.h | 4 -
xen/xsm/xsm_policy.c | 4 +-
40 files changed, 1146 insertions(+), 1096 deletions(-)
delete mode 100644 xen/arch/x86/include/asm/boot-domain.h
create mode 100644 xen/arch/x86/include/asm/bootfdt.h
create mode 100644 xen/common/device-tree/bootinfo-fdt.c
create mode 100644 xen/include/xen/bootinfo.h
--
2.43.0