[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH ARM v4 00/12] 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 too, plus a few other things: - the series is rebased onto the patches that Ian already applied - removing the "link" make target broke stubdom, so I brought that back - the x86 stack address printk is back, and I moved all the other x86 printks to after the "WARN: don't do printk before here" line - the TODOs in arm/os.h have been implemented (mainly using GCC intrinsics) - added clrex to the IRQ handler return in case these get interrupted - added an explicit -march=armv7-a to cope with other compiler defaults - the zImage header now works with the XSA-95 fix to "xl create" - added fixes for unbinding ports (also useful on x86) - configued ARM not to fault on unaligned word accessess (useful for lwIP) - fixed the off_t type to match POSIX (maybe Mini-OS shouldn't be defining it in the first place, but since it is, it should do it correctly). - there are also some new patches adding support for using the FDT to initialise the MM, GIC and grant tables. This patch roll is also available here: https://github.com/talex5/xen/commits/sent-Jun-18 Please include Karim in any reply as I am not the author of much of this code. Karim Raslan (3): mini-os: switched initial C entry point to arch_init mini-os: initial ARM support mini-os: import libfdt Thomas Leonard (9): 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: arm: show registers, stack and exception vector on fault mini-os: get RAM base and size from the FDT mini-os: get GIC addresses from FDT mini-os: added ARM grant table initialisation extras/mini-os/ARM-TODO.txt | 10 + extras/mini-os/COPYING | 27 + extras/mini-os/Config.mk | 2 + extras/mini-os/Makefile | 48 +- extras/mini-os/arch/arm/Makefile | 32 + extras/mini-os/arch/arm/arch.mk | 7 + extras/mini-os/arch/arm/arm32.S | 222 ++++ extras/mini-os/arch/arm/events.c | 30 + extras/mini-os/arch/arm/hypercalls32.S | 88 ++ extras/mini-os/arch/arm/minios-arm32.lds | 75 ++ extras/mini-os/arch/arm/mm.c | 162 +++ extras/mini-os/arch/arm/panic.c | 99 ++ extras/mini-os/arch/arm/sched.c | 37 + extras/mini-os/arch/arm/setup.c | 112 ++ 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/drivers/gic.c | 217 ++++ 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 | 37 + extras/mini-os/include/arm/arch_sched.h | 22 + extras/mini-os/include/arm/arch_spinlock.h | 49 + extras/mini-os/include/arm/arm32/arch_wordsize.h | 1 + extras/mini-os/include/arm/hypercall-arm32.h | 173 +++ extras/mini-os/include/arm/os.h | 232 ++++ extras/mini-os/include/arm/traps.h | 20 + extras/mini-os/include/events.h | 4 + extras/mini-os/include/fdt.h | 60 + extras/mini-os/include/gic.h | 1 + extras/mini-os/include/gnttab.h | 1 + extras/mini-os/include/hypervisor.h | 4 + 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 | 14 +- extras/mini-os/include/x86/os.h | 2 - extras/mini-os/kernel.c | 55 +- 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 | 29 +- 59 files changed, 5632 insertions(+), 112 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/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/drivers/gic.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/hypercall-arm32.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/fdt.h create mode 100644 extras/mini-os/include/gic.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 |