Lines Matching refs:pfdt
715 static int copy_properties(libxl__gc *gc, void *fdt, void *pfdt, in copy_properties() argument
721 for (propoff = fdt_first_property_offset(pfdt, nodeoff); in copy_properties()
723 propoff = fdt_next_property_offset(pfdt, propoff)) { in copy_properties()
725 if (!(prop = fdt_get_property_by_offset(pfdt, propoff, NULL))) { in copy_properties()
730 r = fdt_property(fdt, fdt_string(pfdt, nameoff), in copy_properties()
740 static int copy_node(libxl__gc *gc, void *fdt, void *pfdt, in copy_node() argument
745 r = fdt_begin_node(fdt, fdt_get_name(pfdt, nodeoff, NULL)); in copy_node()
748 r = copy_properties(gc, fdt, pfdt, nodeoff); in copy_node()
751 for (nodeoff = fdt_first_subnode(pfdt, nodeoff); in copy_node()
753 nodeoff = fdt_next_subnode(pfdt, nodeoff)) { in copy_node()
754 r = copy_node(gc, fdt, pfdt, nodeoff, depth + 1); in copy_node()
768 void *fdt, void *pfdt) in copy_node_by_path() argument
783 nodeoff = fdt_path_offset(pfdt, path); in copy_node_by_path()
787 if (strcmp(fdt_get_name(pfdt, nodeoff, NULL), name)) in copy_node_by_path()
790 r = copy_node(gc, fdt, pfdt, nodeoff, 0); in copy_node_by_path()
802 static int copy_partial_fdt(libxl__gc *gc, void *fdt, void *pfdt) in copy_partial_fdt() argument
806 r = copy_node_by_path(gc, "/passthrough", fdt, pfdt); in copy_partial_fdt()
812 r = copy_node_by_path(gc, "/aliases", fdt, pfdt); in copy_partial_fdt()
830 static int copy_partial_fdt(libxl__gc *gc, void *fdt, void *pfdt) in copy_partial_fdt() argument
848 void *pfdt = NULL; in libxl__prepare_dtb() local
873 &pfdt, &pfdt_size); in libxl__prepare_dtb()
879 libxl__ptr_add(gc, pfdt); in libxl__prepare_dtb()
881 if (check_partial_fdt(gc, pfdt, pfdt_size)) in libxl__prepare_dtb()
954 if (pfdt) in libxl__prepare_dtb()
955 FDT( copy_partial_fdt(gc, fdt, pfdt) ); in libxl__prepare_dtb()