[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH ARM v5 00/20] mini-os: initial ARM support
This series is based on Karim's ARM support commits, further broken up into smaller patches. The comments from last time should be addressed now, plus a few other things: - The biggest change in this roll is that it can now cope with being loaded at different addresses, and so works on Xen 4.4 and Xen/unstable. It does this by configuring the MMU to map virtual address x to physical address (x + physical_address_offset), where physical_address_offset is calculated to make everything appear where the linker is expecting it. - The GIC code has moved into the arm directory. - To make review easier (as requested), libfdt support is now added before the main ARM commit, which now uses the FDT immediately rather than adding support in later commits. - I also re-enabled test_xenbus. The old code said "Xenbus tests disabled, because of a Xend bug". Since xend doesn't exist any longer, we can enable these again. This patch roll is also available here: https://github.com/talex5/xen/commits/sent-Jun-26 Please include Karim in any reply as I am not the author of much of this code. Karim Raslan (4): mini-os: switched initial C entry point to arch_init mini-os: added arch_init_gnttab mini-os: headers for ARM mini-os: import libfdt Thomas Leonard (16): mini-os: build fixes mini-os: fixed shutdown thread mini-os: fixed format string error in unbind_evtchn mini-os: use unbind_evtchn in unbind_all_ports mini-os: made off_t type signed mini-os: whitespace mini-os: don't require XEN_HAVE_PV_UPCALL_MASK mini-os: add missing casts to MM printk mini-os: added HYPERVISOR_xsm_op mini-os: added arch_unbind_ports mini-os: moved __pte to x86 mini-os: moved unlikely/likely macros to new compiler.h mini-os: enable test_xenbus again mini-os: use irqs_disabled() helper in schedule mini-os: initial ARM support mini-os: arm: show registers, stack and exception vector on fault extras/mini-os/ARM-TODO.txt | 5 + extras/mini-os/COPYING | 27 + extras/mini-os/Config.mk | 2 + extras/mini-os/Makefile | 45 +- extras/mini-os/arch/arm/Makefile | 32 + extras/mini-os/arch/arm/arch.mk | 7 + extras/mini-os/arch/arm/arm32.S | 332 +++++ extras/mini-os/arch/arm/events.c | 30 + extras/mini-os/arch/arm/gic.c | 222 +++ extras/mini-os/arch/arm/hypercalls32.S | 75 + extras/mini-os/arch/arm/minios-arm32.lds | 75 + extras/mini-os/arch/arm/mm.c | 134 ++ extras/mini-os/arch/arm/panic.c | 99 ++ extras/mini-os/arch/arm/sched.c | 37 + extras/mini-os/arch/arm/setup.c | 116 ++ extras/mini-os/arch/arm/time.c | 202 +++ extras/mini-os/arch/x86/events.c | 4 + extras/mini-os/arch/x86/mm.c | 13 + extras/mini-os/arch/x86/setup.c | 44 +- extras/mini-os/arch/x86/x86_32.S | 2 +- extras/mini-os/arch/x86/x86_64.S | 2 +- extras/mini-os/events.c | 39 +- extras/mini-os/gnttab.c | 11 +- extras/mini-os/hypervisor.c | 12 +- extras/mini-os/include/arm/arch_endian.h | 7 + extras/mini-os/include/arm/arch_limits.h | 9 + extras/mini-os/include/arm/arch_mm.h | 35 + extras/mini-os/include/arm/arch_sched.h | 19 + extras/mini-os/include/arm/arch_spinlock.h | 36 + extras/mini-os/include/arm/arm32/arch_wordsize.h | 1 + extras/mini-os/include/arm/gic.h | 1 + extras/mini-os/include/arm/hypercall-arm.h | 98 ++ extras/mini-os/include/arm/os.h | 215 +++ extras/mini-os/include/arm/traps.h | 20 + extras/mini-os/include/compiler.h | 5 + extras/mini-os/include/events.h | 4 + extras/mini-os/include/fdt.h | 60 + extras/mini-os/include/gnttab.h | 1 + extras/mini-os/include/hypervisor.h | 2 + extras/mini-os/include/kernel.h | 6 +- extras/mini-os/include/lib.h | 4 +- extras/mini-os/include/libfdt.h | 1478 ++++++++++++++++++++ extras/mini-os/include/libfdt_env.h | 37 + extras/mini-os/include/mm.h | 2 + extras/mini-os/include/types.h | 24 +- extras/mini-os/include/x86/os.h | 16 +- .../mini-os/include/x86/x86_32/hypercall-x86_32.h | 5 + .../mini-os/include/x86/x86_64/hypercall-x86_64.h | 4 + extras/mini-os/kernel.c | 49 +- extras/mini-os/lib/fdt/fdt.c | 222 +++ extras/mini-os/lib/fdt/fdt_empty_tree.c | 84 ++ extras/mini-os/lib/fdt/fdt_ro.c | 574 ++++++++ extras/mini-os/lib/fdt/fdt_rw.c | 492 +++++++ extras/mini-os/lib/fdt/fdt_strerror.c | 96 ++ extras/mini-os/lib/fdt/fdt_sw.c | 256 ++++ extras/mini-os/lib/fdt/fdt_wip.c | 118 ++ extras/mini-os/lib/fdt/libfdt_internal.h | 95 ++ extras/mini-os/lib/memmove.c | 45 + extras/mini-os/lib/string.c | 12 + extras/mini-os/main.c | 2 +- extras/mini-os/mm.c | 4 +- extras/mini-os/sched.c | 36 +- extras/mini-os/test.c | 3 +- 63 files changed, 5606 insertions(+), 138 deletions(-) create mode 100644 extras/mini-os/ARM-TODO.txt create mode 100755 extras/mini-os/arch/arm/Makefile create mode 100644 extras/mini-os/arch/arm/arch.mk create mode 100644 extras/mini-os/arch/arm/arm32.S create mode 100644 extras/mini-os/arch/arm/events.c create mode 100644 extras/mini-os/arch/arm/gic.c create mode 100644 extras/mini-os/arch/arm/hypercalls32.S create mode 100755 extras/mini-os/arch/arm/minios-arm32.lds create mode 100644 extras/mini-os/arch/arm/mm.c create mode 100644 extras/mini-os/arch/arm/panic.c create mode 100644 extras/mini-os/arch/arm/sched.c create mode 100644 extras/mini-os/arch/arm/setup.c create mode 100644 extras/mini-os/arch/arm/time.c create mode 100644 extras/mini-os/include/arm/arch_endian.h create mode 100644 extras/mini-os/include/arm/arch_limits.h create mode 100644 extras/mini-os/include/arm/arch_mm.h create mode 100644 extras/mini-os/include/arm/arch_sched.h create mode 100755 extras/mini-os/include/arm/arch_spinlock.h create mode 100644 extras/mini-os/include/arm/arm32/arch_wordsize.h create mode 100644 extras/mini-os/include/arm/gic.h create mode 100644 extras/mini-os/include/arm/hypercall-arm.h create mode 100644 extras/mini-os/include/arm/os.h create mode 100644 extras/mini-os/include/arm/traps.h create mode 100644 extras/mini-os/include/compiler.h create mode 100644 extras/mini-os/include/fdt.h create mode 100644 extras/mini-os/include/libfdt.h create mode 100644 extras/mini-os/include/libfdt_env.h create mode 100644 extras/mini-os/lib/fdt/fdt.c create mode 100644 extras/mini-os/lib/fdt/fdt_empty_tree.c create mode 100644 extras/mini-os/lib/fdt/fdt_ro.c create mode 100644 extras/mini-os/lib/fdt/fdt_rw.c create mode 100644 extras/mini-os/lib/fdt/fdt_strerror.c create mode 100644 extras/mini-os/lib/fdt/fdt_sw.c create mode 100644 extras/mini-os/lib/fdt/fdt_wip.c create mode 100644 extras/mini-os/lib/fdt/libfdt_internal.h create mode 100644 extras/mini-os/lib/memmove.c -- 2.0.0 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |