fwnode_prope...ad_u16_array(9)
π NAME π
okay so bestie, welcome to fwnode_property_read_u16_array(9) β she's a Kernel API Manual girlie, and her whole job is literally: return a u16 array property of firmware node. that's it, that's the assignment β¨
πΈ SYNOPSIS πΈ
no cap, here's the whole signature, copy it exactly, don't get creative:
int fwnode_property_read_u16_array (const struct fwnode_handle *fwnode ,
const char *propname , u16 *val , size_t nval );
π ARGUMENTS π
fwnodeβ the Firmware node you're getting the property of π«Ά like, this is the one you're snooping onpropnameβ Name of the property, iykykvalβ The values are stored here β¨ orNULLto return the number of values (yes that's a whole thing, see below)nvalβ Size of thevalarray, so she knows how much room she's got π
π¦ DESCRIPTION π¦
So what she does is: read an array of u16 properties with propname from fwnode and store them to val if found. simple as that, iconic behaviour π
β¨ real talk though β it's recommended to callfwnode_property_count_u16instead of calling this function withvalequalsNULLandnvalequals0. like, that's the move, trust π
π₯ RETURN π₯
she returns a whole vibe-check of values, so pay attention bestie:
- number of values if
valwasNULLπ 0if the property was found (success) β slay, we love a zero π-EINVALif given arguments are not valid π-ENODATAif the property does not have a value π-EPROTOif the property is not an array of numbers π-EOVERFLOWif the size of the property is not as expected π«-ENXIOif no suitable firmware interface is present πΈ
π SEE ALSO π
she does NOT come alone, she brought the whole friend group. Kernel file ./drivers/base/property.c, plus:
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_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)
okay that's the whole page, you ate that π she lives in ./drivers/base, she's dated October 2026, and her version tag is literally fwnode_prope...ad_u16_array(9) β yes the truncation is part of the brand, don't come for her ππ bye bestie, go read some properties π§ββοΈ
π¦ 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