[U-Boot] [PATCH 0/7] libfdt: Update to resync with dtc/libfdt

Jerry Van Baren
2008-08-21T01:45:04Z

gvb.uboot at gmail.com wrote:
> The following changesets resynchronize u-boot with the master libfdt.
>
> Best regards,
> gvb

First results using aliases with David's libfdt improvements...

These are the aliases:

=> fdt p /aliases
aliases {
ethernet0 = "/qe at e0100000/ucc at 2000";
ethernet1 = "/qe at e0100000/ucc at 3000";
serial0 = "/soc8360 at e0000000/serial at 4500";
serial1 = "/soc8360 at e0000000/serial at 4600";
pci0 = "/pci at e0008500";
};

Dereference an alias by not using the '/' prefix per OF conventions:

=> fdt print ethernet0
ucc at 2000 {
device_type = "network";
compatible = "ucc_geth";
cell-index = <0x1>;
reg = <0x2000 0x200>;
interrupts = <0x20>;
interrupt-parent = <0x2>;
local-mac-address = [00 00 00 00 00 00];
rx-clock-name = "none";
tx-clock-name = "clk9";
phy-handle = <0x3>;
phy-connection-type = "rgmii-id";
pio-handle = <0x4>;
};

Whooo-heeee!

Dereference the ethernet0 alias and print a property:

=> fdt print ethernet0/phy-connection-type
libfdt fdt_path_offset() returned FDT_ERR_NOTFOUND

Doh doh doh! :-) Pretty close, though. I'll have to dig into this a
bit more to see why the alias expansion doesn't seem to work with
properties, check how it behaves with nested nodes (maybe).

I've rebased u-boot-fdt against u-boot and pushed David's (and other's)
libfdt improvements to u-boot-fdt. This is *NOT* ready to be merged
into the mainline, but I've made it available in case others want to
play with it.

Warning: I will be rebasing u-boot-fdt as Wolfgang merges more changes
into the mainline. I have not seen problems with rebasing, but YMMV.

Best regards,
gvb