fdt_move(9)
π fdt_move(9) β from the Kernel API Manual β¨
okay bestie, welcome to fdt_move(9), straight out of the Kernel API Manual. this one is short and sweet and honestly kind of a slay π
πΈ NAME πΈ
fdt_move β move a device tree around in memory π¦
β¨ SYNOPSIS β¨
int fdt_move (const void *fdt , void *buf , int bufsize );
π ARGUMENTS π
fdtβ pointer to the device tree you wanna move, bestie πbufβ pointer to the memory where the device tree is gonna live after the move π«Άbufsizeβ how big that memory space atbufactually is, no cap π
π DESCRIPTION π
so like, fdt_move relocates the device tree blob that's sitting at fdt over to the buffer at buf β assuming it can, of course β where the buffer is bufsize big π
and here's the iconic part: the buffer may overlap with the existing device tree blob at fdt. literally overlapping is fine, she doesn't care π so because of that:
fdt_move(fdt, fdt, fdt_totalsize(fdt))
should always succeed. always always. periodt β¨
π₯ RETURN π₯
0β success, we ate π-FDT_ERR_NOSPACEβbufsizeis not enough to contain the device tree, she's too big for the venue π-FDT_ERR_BADMAGICβ standard meaning π-FDT_ERR_BADVERSIONβ standard meaning π-FDT_ERR_BADSTATEβ standard meaning π
ngl "standard meanings" is doing a lot of heavy lifting there but that's what the page says, so that's what you get π
π¦ SEE ALSO π¦
in the kernel file ./scripts/dtc/libfdt/libfdt.h β and okay this list is long, so buckle up bestie, we're going through all of it πΈ: fdt_offset_ptr(9), fdt_next_tag(9), fdt_first_subnode(9), fdt_next_subnode(9), fdt_for_each_subnode(9), fdt_header_size(9), fdt_header_size_(9), fdt_check_header(9), fdt_check_full(9), fdt_get_string(9), fdt_string(9), fdt_find_max_phandle(9), fdt_get_max_phandle(9), fdt_generate_phandle(9), fdt_num_mem_rsv(9), fdt_get_mem_rsv(9), fdt_subnode_offset_namelen(9), fdt_subnode_offset(9), fdt_path_offset_namelen(9), fdt_path_offset(9), fdt_get_name(9), fdt_first_property_offset(9), fdt_next_property_offset(9), fdt_for_each_property_offset(9), fdt_get_property_by_offset(9), fdt_get_property_namelen(9), fdt_get_property(9), fdt_getprop_by_offset(9), fdt_getprop_namelen(9), fdt_getprop(9), fdt_get_phandle(9), fdt_get_alias_namelen(9), fdt_get_alias(9), fdt_get_symbol_namelen(9), fdt_get_symbol(9), fdt_get_path(9), fdt_supernode_atdepth_offset(9), fdt_node_depth(9), fdt_parent_offset(9), fdt_node_offset_by_prop_value(9), fdt_node_offset_by_phandle(9), fdt_node_check_compatible(9), fdt_node_offset_by_compatible(9), fdt_stringlist_contains(9), fdt_stringlist_count(9), fdt_stringlist_search(9), fdt_stringlist_get(9), FDT_MAX_NCELLS(9), fdt_address_cells(9), fdt_size_cells(9), fdt_setprop_inplace_namelen_partial(9), fdt_setprop_inplace(9), fdt_setprop_inplace_u32(9), fdt_setprop_inplace_u64(9), fdt_setprop_inplace_cell(9), fdt_nop_property(9), fdt_nop_node(9), fdt_create_with_flags(9), fdt_create(9), fdt_resize(9), fdt_add_reservemap_entry(9), fdt_finish_reservemap(9), fdt_begin_node(9), fdt_property(9), fdt_property_placeholder(9), fdt_end_node(9), fdt_finish(9), fdt_create_empty_tree(9), fdt_open_into(9), fdt_pack(9), fdt_add_mem_rsv(9), fdt_del_mem_rsv(9), fdt_set_name(9), fdt_setprop_namelen(9), fdt_setprop(9), fdt_setprop_placeholder_namelen(9), fdt_setprop_placeholder(9), fdt_setprop_u32(9), fdt_setprop_u64(9), fdt_setprop_cell(9), fdt_setprop_string(9), fdt_setprop_namelen_string(9), fdt_setprop_empty(9), fdt_appendprop(9), fdt_appendprop_u32(9), fdt_appendprop_u64(9), fdt_appendprop_cell(9), fdt_appendprop_string(9), fdt_appendprop_addrrange(9), fdt_delprop(9), fdt_add_subnode_namelen(9), fdt_add_subnode(9), fdt_del_node(9), fdt_overlay_apply(9), fdt_overlay_target_offset(9), fdt_strerror(9)
like I said. long list. but every single one is there, you're welcome π«Άπ
and that's the whole page, bestie β brought to you by ./scripts/dtc/libfdt, dated October 2026 π mwah, go move some device trees π
β¨
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms