All of lore.kernel.org
 help / color / mirror / Atom feed
* [RFC 00/29] Support multiple ARM platforms in Xen
@ 2013-04-28 23:01 Julien Grall
  2013-04-28 23:01 ` [RFC 01/29] xen/arm: lr must be included in range [0-nr_lr[ Julien Grall
                   ` (30 more replies)
  0 siblings, 31 replies; 123+ messages in thread
From: Julien Grall @ 2013-04-28 23:01 UTC (permalink / raw)
  To: xen-devel
  Cc: anthony.perard, stefano.stabellini, ian.campbell, Julien Grall,
	patches

Hello,

This patch series is divided in 4 parts:
    - Patch 1-6: Minor bug fixes
    - Patch 7-10: Add hierarchical device tree support based on linux tree
    - Patch 11-24: Remove harcoded part
    - Patch 25-28: Arndale support based on Anthony's git

Xen can boot on both Arndale Board and the Versatile Express without
recompilation. But there is still some hardcoded part, mainly in assembly.

Things to do:
    - Move secondary CPUs bring up code in platform specific
    - Move out of Xen the switch between secure mode and hypervisor mode
    - Rework dom0 device tree creation
    - Use everywhere the new device tree API
    - Add a support for SYS MMU

If you want to try this patch series you can clone:
  git clone -b arm git://xenbits.xen.org/people/julieng/xen-unstable.git

The command line to compile Xen is the same as before. You just need to
specify on Xen command line, via the device tree, which UART will be used
for the console.

Sincerely yours,

Julien Grall (29):
  xen/arm: lr must be included in range [0-nr_lr[
  xen/arm: don't allow dom0 to access to vpl011 UART0 memory range
  xen/arm: Remove duplicated GICD_ICPIDR2 definition
  xen/arm: Bump early printk internal buffer to 512
  xen/arm: Fix early_panic when EARLY_PRINTK is disabled
  xen/arm: Load dtb after dom0 kernel
  xen/arm: Create a hierarchical device tree
  xen/arm: Add helpers to use the device tree
  xen/arm: Add helpers to retrieve an address from the device tree
  xen/arm: Add helpers to retrieve an interrupt description from the device tree
  xen/arm: Introduce gic_route_dt_irq
  xen/arm: Introduce gic_irq_xlate
  xen/arm: Use hierarchical device tree to retrieve GIC information
  xen/arm: Retrieve timer interrupts from the device tree
  xen/arm: Don't hardcode VGIC informations
  xen/arm: Introduce a generic way to use a device from the device tree
  xen/arm: New callback in uart_driver to get device tree interrupt structure
  xen/arm: add generic UART to get the device in the device tree
  xen/arm: Use device tree API in pl011 UART driver
  xen/arm: Use the device tree to map the address range and IRQ to dom0
  xen/arm: WORKAROUND 1:1 memory mapping for dom0
  xen/arm: Allow Xen to run on multiple platform without recompilation
  xen/arm: Add versatile express platform
  xen/arm: Don't use pl011 UART by default for early printk
  xen/arm: Add exynos 4210 UART support
  xen/arm: Add Exynos 4210 UART support for early printk
  xen/arm: Add platform specific code for the exynos5
  xen/arm: Support secondary cpus boot and switch to hypervisor for the exynos5
  xen/arm64: Remove hardcoded value for gic in assembly code

 config/arm32.mk                          |   13 +
 config/arm64.mk                          |   11 +
 xen/arch/arm/Makefile                    |    4 +-
 xen/arch/arm/Rules.mk                    |   13 +
 xen/arch/arm/arm32/Makefile              |    6 +-
 xen/arch/arm/arm32/debug-exynos5.S       |   81 ++
 xen/arch/arm/arm32/debug-pl011.S         |   64 ++
 xen/arch/arm/arm32/debug.S               |   33 +
 xen/arch/arm/arm32/head.S                |   85 +-
 xen/arch/arm/arm32/mode_switch.S         |   74 +-
 xen/arch/arm/arm64/Makefile              |    3 +
 xen/arch/arm/arm64/debug-pl011.S         |   64 ++
 xen/arch/arm/arm64/debug.S               |   33 +
 xen/arch/arm/arm64/head.S                |   69 +-
 xen/arch/arm/arm64/mode_switch.S         |    7 +-
 xen/arch/arm/device.c                    |   74 ++
 xen/arch/arm/domain_build.c              |  202 ++++-
 xen/arch/arm/early_printk.c              |   18 +-
 xen/arch/arm/gic.c                       |  154 +++-
 xen/arch/arm/kernel.h                    |    1 -
 xen/arch/arm/platform.c                  |  121 +++
 xen/arch/arm/platforms/Makefile          |    1 +
 xen/arch/arm/platforms/exynos5.c         |  105 +++
 xen/arch/arm/platforms/vexpress.c        |   26 +
 xen/arch/arm/setup.c                     |   14 +-
 xen/arch/arm/shutdown.c                  |   16 +-
 xen/arch/arm/time.c                      |   65 +-
 xen/arch/arm/vgic.c                      |   21 +-
 xen/arch/arm/vpl011.c                    |    4 +-
 xen/arch/arm/xen.lds.S                   |   12 +
 xen/common/device_tree.c                 | 1319 ++++++++++++++++++++++++++++--
 xen/drivers/char/Makefile                |    2 +
 xen/drivers/char/arm-uart.c              |   76 ++
 xen/drivers/char/exynos5-uart.c          |  346 ++++++++
 xen/drivers/char/pl011.c                 |   63 +-
 xen/drivers/char/serial.c                |   10 +
 xen/include/asm-arm/config.h             |   13 +-
 xen/include/asm-arm/device.h             |   52 ++
 xen/include/asm-arm/domain.h             |    5 +-
 xen/include/asm-arm/early_printk.h       |    4 +-
 xen/include/asm-arm/gic.h                |   16 +-
 xen/include/asm-arm/platform.h           |   70 ++
 xen/include/asm-arm/platforms/exynos5.h  |   40 +
 xen/include/asm-arm/platforms/vexpress.h |   14 +
 xen/include/asm-arm/time.h               |    3 +
 xen/include/xen/device_tree.h            |  347 +++++++-
 xen/include/xen/irq.h                    |   25 +
 xen/include/xen/serial.h                 |   14 +-
 48 files changed, 3508 insertions(+), 305 deletions(-)
 create mode 100644 xen/arch/arm/arm32/debug-exynos5.S
 create mode 100644 xen/arch/arm/arm32/debug-pl011.S
 create mode 100644 xen/arch/arm/arm32/debug.S
 create mode 100644 xen/arch/arm/arm64/debug-pl011.S
 create mode 100644 xen/arch/arm/arm64/debug.S
 create mode 100644 xen/arch/arm/device.c
 create mode 100644 xen/arch/arm/platform.c
 create mode 100644 xen/arch/arm/platforms/exynos5.c
 create mode 100644 xen/drivers/char/arm-uart.c
 create mode 100644 xen/drivers/char/exynos5-uart.c
 create mode 100644 xen/include/asm-arm/device.h
 create mode 100644 xen/include/asm-arm/platform.h
 create mode 100644 xen/include/asm-arm/platforms/exynos5.h

-- 
Julien Grall

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

end of thread, other threads:[~2013-05-02 10:51 UTC | newest]

Thread overview: 123+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-04-28 23:01 [RFC 00/29] Support multiple ARM platforms in Xen Julien Grall
2013-04-28 23:01 ` [RFC 01/29] xen/arm: lr must be included in range [0-nr_lr[ Julien Grall
2013-04-29 14:55   ` Ian Campbell
2013-04-29 15:13     ` Julien Grall
2013-04-28 23:01 ` [RFC 02/29] xen/arm: don't allow dom0 to access to vpl011 UART0 memory range Julien Grall
2013-04-29 14:57   ` Ian Campbell
2013-04-29 15:19     ` Julien Grall
2013-04-28 23:01 ` [RFC 03/29] xen/arm: Remove duplicated GICD_ICPIDR2 definition Julien Grall
2013-04-29 14:58   ` Ian Campbell
2013-04-28 23:01 ` [RFC 04/29] xen/arm: Bump early printk internal buffer to 512 Julien Grall
2013-04-29 15:01   ` Ian Campbell
2013-04-29 15:22     ` Julien Grall
2013-04-28 23:01 ` [RFC 05/29] xen/arm: Fix early_panic when EARLY_PRINTK is disabled Julien Grall
2013-04-29 15:01   ` Ian Campbell
2013-04-28 23:01 ` [RFC 06/29] xen/arm: Load dtb after dom0 kernel Julien Grall
2013-04-29 15:07   ` Ian Campbell
2013-04-29 15:29     ` Julien Grall
2013-04-28 23:01 ` [RFC 07/29] xen/arm: Create a hierarchical device tree Julien Grall
2013-04-29 15:19   ` Ian Campbell
2013-04-29 15:32     ` Julien Grall
2013-04-28 23:01 ` [RFC 08/29] xen/arm: Add helpers to use the " Julien Grall
2013-04-29 15:23   ` Ian Campbell
2013-04-29 15:40     ` Julien Grall
2013-04-29 16:55       ` Ian Campbell
2013-04-29 18:23         ` Julien Grall
2013-04-30  9:22           ` Ian Campbell
2013-04-28 23:01 ` [RFC 09/29] xen/arm: Add helpers to retrieve an address from " Julien Grall
2013-04-28 23:01 ` [RFC 10/29] xen/arm: Add helpers to retrieve an interrupt description " Julien Grall
2013-04-29 15:28   ` Ian Campbell
2013-04-29 15:45     ` Julien Grall
2013-04-29 16:56       ` Ian Campbell
2013-04-28 23:01 ` [RFC 11/29] xen/arm: Introduce gic_route_dt_irq Julien Grall
2013-04-29 15:28   ` Ian Campbell
2013-04-28 23:01 ` [RFC 12/29] xen/arm: Introduce gic_irq_xlate Julien Grall
2013-04-29 15:31   ` Ian Campbell
2013-04-29 15:52     ` Julien Grall
2013-04-28 23:01 ` [RFC 13/29] xen/arm: Use hierarchical device tree to retrieve GIC information Julien Grall
2013-04-29 15:35   ` Ian Campbell
2013-04-29 16:30     ` Julien Grall
2013-04-29 20:42     ` Julien Grall
2013-04-30  9:34       ` Ian Campbell
2013-04-30 18:04         ` Julien Grall
2013-05-01  8:14           ` Ian Campbell
2013-04-28 23:01 ` [RFC 14/29] xen/arm: Retrieve timer interrupts from the device tree Julien Grall
2013-04-29 15:38   ` Ian Campbell
2013-04-29 20:23     ` Julien Grall
2013-04-28 23:01 ` [RFC 15/29] xen/arm: Don't hardcode VGIC informations Julien Grall
2013-04-29 15:41   ` Ian Campbell
2013-04-29 16:42     ` Julien Grall
2013-04-30  9:03       ` Ian Campbell
2013-04-28 23:01 ` [RFC 16/29] xen/arm: Introduce a generic way to use a device from the device tree Julien Grall
2013-04-29 15:44   ` Ian Campbell
2013-04-29 16:58     ` Julien Grall
2013-04-28 23:02 ` [RFC 17/29] xen/arm: New callback in uart_driver to get device tree interrupt structure Julien Grall
2013-04-29 15:46   ` Ian Campbell
2013-04-29 17:09     ` Julien Grall
2013-04-30  9:05       ` Ian Campbell
2013-04-28 23:02 ` [RFC 18/29] xen/arm: add generic UART to get the device in the device tree Julien Grall
2013-04-29 15:51   ` Ian Campbell
2013-04-29 17:24     ` Julien Grall
2013-04-30  9:09       ` Ian Campbell
2013-04-30 11:05         ` Julien Grall
2013-04-30 12:41           ` Ian Campbell
2013-04-30 13:37             ` Julien Grall
2013-04-28 23:02 ` [RFC 19/29] xen/arm: Use device tree API in pl011 UART driver Julien Grall
2013-04-29 15:54   ` Ian Campbell
2013-04-29 17:27     ` Julien Grall
2013-04-28 23:02 ` [RFC 20/29] xen/arm: Use the device tree to map the address range and IRQ to dom0 Julien Grall
2013-04-29 15:59   ` Ian Campbell
2013-04-29 17:30     ` Julien Grall
2013-04-28 23:02 ` [RFC 21/29] xen/arm: WORKAROUND 1:1 memory mapping for dom0 Julien Grall
2013-04-29 16:13   ` Ian Campbell
2013-04-29 17:43     ` Julien Grall
2013-04-30  9:12       ` Ian Campbell
2013-04-28 23:02 ` [RFC 22/29] xen/arm: Allow Xen to run on multiple platform without recompilation Julien Grall
2013-04-29 16:15   ` Ian Campbell
2013-04-29 17:44     ` Julien Grall
2013-05-01 11:51   ` Stefano Stabellini
2013-04-28 23:02 ` [RFC 23/29] xen/arm: Add versatile express platform Julien Grall
2013-04-29 16:27   ` Ian Campbell
2013-04-29 17:52     ` Julien Grall
2013-04-30  9:12       ` Ian Campbell
2013-04-28 23:02 ` [RFC 24/29] xen/arm: Don't use pl011 UART by default for early printk Julien Grall
2013-04-29 16:45   ` Ian Campbell
2013-04-29 18:12     ` Julien Grall
2013-04-30  9:18       ` Ian Campbell
     [not found]         ` <CAPnVf8zQ-xhOqab5wVWGenJPdcRgwcr9t50EzMT372HSuPupPQ@mail.gmail.com>
2013-04-30 11:21           ` Julien Grall
2013-04-30 12:44             ` Ian Campbell
2013-04-30 13:39               ` Julien Grall
2013-04-30 13:51                 ` Ian Campbell
2013-04-30 13:57                   ` Julien Grall
2013-04-30 14:09                     ` Ian Campbell
2013-04-30  9:00   ` Ian Campbell
2013-04-30 11:24     ` Julien Grall
2013-04-28 23:02 ` [RFC 25/29] xen/arm: Add exynos 4210 UART support Julien Grall
2013-04-29 16:51   ` Ian Campbell
2013-04-29 18:12     ` Anthony PERARD
2013-04-29 18:21       ` Julien Grall
2013-04-30  9:22         ` Ian Campbell
2013-04-28 23:02 ` [RFC 26/29] xen/arm: Add Exynos 4210 UART support for early printk Julien Grall
2013-04-30  9:53   ` Ian Campbell
2013-05-01 17:17     ` Anthony PERARD
2013-05-02  7:58       ` Ian Campbell
2013-05-02 10:51         ` Anthony PERARD
2013-05-01 17:24   ` Anthony PERARD
2013-04-28 23:02 ` [RFC 27/29] xen/arm: Add platform specific code for the exynos5 Julien Grall
2013-04-30 10:00   ` Ian Campbell
2013-04-30 15:40     ` Julien Grall
2013-04-30 15:46       ` Ian Campbell
2013-04-30 16:11         ` Julien Grall
2013-04-28 23:02 ` [RFC 28/29] xen/arm: Support secondary cpus boot and switch to hypervisor " Julien Grall
2013-04-30 10:10   ` Ian Campbell
2013-04-30 11:52     ` Julien Grall
2013-04-28 23:02 ` [RFC 29/29] xen/arm64: Remove hardcoded value for gic in assembly code Julien Grall
2013-04-30 10:11   ` Ian Campbell
2013-04-29 10:17 ` [RFC 00/29] Support multiple ARM platforms in Xen Ian Campbell
2013-04-29 10:33   ` George Dunlap
2013-04-29 12:47     ` Julien Grall
2013-04-29 12:52     ` Ian Campbell
2013-04-29 12:45   ` Julien Grall
2013-04-29 16:13 ` Ian Campbell
2013-04-29 18:20   ` Julien Grall
2013-04-30  9:19     ` 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.