fdt_set_name(9)
π fdt_set_name β a kernel API manual, but make it make sense
okay so this is fdt_set_name(9) from the Kernel API Manual, and yes bestie it's a real page, sit down, we're learning β¨
πΈ NAME
fdt_set_name β change the name of a given node, literally just renaming a node, that's the whole vibe π
β¨ SYNOPSIS
int fdt_set_name (void *fdt , int nodeoffset , const char *name );
π«Ά ARGUMENTS
fdtβ pointer to the device tree blob. it's the blob. the whole tree. your canvas πnodeoffsetβ structure block offset of a node. yes it's an offset, yes it's in the structure block, yes you need to get it right π¦nameβ the name to give the node. new name, new you, main character energy π
π DESCRIPTION
fdt_set_name replaces the name (including unit address, if any) of the given node with the given string. that's it, that's the function. new name, who dis πΈ
β οΈ NOTE: this function can't efficiently check if the new name is unique amongst the given node's siblings. results are undefined if this function is invoked with a name equal to one of the given node's siblings. so likeβ¦ bestieβ¦ please check your siblings yourself, because this function is NOT doing it for you π no cap, undefined results are not a vibe.
also β and this is the part that lowkey gets people β this function may insert or delete data from the blob, and will therefore change the offsets of some existing nodes. the way that a rename can just shuffle your whole offset situation π« highkey important, keep your other offsets in check.
π₯ RETURN
0β on success, we ate, periodt β¨-FDT_ERR_NOSPACEβ there is insufficient free space in the blob to contain the new name. not enough room, the blob said no π-FDT_ERR_BADOFFSETβnodeoffsetdid not point to anFDT_BEGIN_NODEtag. wrong tag, wrong door π-FDT_ERR_BADMAGIC,-FDT_ERR_BADVERSION,-FDT_ERR_BADSTATEβ standard meanings, iykyk π
π¦ SEE ALSO
okay this is the long part and no I'm not skipping any of it, the whole friend group is here π₯° the kernel file is ./scripts/dtc/libfdt/libfdt.h, and here's everyone:
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_move(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_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)
and that's the page!! π§ this one lives in ./scripts/dtc/libfdt and the version/date stamp on it is October 2026 β so yeah, it's giving future icon behavior π go rename a node bestie, just check your siblings first fr fr π
π¦ 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