fdt_get_path(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ NAME ✨

okay so bestie, welcome to fdt_get_path(9) from the Kernel API Manual β€” the page that determines the full path of a node. that’s the whole assignment. you point at a node, it gives you the path. slay. πŸŽ€

πŸŽ€ SYNOPSIS πŸŽ€

int fdt_get_path (const void *fdt , int nodeoffset , char *buf , int buflen );

🌸 ARGUMENTS 🌸

  • fdt β€” pointer to the device tree blob. your whole tree situation lives here. 🌳
  • nodeoffset β€” offset of the node whose path to find. this is the node you’re obsessed with. πŸ’…
  • buf β€” character buffer to contain the returned path (will be overwritten). heads up, it gets overwritten, no cap. 😭
  • buflen β€” size of the character buffer at buf. know your limits bestie. πŸ“

πŸ’– DESCRIPTION πŸ’–

fdt_get_path computes the full path of the node at offset nodeoffset, and records that path in the buffer at buf. literally its whole job. ✨

πŸ’€ NOTE πŸ’€

This function is expensive, as it must scan the device tree structure from the start to nodeoffset. it’s giving β€œwalk the whole timeline to find one moment” energy, so don’t spam it for no reason. 😭

🌈 RETURN 🌈

  • 0 β€” on success, buf contains the absolute path of the node at nodeoffset, as a NUL-terminated string. iconic. βœ…
  • -FDT_ERR_BADOFFSET β€” nodeoffset does not refer to a BEGIN_NODE tag. wrong turn bestie. πŸ™ˆ
  • -FDT_ERR_NOSPACE β€” the path of the given node is longer than (bufsize-1) characters and will not fit in the given buffer. too big for the bag. πŸ’€
  • -FDT_ERR_BADMAGIC, -FDT_ERR_BADVERSION, -FDT_ERR_BADSTATE, -FDT_ERR_BADSTRUCTURE β€” standard meanings. the usual suspects. πŸ•΅οΈ

πŸ¦‹ SEE ALSO πŸ¦‹

Kernel file ./scripts/dtc/libfdt/libfdt.h, plus the whole friend group: 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_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).


big kiss and goodbye bestie 🫢: this page is from source/version ./scripts/dtc/libfdt, dated October 2026, and it’s the fdt_get_path(9) manual page. periodt. πŸ’…βœ¨

πŸ“¦ where this page comes from