Message ID | E1oBd1n-006UCq-JK@rmk-PC.armlinux.org.uk (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | net: dsa: always use phylink | expand |
On Wed, 13 Jul 2022 15:07:47 +0100 Russell King (Oracle) <rmk+kernel@armlinux.org.uk> wrote: > From: Vladimir Oltean <vladimir.oltean@nxp.com> > > Allow a named software node to be created, which is needed for software > nodes for a fixed-link specification for DSA. > > Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com> > Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk> Reviewed-by: Marek BehĂșn <kabel@kernel.org>
Hi Andy, Please can you let me know whether you happy with this patch? I would like to send this series to net-next today. Thanks. On Wed, Jul 13, 2022 at 03:07:47PM +0100, Russell King wrote: > From: Vladimir Oltean <vladimir.oltean@nxp.com> > > Allow a named software node to be created, which is needed for software > nodes for a fixed-link specification for DSA. > > Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com> > Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk> > --- > drivers/base/swnode.c | 14 ++++++++++++-- > include/linux/property.h | 4 ++++ > 2 files changed, 16 insertions(+), 2 deletions(-) > > diff --git a/drivers/base/swnode.c b/drivers/base/swnode.c > index 0a482212c7e8..b2ea08f0e898 100644 > --- a/drivers/base/swnode.c > +++ b/drivers/base/swnode.c > @@ -972,8 +972,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; > @@ -991,6 +992,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)) > @@ -998,6 +1000,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) > diff --git a/include/linux/property.h b/include/linux/property.h > index a5b429d623f6..23330ae2b1fa 100644 > --- a/include/linux/property.h > +++ b/include/linux/property.h > @@ -492,6 +492,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); > -- > 2.30.2 > >
diff --git a/drivers/base/swnode.c b/drivers/base/swnode.c index 0a482212c7e8..b2ea08f0e898 100644 --- a/drivers/base/swnode.c +++ b/drivers/base/swnode.c @@ -972,8 +972,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; @@ -991,6 +992,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)) @@ -998,6 +1000,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) diff --git a/include/linux/property.h b/include/linux/property.h index a5b429d623f6..23330ae2b1fa 100644 --- a/include/linux/property.h +++ b/include/linux/property.h @@ -492,6 +492,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);