[U-Boot] [PATCH 11/13] arm: zynq: dts: Add U-Boot device tree additions
Masahiro Yamada
yamada.masahiro at socionext.com
Mon Aug 31 12:01:27 CEST 2015
Simon,
2015-08-30 0:10 GMT+09:00 Simon Glass <sjg at chromium.org>:
> We need to mark some device tree nodes so that they are available before
> relocation. This enables driver model to find these automatically. In the
> case of SPL it ensures that these nodes will be retained in SPL.
>
> Signed-off-by: Simon Glass <sjg at chromium.org>
> ---
>
> arch/arm/dts/zynq-7000.dtsi | 1 +
> arch/arm/dts/zynq-microzed.dts | 5 +++++
> arch/arm/dts/zynq-picozed.dts | 5 +++++
> arch/arm/dts/zynq-zc702.dts | 1 +
> arch/arm/dts/zynq-zc706.dts | 1 +
> arch/arm/dts/zynq-zc770-xm010.dts | 1 +
> arch/arm/dts/zynq-zc770-xm011.dts | 1 +
> arch/arm/dts/zynq-zc770-xm012.dts | 1 +
> arch/arm/dts/zynq-zc770-xm013.dts | 1 +
> arch/arm/dts/zynq-zed.dts | 1 +
> arch/arm/dts/zynq-zybo.dts | 1 +
> 11 files changed, 19 insertions(+)
>
> diff --git a/arch/arm/dts/zynq-7000.dtsi b/arch/arm/dts/zynq-7000.dtsi
> index 0b62cb0..12614f2 100644
> --- a/arch/arm/dts/zynq-7000.dtsi
> +++ b/arch/arm/dts/zynq-7000.dtsi
> @@ -54,6 +54,7 @@
> };
>
> amba: amba {
> + u-boot,dm-pre-reloc;
> compatible = "simple-bus";
> #address-cells = <1>;
> #size-cells = <1>;
You are adding "u-boot,dm-pre-reloc" to a simple-bus node.
With this commit, all the children are bound before relocation.
simple_bus_post_bind() calls dm_scan_fdt_node() with false for 'pre_reloc_only'.
I guess, this implementation is a problem.
Currently, 'pre_reloc_only' can be specified for the first-level nodes.
For example, assume node structure like this:
amba {
uart0 {
};
pinctrl {
};
usb {
};
eth {
};
};
Please tell me:
how to bind "uart0" and "pinctrl", but not "usb", "eth"
before relocation.
Any idea to propagate 'pre_reloc_only' downwards?
--
Best Regards
Masahiro Yamada
More information about the U-Boot
mailing list