of_get_parent(9)
πΈ of_get_parent β Kernel API Manual πΈ
okay so welcome to of_get_parent(9), bestie!! this is the Kernel API Manual entry for it and it's literally the "who's your mom" function of the device tree world π
we're talking drivers/of territory, iykyk.
β¨ NAME β¨
of_get_parent β get a node's parent if any π«Ά
like, if this node has a parent? you're getting it. if not? no parent, no vibes, that's just how it is.
π¦ SYNOPSIS π¦
struct device_node * of_get_parent (const struct device_node *node );
that's it. one function, one argument, returns a struct device_node *. main character energy fr fr β¨
π ARGUMENTS π
- node β the node you want the parent of π (original wording: "Node to get parent")
π RETURN π
so you get back a node pointer, and the refcount is incremented β meaning you own a reference now, bestie, and you are responsible for it π call of_node_put on it when you're done. no leaking refs in this house, periodt π
ngl this is the part everyone forgets. don't be everyone. of_node_put it. π«Ά
π SEE ALSO π
the kernel file is ./drivers/of/base.c and here's the whole squad of related functions β yes, all of them, I'm not skipping a single one π§:
of_find_all_nodes(9)__of_device_is_compatible(9)of_machine_compatible_match(9)of_machine_read_compatible(9)of_machine_read_model(9)of_machine_get_match(9)of_machine_get_match_data(9)__of_device_is_available(9)__of_device_is_reserved(9)of_device_is_available(9)__of_device_is_fail(9)of_device_is_big_endian(9)of_get_next_parent(9)of_get_next_child(9)of_get_next_child_with_prefix(9)of_get_next_available_child(9)of_get_next_reserved_child(9)of_get_next_cpu_node(9)of_get_compatible_child(9)of_get_child_by_name(9)of_get_available_child_by_name(9)of_find_node_opts_by_path(9)of_find_node_by_name(9)of_find_node_by_type(9)of_find_compatible_node(9)of_find_node_with_property(9)of_match_node(9)of_find_matching_node_and_match(9)of_alias_from_compatible(9)of_find_node_by_phandle(9)of_parse_phandle_with_args_map(9)of_count_phandle_with_args(9)__of_add_property(9)of_add_property(9)of_remove_property(9)of_alias_scan(9)of_alias_get_id(9)of_alias_get_highest_id(9)of_console_check(9)of_find_next_cache_node(9)of_find_last_cache_level(9)of_map_id(9)of_map_iommu_id(9)of_map_msi_id(9)
and that's the whole page, bestie ππ sourced from ./drivers/of, dated October 2026 β go forth, grab your parents, and remember to of_node_put ππ
β¨
π¦ 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