[U-Boot-Users] How to define CONFIG_OF_FLAT_TREE?

Jerry Van Baren
2008-01-09T20:37:02Z

jie han wrote:
> What's different between CONFIG_OF_LIBFDT and CONFIG_OF_FLAT_TREE?

CONFIG_OF_FLAT_TREE was the original FDT interface code and had a
...uh... funky interface. David Gibson wrote a FDT library intended for
embedded use and CONFIG_OF_LIBFDT uses that. We've been switching
processors/boards over. I believe the switchover is mostly complete.

> My board is mpc8641d and u-boot version is 1.3.1.

No direct experience, but I believe that is good. Is this a custom
board or an eval board? If it is a custom board, you will need to
generate an appropriate *.dts file by customizing an example.

> I f I define CONFIG_OF_FLAT_TREE,and u-boot command bootm will call
> ft_setup() function, and how is it work?

With CONFIG_OF_LIBFDT, bootm calls the appropriate board and processor
setup routines fdt_chosen() and ft_board_setup().

Note that CONFIG_OF_LIBFDT adds the "fdt" command which is very helpful
for printing out out (and modifying) blob data.

> I found DTS files under kernel /arch/powerpc/sysDev directory,Could
> you give me some advice how to build it?

You need to build the device tree compiler (dtc). You can get the
source from Jon Loeliger's repository:
<http://jdl.com/git_repos/>

> Thanks,
> Jie

[snip]

gvb