fdt_add_reservemap_entry(9)
π fdt_add_reservemap_entry(9) β Kernel API Manual
okay so real talk, bestie: this is a page from the Kernel API Manual and it's about one tiny little function that does one tiny little thing, and honestly? she's iconic for it. no cap.
β¨ NAME β¨
fdt_add_reservemap_entry β add an entry to the memory reserve map π
πΈ SYNOPSIS πΈ
int fdt_add_reservemap_entry (void *fdt , uint64_t addr , uint64_t size
);
like, yes, the ); is on its own line, that's just how she is, don't come for her π
π¦ ARGUMENTS π¦
fdtβ a pointer to the device tree blob. your main character. the blob herself πaddrβ the start address of the reserve map entry, fr frsizeβ how big the reserved region is
π DESCRIPTION π
so fdt_add_reservemap_entry adds a memory reserve map entry to the device tree blob during the sequential write process. it's giving very "one brick at a time, in order, no skipping ahead" energy π§±
and here's the part where you gotta pay attention, bestie β this function can only be called after fdt_create and before fdt_finish_reservemap. that's it. that's the window. miss it and it's not happening π
think of it like a group chat that only lets you post between two specific messages. you post outside that window? blocked. no drama, just mechanics π«Ά
π₯ RETURN π₯
0β on success π slay, we ate-FDT_ERR_NOSPACEβ if there is insufficient space in the blob π the blob said "no room, I'm full"-FDT_ERR_BADSTATEβ if not in the correct sequential write state π you jumped the queue, and the queue said absolutely not
π SEE ALSO π
the kernel file lives at ./scripts/dtc/libfdt/libfdt.h and she is surrounded by so many friends. literally the whole extended fdt family reunion, iykyk:
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_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β¦ ninety-something cross-references. she said "you WILL know my whole family." obsessed with the thoroughness honestly π
that's the whole page, bestie β source is ./scripts/dtc/libfdt, dated October 2026, and the header/footer vibe is fdt_add_reservemap_entry(9) all the way down π¦ mwah, go add your reserve map entry responsibly β¨
π¦ 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