On Monday 06 July 2015 18:20:35 Pali Rohár wrote: > > > "/chosen/linux,atags" > > > > This one. ATAGs are a Linux data struct. > > > > Rob > > Ok, and how read that property "/chosen/linux,atags" in function > setup_machine_fdt() from file arch/arm/kernel/devtree.c ? > > of_get_flat_dt_prop() cannot be used unless somebody get me offset to > node "/chosen"... > > Any idea? >
fdt_path_offset() from libfdt.h seems to work...
Is solution like this one acceptable?
#include <linux/libfdt.h>
#include "atags.h"
... setup_machine_fdt(unsigned int dt_phys) {
dt_virt = phys_to_virt(dt_phys);
dt_chosen = fdt_path_offset(dt_virt, "/chosen");
atags = of_get_flat_dt_prop(dt_chosen, "linux,atags", NULL);
save_atags(atags);
}
(this is without checks for errors)
--
Pali Rohár
[email protected]
signature.asc
Description: This is a digitally signed message part.
