aboutsummaryrefslogtreecommitdiff
path: root/common
diff options
context:
space:
mode:
authorPantelis Antoniou <pantelis.antoniou@konsulko.com>2017-09-04 23:12:13 +0300
committerSimon Glass <sjg@chromium.org>2017-09-15 05:27:48 -0600
commitf00c36a01e774dea1ed2a1171da9e372610ee8eb (patch)
tree0e41dbc9089430a7b3545979c8243f3edc3a651a /common
parent81ecc5d92badfcf1415a6052b5896a62271a94dc (diff)
downloadu-boot-f00c36a01e774dea1ed2a1171da9e372610ee8eb.zip
u-boot-f00c36a01e774dea1ed2a1171da9e372610ee8eb.tar.gz
u-boot-f00c36a01e774dea1ed2a1171da9e372610ee8eb.tar.bz2
fdt: Allow stacked overlays phandle references
This patch enables an overlay to refer to a previous overlay's labels by performing a merge of symbol information at application time. In a nutshell it allows an overlay to refer to a symbol that a previous overlay has defined. It requires both the base and all the overlays to be compiled with the -@ command line switch so that symbol information is included. base.dts -------- /dts-v1/; / { foo: foonode { foo-property; }; }; $ dtc -@ -I dts -O dtb -o base.dtb base.dts bar.dts ------- /dts-v1/; /plugin/; / { fragment@1 { target = <&foo>; __overlay__ { overlay-1-property; bar: barnode { bar-property; }; }; }; }; $ dtc -@ -I dts -O dtb -o bar.dtb bar.dts baz.dts ------- /dts-v1/; /plugin/; / { fragment@1 { target = <&bar>; __overlay__ { overlay-2-property; baz: baznode { baz-property; }; }; }; }; $ dtc -@ -I dts -O dtb -o baz.dtb baz.dts Applying the overlays: $ fdtoverlay -i base.dtb -o target.dtb bar.dtb baz.dtb Dumping: $ fdtdump target.dtb / { foonode { overlay-1-property; foo-property; linux,phandle = <0x00000001>; phandle = <0x00000001>; barnode { overlay-2-property; phandle = <0x00000002>; linux,phandle = <0x00000002>; bar-property; baznode { phandle = <0x00000003>; linux,phandle = <0x00000003>; baz-property; }; }; }; __symbols__ { baz = "/foonode/barnode/baznode"; bar = "/foonode/barnode"; foo = "/foonode"; }; }; Signed-off-by: Pantelis Antoniou <pantelis.antoniou@konsulko.com> Signed-off-by: David Gibson <david@gibson.dropbear.id.au> Acked-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'common')
0 files changed, 0 insertions, 0 deletions