diff options
author | Leon Romanovsky <leonro@nvidia.com> | 2021-09-25 14:22:44 +0300 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2021-09-27 16:31:59 +0100 |
commit | bbb9ae25fc67f4867d6ab1e8e373cf86e7758d0d (patch) | |
tree | e71230c5fa367a94486954c4de2dbc1b9202cc6f /drivers/net/ethernet/freescale/dpaa2/dpaa2-eth-devlink.c | |
parent | 8d44b5cf60602568f951fbff86f1e0e0435d2a57 (diff) |
dpaa2-eth: Register devlink instance at the end of probe
Move devlink_register to be the last command in the initialization
sequence.
Signed-off-by: Leon Romanovsky <leonro@nvidia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/freescale/dpaa2/dpaa2-eth-devlink.c')
-rw-r--r-- | drivers/net/ethernet/freescale/dpaa2/dpaa2-eth-devlink.c | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth-devlink.c b/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth-devlink.c index 426926fb6fc6..7fefe1574b6a 100644 --- a/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth-devlink.c +++ b/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth-devlink.c @@ -189,7 +189,7 @@ static const struct devlink_ops dpaa2_eth_devlink_ops = { .trap_group_action_set = dpaa2_eth_dl_trap_group_action_set, }; -int dpaa2_eth_dl_register(struct dpaa2_eth_priv *priv) +int dpaa2_eth_dl_alloc(struct dpaa2_eth_priv *priv) { struct net_device *net_dev = priv->net_dev; struct device *dev = net_dev->dev.parent; @@ -203,15 +203,23 @@ int dpaa2_eth_dl_register(struct dpaa2_eth_priv *priv) } dl_priv = devlink_priv(priv->devlink); dl_priv->dpaa2_priv = priv; + return 0; +} + +void dpaa2_eth_dl_free(struct dpaa2_eth_priv *priv) +{ + devlink_free(priv->devlink); +} + +void dpaa2_eth_dl_register(struct dpaa2_eth_priv *priv) +{ devlink_register(priv->devlink); - return 0; } void dpaa2_eth_dl_unregister(struct dpaa2_eth_priv *priv) { devlink_unregister(priv->devlink); - devlink_free(priv->devlink); } int dpaa2_eth_dl_port_add(struct dpaa2_eth_priv *priv) |