Hello all,
This patch series performs all of the additions necessary to drop the
build overrides for PPC and enable the full Xen build. Except in cases
where compatibile implementations already exist (e.g. atomic.h and
bitops.h), the newly added definitions are simple, unimplemented stubs
that just call BUG_ON("unimplemented").
Thanks,
Shawn
--
v4: Address review comments from v3. Add missing CCs.
v3: Address review comments from v2.
v2: Address review comments from v1. Some changes are still pending until
the following patches are merged:
- [PATCH] mem-sharing: move (x86) / drop (Arm) arch_dump_shared_mem_info()
https://lists.xen.org/archives/html/xen-devel/2023-08/msg00887.html
- [PATCH] move max_page and total_pages to common code
https://lists.xen.org/archives/html/xen-devel/2023-08/msg00874.html
Shawn Anastasio (5):
xen/ppc: Implement atomic.h
xen/ppc: Implement bitops.h
xen/ppc: Define minimal stub headers required for full build
xen/ppc: Add stub function and symbol definitions
xen/ppc: Enable full Xen build
xen/arch/ppc/Kconfig | 1 +
xen/arch/ppc/Makefile | 17 +-
xen/arch/ppc/arch.mk | 3 -
xen/arch/ppc/include/asm/altp2m.h | 25 ++
xen/arch/ppc/include/asm/atomic.h | 385 +++++++++++++++++++++++
xen/arch/ppc/include/asm/bitops.h | 332 ++++++++++++++++++-
xen/arch/ppc/include/asm/bug.h | 9 +
xen/arch/ppc/include/asm/cache.h | 2 +
xen/arch/ppc/include/asm/config.h | 10 +
xen/arch/ppc/include/asm/cpufeature.h | 10 +
xen/arch/ppc/include/asm/current.h | 43 +++
xen/arch/ppc/include/asm/delay.h | 12 +
xen/arch/ppc/include/asm/device.h | 53 ++++
xen/arch/ppc/include/asm/div64.h | 14 +
xen/arch/ppc/include/asm/domain.h | 47 +++
xen/arch/ppc/include/asm/event.h | 36 +++
xen/arch/ppc/include/asm/flushtlb.h | 24 ++
xen/arch/ppc/include/asm/grant_table.h | 5 +
xen/arch/ppc/include/asm/guest_access.h | 68 ++++
xen/arch/ppc/include/asm/guest_atomics.h | 23 ++
xen/arch/ppc/include/asm/hardirq.h | 19 ++
xen/arch/ppc/include/asm/hypercall.h | 5 +
xen/arch/ppc/include/asm/io.h | 16 +
xen/arch/ppc/include/asm/iocap.h | 8 +
xen/arch/ppc/include/asm/iommu.h | 8 +
xen/arch/ppc/include/asm/irq.h | 33 ++
xen/arch/ppc/include/asm/mem_access.h | 5 +
xen/arch/ppc/include/asm/memory.h | 14 +
xen/arch/ppc/include/asm/mm.h | 243 +++++++++++++-
xen/arch/ppc/include/asm/monitor.h | 43 +++
xen/arch/ppc/include/asm/nospec.h | 15 +
xen/arch/ppc/include/asm/numa.h | 26 ++
xen/arch/ppc/include/asm/p2m.h | 95 ++++++
xen/arch/ppc/include/asm/page.h | 18 ++
xen/arch/ppc/include/asm/paging.h | 7 +
xen/arch/ppc/include/asm/pci.h | 7 +
xen/arch/ppc/include/asm/percpu.h | 24 ++
xen/arch/ppc/include/asm/processor.h | 10 +
xen/arch/ppc/include/asm/random.h | 9 +
xen/arch/ppc/include/asm/setup.h | 6 +
xen/arch/ppc/include/asm/smp.h | 18 ++
xen/arch/ppc/include/asm/softirq.h | 8 +
xen/arch/ppc/include/asm/spinlock.h | 15 +
xen/arch/ppc/include/asm/system.h | 219 ++++++++++++-
xen/arch/ppc/include/asm/time.h | 23 ++
xen/arch/ppc/include/asm/vm_event.h | 49 +++
xen/arch/ppc/include/asm/xenoprof.h | 0
xen/arch/ppc/mm-radix.c | 44 ++-
xen/arch/ppc/setup.c | 8 +
xen/arch/ppc/stubs.c | 339 ++++++++++++++++++++
xen/arch/ppc/tlb-radix.c | 2 +-
xen/include/public/hvm/save.h | 2 +
xen/include/public/pmu.h | 2 +
xen/include/public/xen.h | 2 +
54 files changed, 2450 insertions(+), 11 deletions(-)
create mode 100644 xen/arch/ppc/include/asm/altp2m.h
create mode 100644 xen/arch/ppc/include/asm/atomic.h
create mode 100644 xen/arch/ppc/include/asm/cpufeature.h
create mode 100644 xen/arch/ppc/include/asm/current.h
create mode 100644 xen/arch/ppc/include/asm/delay.h
create mode 100644 xen/arch/ppc/include/asm/device.h
create mode 100644 xen/arch/ppc/include/asm/div64.h
create mode 100644 xen/arch/ppc/include/asm/domain.h
create mode 100644 xen/arch/ppc/include/asm/event.h
create mode 100644 xen/arch/ppc/include/asm/flushtlb.h
create mode 100644 xen/arch/ppc/include/asm/grant_table.h
create mode 100644 xen/arch/ppc/include/asm/guest_access.h
create mode 100644 xen/arch/ppc/include/asm/guest_atomics.h
create mode 100644 xen/arch/ppc/include/asm/hardirq.h
create mode 100644 xen/arch/ppc/include/asm/hypercall.h
create mode 100644 xen/arch/ppc/include/asm/io.h
create mode 100644 xen/arch/ppc/include/asm/iocap.h
create mode 100644 xen/arch/ppc/include/asm/iommu.h
create mode 100644 xen/arch/ppc/include/asm/irq.h
create mode 100644 xen/arch/ppc/include/asm/mem_access.h
create mode 100644 xen/arch/ppc/include/asm/memory.h
create mode 100644 xen/arch/ppc/include/asm/monitor.h
create mode 100644 xen/arch/ppc/include/asm/nospec.h
create mode 100644 xen/arch/ppc/include/asm/numa.h
create mode 100644 xen/arch/ppc/include/asm/p2m.h
create mode 100644 xen/arch/ppc/include/asm/paging.h
create mode 100644 xen/arch/ppc/include/asm/pci.h
create mode 100644 xen/arch/ppc/include/asm/percpu.h
create mode 100644 xen/arch/ppc/include/asm/random.h
create mode 100644 xen/arch/ppc/include/asm/setup.h
create mode 100644 xen/arch/ppc/include/asm/smp.h
create mode 100644 xen/arch/ppc/include/asm/softirq.h
create mode 100644 xen/arch/ppc/include/asm/spinlock.h
create mode 100644 xen/arch/ppc/include/asm/time.h
create mode 100644 xen/arch/ppc/include/asm/vm_event.h
create mode 100644 xen/arch/ppc/include/asm/xenoprof.h
create mode 100644 xen/arch/ppc/stubs.c
--
2.30.2