fdt_setprop_namelen(9)
π fdt_setprop_namelen π
okay so bestie, this one's from the Kernel API Manual β fdt_setprop_namelen(9) β and it's genuinely iconic for anyone messing with device tree blobs. pull up a chair π
β¨ NAME β¨
fdt_setprop_namelen β create or change a property, but you get to say exactly how long the name is π
πΈ SYNOPSIS πΈ
int fdt_setprop_namelen (void *fdt , int nodeoffset , const char *name ,
int namelen , const void *val , int len );
π¦ ARGUMENTS π¦
fdtβ pointer to the device tree blob. like, the whole tree, bestie, that's the thing πnodeoffsetβ offset of the node whose property you wanna changenameβ name of the property you're changingnamelenβ length of the name. yes, you have to tell it. no, it won't guess π«Άvalβ pointer to the data you want the property value set tolenβ length of the property value
π§ DESCRIPTION π§
okay so fdt_setprop_namelen sets the value of the named property in the given node to the given value and length, and β this is the cute part β it creates the property if it doesn't already exist. slay π
β¨
β οΈ heads up bestie: this function may insert or delete data from the blob, which means it will change the offsets of some existing nodes. so any offsets you were holding onto? yeah, vibe check failed, they might be stale now π
π₯ RETURN π₯
0β on success, we love to see it π-FDT_ERR_NOSPACEβ there's insufficient free space in the blob to contain the new property value. too full, no room, tragic π-FDT_ERR_BADOFFSETβnodeoffsetdid not point toFDT_BEGIN_NODEtag-FDT_ERR_BADLAYOUT,-FDT_ERR_BADMAGIC,-FDT_ERR_BADVERSION,-FDT_ERR_BADSTATE,-FDT_ERR_BADSTRUCTURE,-FDT_ERR_BADLAYOUT,-FDT_ERR_TRUNCATEDβ standard meanings π
(yes, -FDT_ERR_BADLAYOUT is in there twice. not me fixing it, that's literally what it says π)
π SEE ALSO π
Kernel file ./scripts/dtc/libfdt/libfdt.h
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_set_name(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, that's a whole friend group right there π«Ά
mwah π this page lives in ./scripts/dtc/libfdt, dated October 2026 β go read it, ily, bye πβ¨
π¦ 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