From: Roman Kuzmitskii Date: Wed, 28 Oct 2020 19:00:00 +0000 Subject: [PATCH] staging: octeon: add net-labels support With this patch, device name can be set within dts file in the same way as dsa port can. Add label to pip interface node to use this feature: label = "lan0"; Tested-by: Johannes Kimmel Signed-off-by: Roman Kuzmitskii --- a/drivers/staging/octeon/ethernet.c +++ b/drivers/staging/octeon/ethernet.c @@ -408,9 +408,12 @@ int cvm_oct_common_init(struct net_devic { struct octeon_ethernet *priv = netdev_priv(dev); const u8 *mac = NULL; + const u8 *label = NULL; - if (priv->of_node) + if (priv->of_node) { mac = of_get_mac_address(priv->of_node); + label = of_get_property(priv->of_node, "label", NULL); + } if (!IS_ERR_OR_NULL(mac)) ether_addr_copy(dev->dev_addr, mac); @@ -445,6 +448,9 @@ int cvm_oct_common_init(struct net_devic if (dev->netdev_ops->ndo_stop) dev->netdev_ops->ndo_stop(dev); + if (!IS_ERR_OR_NULL(label)) + dev_alloc_name(dev, label); + return 0; }