Lines Matching refs:node
30 const struct software_node *node; member
79 software_node_to_swnode(const struct software_node *node) in software_node_to_swnode() argument
84 if (!node) in software_node_to_swnode()
91 if (swnode->node == node) in software_node_to_swnode()
105 return swnode ? swnode->node : NULL; in to_software_node()
109 struct fwnode_handle *software_node_fwnode(const struct software_node *node) in software_node_fwnode() argument
111 struct swnode *swnode = software_node_to_swnode(node); in software_node_fwnode()
398 return !!property_entry_get(swnode->node->properties, propname); in software_node_property_present()
408 return property_entry_read_int_array(swnode->node->properties, propname, in software_node_read_int_array()
418 return property_entry_read_string_array(swnode->node->properties, in software_node_read_string_array()
518 prop = property_entry_get(swnode->node->properties, propname); in software_node_get_reference_args()
538 refnode = software_node_fwnode(ref->node); in software_node_get_reference_args()
543 error = property_entry_read_int_array(ref->node->properties, in software_node_get_reference_args()
578 if (!strncmp(to_swnode(port)->node->name, "port@", in swnode_graph_find_next_port()
632 prop = property_entry_get(swnode->node->properties, "remote-endpoint"); in software_node_graph_get_remote_endpoint()
638 return software_node_get(software_node_fwnode(ref[0].node)); in software_node_graph_get_remote_endpoint()
647 if (swnode && !strcmp(swnode->node->name, "ports")) in software_node_graph_get_port_parent()
658 const char *parent_name = swnode->parent->node->name; in software_node_graph_parse_endpoint()
720 if (parent == swnode->node->parent && swnode->node->name && in software_node_find_by_name()
721 !strcmp(name, swnode->node->name)) { in software_node_find_by_name()
730 return swnode ? swnode->node : NULL; in software_node_find_by_name()
737 struct software_node *node; in software_node_alloc() local
743 node = kzalloc(sizeof(*node), GFP_KERNEL); in software_node_alloc()
744 if (!node) { in software_node_alloc()
749 node->properties = props; in software_node_alloc()
751 return node; in software_node_alloc()
754 static void software_node_free(const struct software_node *node) in software_node_free() argument
756 property_entries_free(node->properties); in software_node_free()
757 kfree(node); in software_node_free()
772 software_node_free(swnode->node); in software_node_release()
784 swnode_register(const struct software_node *node, struct swnode *parent, in swnode_register() argument
802 swnode->node = node; in swnode_register()
811 if (node->name) in swnode_register()
814 "%s", node->name); in swnode_register()
900 int software_node_register(const struct software_node *node) in software_node_register() argument
902 struct swnode *parent = software_node_to_swnode(node->parent); in software_node_register()
904 if (software_node_to_swnode(node)) in software_node_register()
907 if (node->parent && !parent) in software_node_register()
910 return PTR_ERR_OR_ZERO(swnode_register(node, parent, 0)); in software_node_register()
918 void software_node_unregister(const struct software_node *node) in software_node_unregister() argument
922 swnode = software_node_to_swnode(node); in software_node_unregister()
933 struct software_node *node; in fwnode_create_software_node() local
943 node = software_node_alloc(properties); in fwnode_create_software_node()
944 if (IS_ERR(node)) in fwnode_create_software_node()
945 return ERR_CAST(node); in fwnode_create_software_node()
947 node->parent = p ? p->node : NULL; in fwnode_create_software_node()
949 fwnode = swnode_register(node, p, 1); in fwnode_create_software_node()
951 software_node_free(node); in fwnode_create_software_node()
977 int device_add_software_node(struct device *dev, const struct software_node *node) in device_add_software_node() argument
986 swnode = software_node_to_swnode(node); in device_add_software_node()
990 ret = software_node_register(node); in device_add_software_node()
994 swnode = software_node_to_swnode(node); in device_add_software_node()