[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH 04/12] arm: parse modules from DT during early boot.



On Tue, 13 Nov 2012, Ian Campbell wrote:
> The bootloader should populate /chosen/module@<N>/ for each module it
> wishes to pass to the hypervisor. The content of these nodes is
> described in docs/misc/arm/device-tree/booting.txt
> 
> The hypervisor allows for 2 modules (@1==kernel and @2==initrd).
> Currently we don't do anything with them.
> 
> Signed-off-by: Ian Campbell <ian.campbell@xxxxxxxxxx>
> ---
> v2: Reserve the zeroeth module for Xen itself (not used yet)
>     Use a more idiomatic DT layout
>     Document said layout
> ---
>  docs/misc/arm/device-tree/booting.txt |   27 ++++++++++++
>  xen/common/device_tree.c              |   75 
> +++++++++++++++++++++++++++++++++
>  xen/include/xen/device_tree.h         |   14 ++++++
>  3 files changed, 116 insertions(+), 0 deletions(-)
>  create mode 100644 docs/misc/arm/device-tree/booting.txt
> 
> diff --git a/docs/misc/arm/device-tree/booting.txt 
> b/docs/misc/arm/device-tree/booting.txt
> new file mode 100644
> index 0000000..2609450
> --- /dev/null
> +++ b/docs/misc/arm/device-tree/booting.txt
> @@ -0,0 +1,27 @@
> +Xen is passed the dom0 kernel and initrd via a reference in the /chosen
> +node of the device tree.
> +
> +Each node has the form /chosen/module@<N> and contains the following
> +properties:

Wouldn't it be better to move all the modules under /chosen/modules or
/chosen/multiboot?


> +- compatible
> +
> +     Must be "xen,multiboot-module"
> +
> +- start
> +
> +     Physical address of the start of this module
> +
> +- end
> +
> +     Physical address of the end of this module

start and end could be encoded as one reg


> +- bootargs (optional)
> +
> +     Command line associated with this module
> +
> +The following modules are understood
> +
> +- 1 -- the domain 0 kernel
> +- 2 -- the domain 0 ramdisk

It would be nice if we could express this via the compatible property
instead.
So the linux kernel could be compatible "linux,kernel" and the initrd
"linux,initrd", in addition to (or instead of) "xen,multiboot-module".
Given that they go from the most specific to the less specific, it would
become:

compatible = "linux,kernel", "xen,multiboot-module";

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.