| From: Roman Kuzmitskii <damex.pp@icloud.com> |
| 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 <fff@bareminimum.eu> |
| Signed-off-by: Roman Kuzmitskii <damex.pp@icloud.com> |
| --- 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; |
| } |
| |