@@ -911,8 +911,9 @@ void software_node_unregister(const struct software_node *node)
EXPORT_SYMBOL_GPL(software_node_unregister);
struct fwnode_handle *
-fwnode_create_software_node(const struct property_entry *properties,
- const struct fwnode_handle *parent)
+fwnode_create_named_software_node(const struct property_entry *properties,
+ const struct fwnode_handle *parent,
+ const char *name)
{
struct fwnode_handle *fwnode;
struct software_node *node;
@@ -930,6 +931,7 @@ fwnode_create_software_node(const struct property_entry *properties,
return ERR_CAST(node);
node->parent = p ? p->node : NULL;
+ node->name = name;
fwnode = swnode_register(node, p, 1);
if (IS_ERR(fwnode))
@@ -937,6 +939,14 @@ fwnode_create_software_node(const struct property_entry *properties,
return fwnode;
}
+EXPORT_SYMBOL_GPL(fwnode_create_named_software_node);
+
+struct fwnode_handle *
+fwnode_create_software_node(const struct property_entry *properties,
+ const struct fwnode_handle *parent)
+{
+ return fwnode_create_named_software_node(properties, parent, NULL);
+}
EXPORT_SYMBOL_GPL(fwnode_create_software_node);
void fwnode_remove_software_node(struct fwnode_handle *fwnode)
@@ -495,6 +495,10 @@ void software_node_unregister(const struct software_node *node);
struct fwnode_handle *
fwnode_create_software_node(const struct property_entry *properties,
const struct fwnode_handle *parent);
+struct fwnode_handle *
+fwnode_create_named_software_node(const struct property_entry *properties,
+ const struct fwnode_handle *parent,
+ const char *name);
void fwnode_remove_software_node(struct fwnode_handle *fwnode);
int device_add_software_node(struct device *dev, const struct software_node *node);