All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH ARM v5 00/20] mini-os: initial ARM support
@ 2014-06-26 11:28 Thomas Leonard
  2014-06-26 11:28 ` [PATCH ARM v5 01/20] mini-os: build fixes Thomas Leonard
                   ` (20 more replies)
  0 siblings, 21 replies; 54+ messages in thread
From: Thomas Leonard @ 2014-06-26 11:28 UTC (permalink / raw)
  To: xen-devel
  Cc: Thomas Leonard, Dave.Scott, anil, stefano.stabellini, samuel.thibault

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

^ permalink raw reply	[flat|nested] 54+ messages in thread

end of thread, other threads:[~2014-07-02  9:22 UTC | newest]

Thread overview: 54+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-06-26 11:28 [PATCH ARM v5 00/20] mini-os: initial ARM support Thomas Leonard
2014-06-26 11:28 ` [PATCH ARM v5 01/20] mini-os: build fixes Thomas Leonard
2014-06-26 11:28 ` [PATCH ARM v5 02/20] mini-os: fixed shutdown thread Thomas Leonard
2014-06-26 11:28 ` [PATCH ARM v5 03/20] mini-os: fixed format string error in unbind_evtchn Thomas Leonard
2014-06-26 11:28 ` [PATCH ARM v5 04/20] mini-os: use unbind_evtchn in unbind_all_ports Thomas Leonard
2014-06-26 11:28 ` [PATCH ARM v5 05/20] mini-os: made off_t type signed Thomas Leonard
2014-06-26 11:28 ` [PATCH ARM v5 06/20] mini-os: switched initial C entry point to arch_init Thomas Leonard
2014-06-26 11:28 ` [PATCH ARM v5 07/20] mini-os: whitespace Thomas Leonard
2014-06-26 11:35   ` Samuel Thibault
2014-06-26 11:28 ` [PATCH ARM v5 08/20] mini-os: added arch_init_gnttab Thomas Leonard
2014-06-26 11:36   ` Samuel Thibault
2014-06-26 11:28 ` [PATCH ARM v5 09/20] mini-os: don't require XEN_HAVE_PV_UPCALL_MASK Thomas Leonard
2014-06-26 11:37   ` Samuel Thibault
2014-06-26 11:28 ` [PATCH ARM v5 10/20] mini-os: add missing casts to MM printk Thomas Leonard
2014-06-26 11:37   ` Samuel Thibault
2014-06-26 11:28 ` [PATCH ARM v5 11/20] mini-os: added HYPERVISOR_xsm_op Thomas Leonard
2014-06-26 11:38   ` Samuel Thibault
2014-06-27 13:13     ` Ian Campbell
2014-06-27 13:56       ` Thomas Leonard
2014-06-27 15:43         ` Thomas Leonard
2014-06-27 15:50           ` Samuel Thibault
2014-06-27 16:47         ` Ian Campbell
2014-06-26 11:28 ` [PATCH ARM v5 12/20] mini-os: added arch_unbind_ports Thomas Leonard
2014-06-26 11:38   ` Samuel Thibault
2014-06-26 11:28 ` [PATCH ARM v5 13/20] mini-os: moved __pte to x86 Thomas Leonard
2014-06-26 11:39   ` Samuel Thibault
2014-06-26 11:28 ` [PATCH ARM v5 14/20] mini-os: moved unlikely/likely macros to new compiler.h Thomas Leonard
2014-06-26 11:40   ` Samuel Thibault
2014-06-26 11:28 ` [PATCH ARM v5 15/20] mini-os: enable test_xenbus again Thomas Leonard
2014-06-26 11:40   ` Samuel Thibault
2014-06-27 11:05   ` Ian Campbell
2014-06-27 12:48     ` Thomas Leonard
2014-06-27 12:54       ` Ian Campbell
2014-06-26 11:28 ` [PATCH ARM v5 16/20] mini-os: use irqs_disabled() helper in schedule Thomas Leonard
2014-06-26 11:42   ` Samuel Thibault
2014-06-26 11:28 ` [PATCH ARM v5 17/20] mini-os: headers for ARM Thomas Leonard
2014-06-26 16:26   ` Julien Grall
2014-06-27 13:02     ` Thomas Leonard
2014-06-27 13:11       ` Ian Campbell
2014-06-26 11:28 ` [PATCH ARM v5 18/20] mini-os: import libfdt Thomas Leonard
2014-06-28 12:01   ` Julien Grall
2014-06-28 12:27     ` Thomas Leonard
2014-06-28 15:14       ` Julien Grall
2014-06-28 16:35         ` Anil Madhavapeddy
2014-06-28 16:45           ` Julien Grall
2014-06-26 11:28 ` [PATCH ARM v5 19/20] mini-os: initial ARM support Thomas Leonard
2014-06-28 18:31   ` Julien Grall
2014-06-30 19:12     ` Thomas Leonard
2014-06-30 21:08       ` Julien Grall
2014-07-02  8:41         ` Ian Campbell
2014-07-02  8:23       ` Ian Campbell
2014-07-02  9:22         ` karim.allah.ahmed
2014-06-26 11:28 ` [PATCH ARM v5 20/20] mini-os: arm: show registers, stack and exception vector on fault Thomas Leonard
2014-06-27 13:34 ` [PATCH ARM v5 00/20] mini-os: initial ARM support Ian Campbell

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.