fwnode_graph..._port_parent(9)
π fwnode_graph_get_port_parent β the Kernel API Manual, bestie edition β¨
Okay so you're in the <pink>Kernel API Manual</pink>, land of the <purple>fwnode_graph..._port_parent(9)</purple> page, and honestly? This one is short and sweet. Let's get into it π
πΈ NAME πΈ
fwnode_graph_get_port_parent β this one hands you back the device fwnode of a port endpoint. That's the vibe π«
β¨ SYNOPSIS β¨
struct fwnode_handle * fwnode_graph_get_port_parent (const struct fwnode_handle *endpoint );
Like, literally that. Signature stays exactly like that, no cap π«Ά
π¦ ARGUMENTS π¦
endpointβ the endpoint firmware node of the port. That's the thing you're passing in, bestie π
π§ DESCRIPTION π§
So the one thing you cannot forget here: the caller is responsible for calling fwnode_handle_put on the returned fwnode pointer. That's on you, main character. Nobody's gonna clean that up for you π Own your refcounts, periodt.
π RETURN π
It gives you back the firmware node of the device the endpoint belongs to. Iconic. That's the whole return value π (and remember the fwnode_handle_put thing from up there, fr fr)
β SEE ALSO β
Kernel file: ./drivers/base/property.c
And now the whole crew, because they all come as a package deal π
device_property_present(9)fwnode_property_present(9)device_property_read_bool(9)fwnode_property_read_bool(9)device_property_read_u8_array(9)device_property_read_u16_array(9)device_property_read_u32_array(9)device_property_read_u64_array(9)device_property_read_string_array(9)device_property_read_string(9)device_property_match_string(9)fwnode_property_read_u8_array(9)fwnode_property_read_u16_array(9)fwnode_property_read_u32_array(9)fwnode_property_read_u64_array(9)fwnode_property_read_string_array(9)fwnode_property_read_string(9)fwnode_property_match_string(9)fwnode_property_match_property_string(9)fwnode_property_get_reference_args(9)fwnode_find_reference(9)fwnode_get_name(9)fwnode_get_name_prefix(9)fwnode_name_eq(9)fwnode_get_parent(9)fwnode_get_next_parent(9)fwnode_count_parents(9)fwnode_get_nth_parent(9)fwnode_get_next_child_node(9)fwnode_get_next_available_child_node(9)device_get_next_child_node(9)fwnode_get_named_child_node(9)device_get_named_child_node(9)fwnode_handle_get(9)fwnode_device_is_available(9)fwnode_get_child_node_count(9)fwnode_get_named_child_node_count(9)fwnode_get_phy_mode(9)device_get_phy_mode(9)fwnode_iomap(9)fwnode_irq_get(9)fwnode_irq_get_byname(9)fwnode_graph_get_next_endpoint(9)fwnode_graph_get_remote_port_parent(9)fwnode_graph_get_remote_port(9)fwnode_graph_get_remote_endpoint(9)fwnode_graph_get_endpoint_by_id(9)fwnode_graph_get_endpoint_count(9)fwnode_graph_parse_endpoint(9)fwnode_connection_find_match(9)fwnode_connection_find_matches(9)
Quick vibe check: every single one of those (9) references is legit, don't skip 'em β that's your reading list for the day πβ¨
And that's the page, bestie! π«Ά This little beauty lives in ./drivers/base, dated October 2026, filed under fwnode_graph..._port_parent(9). Go forth, grab your port parent, and please remember the fwnode_handle_put. Mwah π
π¦ 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