From ed95d7450dcbfeb45ffc9d39b1747aee82b49a51 Mon Sep 17 00:00:00 2001 From: David Gibson Date: Thu, 7 Aug 2008 12:24:17 +1000 Subject: powerpc: Update in-kernel dtc and libfdt to version 1.2.0 Some time ago, a copies of the upstream dtc and libfdt sources were included in the kernel tree to avoid having these as external dependencies for building the kernel. Since then development on the upstream dtc and libfdt has continued. This updates the in-kernel versions to match the recently released upstream dtc version 1.2.0. This includes a number of bugfixes, many cleanups and a few new features. Signed-off-by: David Gibson Signed-off-by: Paul Mackerras --- arch/powerpc/boot/dtc-src/livetree.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'arch/powerpc/boot/dtc-src/livetree.c') diff --git a/arch/powerpc/boot/dtc-src/livetree.c b/arch/powerpc/boot/dtc-src/livetree.c index 6ba0846b431..0ca3de550b3 100644 --- a/arch/powerpc/boot/dtc-src/livetree.c +++ b/arch/powerpc/boot/dtc-src/livetree.c @@ -115,6 +115,7 @@ void add_child(struct node *parent, struct node *child) struct node **p; child->next_sibling = NULL; + child->parent = parent; p = &parent->children; while (*p) @@ -123,7 +124,8 @@ void add_child(struct node *parent, struct node *child) *p = child; } -struct reserve_info *build_reserve_entry(u64 address, u64 size, char *label) +struct reserve_info *build_reserve_entry(uint64_t address, uint64_t size, + char *label) { struct reserve_info *new = xmalloc(sizeof(*new)); @@ -165,13 +167,14 @@ struct reserve_info *add_reserve_entry(struct reserve_info *list, } struct boot_info *build_boot_info(struct reserve_info *reservelist, - struct node *tree) + struct node *tree, uint32_t boot_cpuid_phys) { struct boot_info *bi; bi = xmalloc(sizeof(*bi)); bi->reservelist = reservelist; bi->dt = tree; + bi->boot_cpuid_phys = boot_cpuid_phys; return bi; } @@ -202,7 +205,7 @@ struct property *get_property(struct node *node, const char *propname) cell_t propval_cell(struct property *prop) { assert(prop->val.len == sizeof(cell_t)); - return be32_to_cpu(*((cell_t *)prop->val.val)); + return fdt32_to_cpu(*((cell_t *)prop->val.val)); } struct node *get_subnode(struct node *node, const char *nodename) -- cgit v1.2.3-70-g09d2