mbox

[Xen-devel,v3,00/10] xen: arm: Refactor/improve early DT parsing and multiboot module support

Message ID 1405688876.491.10.camel@kazak.uk.xensource.com
State New
Headers show

Pull-request

git://xenbits.xen.org/people/ianc/xen.git multiboot-improvements-v3

Message

Ian Campbell July 18, 2014, 1:07 p.m. UTC
The following refactors the Xen early device tree stuff (i.e. which
walks the flattened tree directly) away from the regular device tree
stuff (i.e. the stuff which for the most part deals with the unflattened
tree). It also makes some changes to the Xen side multiboot support
which I think will make it easier to work with, both internally and for
e.g. bootloader integration.

Impact on UEFI/ACPI: Mostly I think the refactoring may be useful when
integrating the UEFI memory map and ACPI stuff (which wants early FDT,
but not unflattening etc) in to Xen.

Impact on multiboot: This could potentially simplify things on the grub
side by removing the need to guess default types for the modules in the
common case.

In the future I think it would be good to implement more probing on the
Xen side, e.g. to discover the XSM policy (similar to how it works on
x86 -- which walks all the modules looking for the policy magic nr).

Apart from rebasing the main change here is to patch 7 to correct the
lack of change to consider_modules which Julien pointed out last time.

Ian.

The following changes since commit f1870804e58565399cd770e93f62e7ce57cd5231:

  xen: arm: flush TLB after overwriting 1:1 mapping in boot page tables (2014-07-18 13:38:09 +0100)

are available in the git repository at:

  git://xenbits.xen.org/people/ianc/xen.git multiboot-improvements-v3

for you to fetch changes up to 212062ac8baaab4b1cdbd5c3c654e82bcc76e06e:

  xen: arm: Only lookup kernel bootmodule once while building dom0 dtb. (2014-07-18 14:06:40 +0100)

----------------------------------------------------------------
Ian Campbell (10):
      xen: arm: implement generic multiboot compatibility strings
      xen: arm: /chosen/module@N/bootargs bootprotcol node is not deprecated
      xen: arm: prefer typesafe max()/min() over MAX()/MIN()
      xen: arm: rename early_info structs
      xen: arm: move boot time fdt parsing into separate file.
      xen: arm: move device_tree_bootargs to bootfdt.c, renaming to boot_fdt_cmdline
      xen: arm: store per-boot module type instead of relying on index
      xen: arm: support bootmodule type detection by ordering
      xen: arm: update multiboot device tree bindings.
      xen: arm: Only lookup kernel bootmodule once while building dom0 dtb.

 docs/misc/arm/device-tree/booting.txt |   59 ++++-
 xen/arch/arm/Makefile                 |    1 +
 xen/arch/arm/bootfdt.c                |  370 +++++++++++++++++++++++++++++++
 xen/arch/arm/domain_build.c           |   23 +-
 xen/arch/arm/kernel.c                 |   15 +-
 xen/arch/arm/kernel.h                 |    4 +-
 xen/arch/arm/p2m.c                    |    4 +-
 xen/arch/arm/setup.c                  |  133 ++++++++---
 xen/common/device_tree.c              |  388 +--------------------------------
 xen/include/asm-arm/setup.h           |   53 +++++
 xen/include/xen/device_tree.h         |   44 ----
 xen/xsm/xsm_policy.c                  |   19 +-
 12 files changed, 623 insertions(+), 490 deletions(-)
 create mode 100644 xen/arch/arm/bootfdt.c

Comments

Ian Campbell July 21, 2014, 11:48 a.m. UTC | #1
On Fri, 2014-07-18 at 14:07 +0100, Ian Campbell wrote:

@linaro folks, the first 9 patches here are now in the staging tree. I
think at least Roy and Fu Wei were waiting to make use of these.

Ian.
Fu Wei Fu July 22, 2014, 3:20 a.m. UTC | #2
Cool, Great thanks, will try that branch right away :-)

On 07/21/2014 07:48 PM, Ian Campbell wrote:
> On Fri, 2014-07-18 at 14:07 +0100, Ian Campbell wrote:
> 
> @linaro folks, the first 9 patches here are now in the staging tree. I
> think at least Roy and Fu Wei were waiting to make use of these.
> 
> Ian.
>