summaryrefslogtreecommitdiffstats
path: root/drivers/net/netdevsim
diff options
context:
space:
mode:
authorJiri Pirko <jiri@mellanox.com>2019-04-25 09:59:56 -0400
committerDavid S. Miller <davem@davemloft.net>2019-04-26 01:52:03 -0400
commita62fdbbe9403ed4a645529f72eabc2c4c6225bd5 (patch)
treef88904011329e2ebd0a12f14d22fa7a3e620e8a7 /drivers/net/netdevsim
parente05b2d141fef22cfac1928cf0eb6890e5dae4216 (diff)
netdevsim: implement ndo_get_devlink_port
Implement ndo_get_devlink_port and allow switch_id and port_name to be handled by devlink. Signed-off-by: Jiri Pirko <jiri@mellanox.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/netdevsim')
-rw-r--r--drivers/net/netdevsim/netdev.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/net/netdevsim/netdev.c b/drivers/net/netdevsim/netdev.c
index 040c390d0c01..e5c8aa08e1cd 100644
--- a/drivers/net/netdevsim/netdev.c
+++ b/drivers/net/netdevsim/netdev.c
@@ -245,6 +245,13 @@ nsim_set_features(struct net_device *dev, netdev_features_t features)
245 return 0; 245 return 0;
246} 246}
247 247
248static struct devlink_port *nsim_get_devlink_port(struct net_device *dev)
249{
250 struct netdevsim *ns = netdev_priv(dev);
251
252 return &ns->nsim_dev_port->devlink_port;
253}
254
248static const struct net_device_ops nsim_netdev_ops = { 255static const struct net_device_ops nsim_netdev_ops = {
249 .ndo_start_xmit = nsim_start_xmit, 256 .ndo_start_xmit = nsim_start_xmit,
250 .ndo_set_rx_mode = nsim_set_rx_mode, 257 .ndo_set_rx_mode = nsim_set_rx_mode,
@@ -263,6 +270,7 @@ static const struct net_device_ops nsim_netdev_ops = {
263 .ndo_setup_tc = nsim_setup_tc, 270 .ndo_setup_tc = nsim_setup_tc,
264 .ndo_set_features = nsim_set_features, 271 .ndo_set_features = nsim_set_features,
265 .ndo_bpf = nsim_bpf, 272 .ndo_bpf = nsim_bpf,
273 .ndo_get_devlink_port = nsim_get_devlink_port,
266}; 274};
267 275
268static void nsim_setup(struct net_device *dev) 276static void nsim_setup(struct net_device *dev)