static struct device_node * __init of_pdt_create_node(phandle node, struct device_node *parent) { struct device_node *dp; if (!node) return NULL; dp = prom_early_alloc(sizeof(*dp)); of_node_init(dp); of_pdt_incr_unique_id(dp); dp->parent = parent; dp->name = of_pdt_get_one_property(node, "name"); dp->type = of_pdt_get_one_property(node, "device_type"); dp->phandle = node; dp->properties = of_pdt_build_prop_list(node); irq_trans_init(dp); return dp; }
static struct device_node * __init prom_create_node(phandle node, struct device_node *parent) { struct device_node *dp; if (!node) return NULL; dp = prom_early_alloc(sizeof(*dp)); dp->unique_id = prom_unique_id++; dp->parent = parent; kref_init(&dp->kref); dp->name = get_one_property(node, "name"); dp->type = get_one_property(node, "device_type"); dp->phandle = node; dp->properties = build_prop_list(node); irq_trans_init(dp); return dp; }