fdt_size_cells(9)
πΈ fdt_size_cells(9) πΈ
okay bestie, welcome to the Kernel API Manual β we're talking about the lil' device-tree helper that retrieves the address range size for a bus represented in the tree. No cap, it's giving βtree gossipβ energy. π¦
π NAME π
fdt_size_cells β retrieve address range size for a bus represented in the tree. Bestie, that's the whole name: it retrieves the address range size for a bus represented in the tree. Iconic. Slay. π
β¨ SYNOPSIS β¨
int fdt_size_cells (const void *fdt , int nodeoffset );
π ARGUMENTS π
fdtβ pointer to the device tree blob. Yes, the blob. The tree blob. Your fave data structure's passport. π«Άnodeoffsetβ offset of the node to find the address range size for. Like, βwhich node are we checking, queen?β That's this. π
π¦ DESCRIPTION π¦
Okay so here's the vibe check: when the node has a valid #size-cells property, it returns its value. That's literally it, and it slays. It's not doing extra side quests. It's not starting drama. It reads the property, and if the property is valid, you get the value. Periodt. β¨
π₯ RETURN π₯
0 <= n < FDT_MAX_NCELLSβ on success π (yes, within this range, no cap)1β if the node has no#size-cellsproperty π-FDT_ERR_BADNCELLSβ if the node has a badly formatted or invalid#size-cellsproperty π-FDT_ERR_BADMAGIC,-FDT_ERR_BADVERSION,-FDT_ERR_BADSTATE,-FDT_ERR_BADSTRUCTURE,-FDT_ERR_TRUNCATEDβ standard meanings. Yep, the usual suspects, all with their standard meanings. π«‘
π SEE ALSO π
The whole fdt extended universe, lowkey linked up and ready for a group chat:
- 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_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)
mwah π β source/version: ./scripts/dtc/libfdt; date: October 2026. That's the cute little footer sign-off, bestie. Go forth and inspect those size cells, iykyk. π§π
π¦ 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