[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH 0/4] mini-os: initial ARM support
On 5 June 2014 15:36, Oleksandr Tyshchenko <oleksandr.tyshchenko@xxxxxxxxxxxxxxx> wrote: > Hi Thomas, all > > Thank you, > it is very interesting for me since I am trying to port XEN stuff to > embedded OS and using Mini-OS > as example. > > I tried to run Mini-OS as domU and I got a hypervisor crash at an early > initialization stage ( > > I took Mini-OS from github: > https://github.com/talex5/xen ("proposed" branch) > As I understand correctly this branch contains all necessary patches to > build > and verify Mini-OS on ARM (I so have thought because the last 4 commits from > this > branch correspond to patch series in current thread). Is it correct? > > But the Mini-OS from "next" branch boots without crashes (I changed GIC > addresses only): Hi Oleksandr, The "proposed" branch currently contain's only Karim Raslan's initial ARM work. I have a series of patches on top of this (on the next branch), but I was planning to get this initial support in first. Possibly my "Fixed initialisation code" commit should be merged with Karim's code into a single patch. On the other hand, it might be clearer to keep them separate (especially for other people who have built on Karim's original work, e.g. I see on github that Jonathan Daugherty has a fork from there). [...] > Also, could you, please, explain me some generic things about Mini-OS: > 1. Is HAVE_LIBC a necessary config? I mean if I build Mini-OS without proper > LIBC support will the Mini-OS to operate fully > (are there any restrictions?) You only need HAVE_LIBC if you want to use your own libc. Without HAVE_LIBC, minios provides its own versions of some basic functions (memcmp, sprintf, etc). Mirage works without it, for example. > 2. If yes, what should I do to build Mini-OS with proper LIBC support? > Unfortunately, it is not clear for me. > > > On Mon, Jun 2, 2014 at 8:49 PM, Thomas Leonard <talex5@xxxxxxxxx> wrote: >> >> This series is Karim's initial ARM support, broken up into smaller >> patches. >> I removed some debug code from the patch, fixed it to work on x86 again, >> and replaced memmove with a BSD-licensed version. >> >> I also added a fix so that Mini-OS doesn't shut down immediately. This is >> for x86 too, but I needed it because otherwise it's hard to test it. >> >> It's probably not worth worrying too much about the ARM support itself >> (there >> will be more patches coming shortly!) - the main thing is refactoring >> Mini-OS >> to support the new architecture. >> >> Karim Raslan (3): >> mini-os: Tidied up code >> mini-os: Initial commit to port minios to ARM >> mini-os: Added FDT support on ARM >> >> Thomas Leonard (1): >> mini-os: Fixed shutdown thread >> >> extras/mini-os/ARM-TODO.txt | 19 + >> extras/mini-os/COPYING | 27 + >> extras/mini-os/Config.mk | 2 + >> extras/mini-os/Makefile | 23 + >> extras/mini-os/README | 7 +- >> extras/mini-os/arch/arm/Makefile | 33 + >> extras/mini-os/arch/arm/arch.mk | 6 + >> extras/mini-os/arch/arm/arm32.S | 211 +++ >> extras/mini-os/arch/arm/divsi3.S | 404 ++++++ >> extras/mini-os/arch/arm/events.c | 24 + >> extras/mini-os/arch/arm/hypercalls32.S | 88 ++ >> extras/mini-os/arch/arm/ldivmod.S | 67 + >> extras/mini-os/arch/arm/ldivmod_helper.c | 66 + >> extras/mini-os/arch/arm/minios-arm32.lds | 73 + >> extras/mini-os/arch/arm/mm.c | 44 + >> extras/mini-os/arch/arm/qdivrem.c | 270 ++++ >> extras/mini-os/arch/arm/sched.c | 32 + >> extras/mini-os/arch/arm/setup.c | 55 + >> extras/mini-os/arch/arm/time.c | 232 +++ >> extras/mini-os/arch/arm/xenbus.c | 36 + >> extras/mini-os/arch/x86/events.c | 28 + >> extras/mini-os/arch/x86/setup.c | 44 +- >> extras/mini-os/arch/x86/time.c | 6 +- >> extras/mini-os/arch/x86/x86_32.S | 2 +- >> extras/mini-os/arch/x86/x86_64.S | 2 +- >> extras/mini-os/arch/x86/xenbus.c | 10 + >> extras/mini-os/console/console.c | 4 +- >> extras/mini-os/drivers/gic.c | 179 +++ >> extras/mini-os/events.c | 35 +- >> extras/mini-os/gntmap.c | 34 +- >> extras/mini-os/gnttab.c | 1 + >> extras/mini-os/hypervisor.c | 20 +- >> 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/hypercall-arm32.h | 173 +++ >> extras/mini-os/include/arm/os.h | 314 +++++ >> extras/mini-os/include/arm/traps.h | 20 + >> extras/mini-os/include/console.h | 1 + >> extras/mini-os/include/fdt.h | 60 + >> extras/mini-os/include/hypervisor.h | 19 +- >> 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 | 73 +- >> extras/mini-os/include/x86/arch_mm.h | 2 + >> extras/mini-os/include/x86/arch_spinlock.h | 2 +- >> extras/mini-os/include/x86/os.h | 19 +- >> .../mini-os/include/x86/x86_64/hypercall-x86_64.h | 1 + >> extras/mini-os/kernel.c | 94 +- >> 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 | 9 +- >> extras/mini-os/sched.c | 12 +- >> extras/mini-os/time.c | 12 + >> extras/mini-os/xenbus/xenbus.c | 20 +- >> 67 files changed, 6410 insertions(+), 139 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/divsi3.S >> create mode 100644 extras/mini-os/arch/arm/events.c >> create mode 100644 extras/mini-os/arch/arm/hypercalls32.S >> create mode 100644 extras/mini-os/arch/arm/ldivmod.S >> create mode 100644 extras/mini-os/arch/arm/ldivmod_helper.c >> 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/qdivrem.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/arch/arm/xenbus.c >> create mode 100644 extras/mini-os/arch/x86/events.c >> create mode 100644 extras/mini-os/arch/x86/xenbus.c >> create mode 100644 extras/mini-os/drivers/gic.c >> 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/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/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 >> create mode 100644 extras/mini-os/time.c >> >> -- >> 1.9.3 >> >> >> _______________________________________________ >> Xen-devel mailing list >> Xen-devel@xxxxxxxxxxxxx >> http://lists.xen.org/xen-devel > > > > > -- > > Oleksandr Tyshchenko | Embedded Dev > GlobalLogic > www.globallogic.com -- Dr Thomas Leonard http://0install.net/ GPG: 9242 9807 C985 3C07 44A6 8B9A AE07 8280 59A5 3CC1 GPG: DA98 25AE CAD0 8975 7CDA BD8E 0713 3F96 CA74 D8BA _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |