Commit 0171a1d2 authored by Rasmus Villemoes's avatar Rasmus Villemoes Committed by Jakub Kicinski

net: dsa: refactor name assignment for user ports

The following two patches each have a (small) chance of causing
regressions for userspace and will in that case of course need to be
reverted.

In order to prepare for that and make those two patches independent
and individually revertable, refactor the code which sets the names
for user ports by moving the "fall back to eth%d if no label is given
in device tree" to dsa_slave_create().

No functional change (at least none intended).
Signed-off-by: default avatarRasmus Villemoes <linux@rasmusvillemoes.dk>
Reviewed-by: default avatarAndrew Lunn <andrew@lunn.ch>
Reviewed-by: default avatarFlorian Fainelli <f.faineli@gmail.com>
Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
parent f20a0a05
...@@ -1365,9 +1365,6 @@ static struct dsa_port *dsa_port_touch(struct dsa_switch *ds, int index) ...@@ -1365,9 +1365,6 @@ static struct dsa_port *dsa_port_touch(struct dsa_switch *ds, int index)
static int dsa_port_parse_user(struct dsa_port *dp, const char *name) static int dsa_port_parse_user(struct dsa_port *dp, const char *name)
{ {
if (!name)
name = "eth%d";
dp->type = DSA_PORT_TYPE_USER; dp->type = DSA_PORT_TYPE_USER;
dp->name = name; dp->name = name;
......
...@@ -2366,16 +2366,25 @@ int dsa_slave_create(struct dsa_port *port) ...@@ -2366,16 +2366,25 @@ int dsa_slave_create(struct dsa_port *port)
{ {
struct net_device *master = dsa_port_to_master(port); struct net_device *master = dsa_port_to_master(port);
struct dsa_switch *ds = port->ds; struct dsa_switch *ds = port->ds;
const char *name = port->name;
struct net_device *slave_dev; struct net_device *slave_dev;
struct dsa_slave_priv *p; struct dsa_slave_priv *p;
const char *name;
int assign_type;
int ret; int ret;
if (!ds->num_tx_queues) if (!ds->num_tx_queues)
ds->num_tx_queues = 1; ds->num_tx_queues = 1;
if (port->name) {
name = port->name;
assign_type = NET_NAME_UNKNOWN;
} else {
name = "eth%d";
assign_type = NET_NAME_UNKNOWN;
}
slave_dev = alloc_netdev_mqs(sizeof(struct dsa_slave_priv), name, slave_dev = alloc_netdev_mqs(sizeof(struct dsa_slave_priv), name,
NET_NAME_UNKNOWN, ether_setup, assign_type, ether_setup,
ds->num_tx_queues, 1); ds->num_tx_queues, 1);
if (slave_dev == NULL) if (slave_dev == NULL)
return -ENOMEM; return -ENOMEM;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment