fwnode_property_present(9)
๐ fwnode_property_present(9) ๐
okay bestie, welcome to the Kernel API Manual โ yes this is a real manpage for real kernel code, and yes it's lowkey one of the most useful little gremlins in drivers/base. Let's get into it โจ
๐ธ NAME ๐ธ
fwnode_property_present โ check if a property of a firmware node is present
Like, is the thing in the thing? That's the whole gig. No cap ๐ซถ
โจ SYNOPSIS โจ
bool fwnode_property_present (const struct fwnode_handle *fwnode , const
char *propname );
Two args, one bool coming back at you. That's it. Iconic behaviour, honestly ๐
๐ ARGUMENTS ๐
fwnodeโ the firmware node whose property you wanna check ๐ literally the thing you're snooping onpropnameโ name of the property, aka what you're looking for inside it
๐ฆ DESCRIPTION ๐ฆ
So here's the tea: this function checks if the property propname is present in the firmware node description. ๐
And ngl, this is the unambiguous way to check that a given property is present in the firmware node description. Like, if you want the answer without any "well technicallyโฆ" energy, this is her. Main character energy fr fr ๐
โญ RETURN โญ
trueif the propertypropnameis present ๐ slay- otherwise, it returns
false๐ญ (the property is simply not there, it's giving absent)
๐ฅ SEE ALSO ๐ฅ
Kernel file ./drivers/base/property.c โ plus the whole extended friend group:
device_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_port_parent(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)
ikyk what a reading list that is ๐ฎโ๐จ
๐ real talk: if you're here checking a property, you're already in the right place. This is the unambiguous check. Don't go guessing, bestie.
that's the whole page, so proud of you for reading to the end ๐ง
later, legend โ this gem came from ./drivers/base in the Kernel API Manual, dated October 2026 ๐๐
๐ฆ 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