Loading arch/sparc/kernel/prom_32.c +15 −5 Original line number Diff line number Diff line Loading @@ -198,23 +198,33 @@ static char * __init build_full_name(struct device_node *dp) static struct device_node * __init build_tree(struct device_node *parent, phandle node, struct device_node ***nextp) { struct device_node *ret = NULL, *prev_sibling = NULL; struct device_node *dp; while (1) { dp = create_node(node, parent); if (dp) { if (!dp) break; if (prev_sibling) prev_sibling->sibling = dp; if (!ret) ret = dp; prev_sibling = dp; *(*nextp) = dp; *nextp = &dp->allnext; dp->parent = parent; dp->path_component_name = build_path_component(dp); dp->full_name = build_full_name(dp); dp->child = build_tree(dp, prom_getchild(node), nextp); dp->sibling = build_tree(parent, prom_getsibling(node), nextp); node = prom_getsibling(node); } return dp; return ret; } struct device_node *of_console_device; Loading Loading
arch/sparc/kernel/prom_32.c +15 −5 Original line number Diff line number Diff line Loading @@ -198,23 +198,33 @@ static char * __init build_full_name(struct device_node *dp) static struct device_node * __init build_tree(struct device_node *parent, phandle node, struct device_node ***nextp) { struct device_node *ret = NULL, *prev_sibling = NULL; struct device_node *dp; while (1) { dp = create_node(node, parent); if (dp) { if (!dp) break; if (prev_sibling) prev_sibling->sibling = dp; if (!ret) ret = dp; prev_sibling = dp; *(*nextp) = dp; *nextp = &dp->allnext; dp->parent = parent; dp->path_component_name = build_path_component(dp); dp->full_name = build_full_name(dp); dp->child = build_tree(dp, prom_getchild(node), nextp); dp->sibling = build_tree(parent, prom_getsibling(node), nextp); node = prom_getsibling(node); } return dp; return ret; } struct device_node *of_console_device; Loading