Lines Matching refs:devlink_port
230 static struct devlink_port *devlink_port_get_by_index(struct devlink *devlink, in devlink_port_get_by_index()
233 struct devlink_port *devlink_port; in devlink_port_get_by_index() local
235 list_for_each_entry(devlink_port, &devlink->port_list, list) { in devlink_port_get_by_index()
236 if (devlink_port->index == port_index) in devlink_port_get_by_index()
237 return devlink_port; in devlink_port_get_by_index()
248 static struct devlink_port *devlink_port_get_from_attrs(struct devlink *devlink, in devlink_port_get_from_attrs()
253 struct devlink_port *devlink_port; in devlink_port_get_from_attrs() local
255 devlink_port = devlink_port_get_by_index(devlink, port_index); in devlink_port_get_from_attrs()
256 if (!devlink_port) in devlink_port_get_from_attrs()
258 return devlink_port; in devlink_port_get_from_attrs()
263 static struct devlink_port *devlink_port_get_from_info(struct devlink *devlink, in devlink_port_get_from_info()
285 struct devlink_port *devlink_port; in devlink_rate_leaf_get_from_info() local
287 devlink_port = devlink_port_get_from_attrs(devlink, info->attrs); in devlink_rate_leaf_get_from_info()
288 if (IS_ERR(devlink_port)) in devlink_rate_leaf_get_from_info()
289 return ERR_CAST(devlink_port); in devlink_rate_leaf_get_from_info()
290 devlink_rate = devlink_port->devlink_rate; in devlink_rate_leaf_get_from_info()
503 struct devlink_port *port;
535 devlink_port_region_get_by_name(struct devlink_port *port, in devlink_port_region_get_by_name()
573 struct devlink_port *devlink_port; in devlink_nl_pre_doit() local
587 devlink_port = devlink_port_get_from_info(devlink, info); in devlink_nl_pre_doit()
588 if (IS_ERR(devlink_port)) { in devlink_nl_pre_doit()
589 err = PTR_ERR(devlink_port); in devlink_nl_pre_doit()
592 info->user_ptr[1] = devlink_port; in devlink_nl_pre_doit()
594 devlink_port = devlink_port_get_from_info(devlink, info); in devlink_nl_pre_doit()
595 if (!IS_ERR(devlink_port)) in devlink_nl_pre_doit()
596 info->user_ptr[1] = devlink_port; in devlink_nl_pre_doit()
837 struct devlink_port *devlink_port) in devlink_nl_port_attrs_put() argument
839 struct devlink_port_attrs *attrs = &devlink_port->attrs; in devlink_nl_port_attrs_put()
841 if (!devlink_port->attrs_set) in devlink_nl_port_attrs_put()
851 switch (devlink_port->attrs.flavour) { in devlink_nl_port_attrs_put()
900 struct devlink_port *port, in devlink_port_fn_hw_addr_fill()
946 devlink_rate->devlink_port->index)) in devlink_nl_rate_fill()
990 struct devlink_port *port, in devlink_port_fn_state_fill()
1027 devlink_nl_port_function_attrs_put(struct sk_buff *msg, struct devlink_port *port, in devlink_nl_port_function_attrs_put()
1054 struct devlink_port *devlink_port, in devlink_nl_port_fill() argument
1058 struct devlink *devlink = devlink_port->devlink; in devlink_nl_port_fill()
1067 if (nla_put_u32(msg, DEVLINK_ATTR_PORT_INDEX, devlink_port->index)) in devlink_nl_port_fill()
1072 spin_lock_bh(&devlink_port->type_lock); in devlink_nl_port_fill()
1073 if (nla_put_u16(msg, DEVLINK_ATTR_PORT_TYPE, devlink_port->type)) in devlink_nl_port_fill()
1075 if (devlink_port->desired_type != DEVLINK_PORT_TYPE_NOTSET && in devlink_nl_port_fill()
1077 devlink_port->desired_type)) in devlink_nl_port_fill()
1079 if (devlink_port->type == DEVLINK_PORT_TYPE_ETH) { in devlink_nl_port_fill()
1080 struct net *net = devlink_net(devlink_port->devlink); in devlink_nl_port_fill()
1081 struct net_device *netdev = devlink_port->type_dev; in devlink_nl_port_fill()
1090 if (devlink_port->type == DEVLINK_PORT_TYPE_IB) { in devlink_nl_port_fill()
1091 struct ib_device *ibdev = devlink_port->type_dev; in devlink_nl_port_fill()
1098 spin_unlock_bh(&devlink_port->type_lock); in devlink_nl_port_fill()
1100 if (devlink_nl_port_attrs_put(msg, devlink_port)) in devlink_nl_port_fill()
1102 if (devlink_nl_port_function_attrs_put(msg, devlink_port, extack)) in devlink_nl_port_fill()
1109 spin_unlock_bh(&devlink_port->type_lock); in devlink_nl_port_fill()
1116 static void devlink_port_notify(struct devlink_port *devlink_port, in devlink_port_notify() argument
1119 struct devlink *devlink = devlink_port->devlink; in devlink_port_notify()
1132 err = devlink_nl_port_fill(msg, devlink_port, cmd, 0, 0, 0, NULL); in devlink_port_notify()
1315 struct devlink_port *devlink_port = info->user_ptr[1]; in devlink_nl_cmd_port_get_doit() local
1323 err = devlink_nl_port_fill(msg, devlink_port, DEVLINK_CMD_PORT_NEW, in devlink_nl_cmd_port_get_doit()
1338 struct devlink_port *devlink_port; in devlink_nl_cmd_port_get_dumpit() local
1353 list_for_each_entry(devlink_port, &devlink->port_list, list) { in devlink_nl_cmd_port_get_dumpit()
1358 err = devlink_nl_port_fill(msg, devlink_port, in devlink_nl_cmd_port_get_dumpit()
1381 static int devlink_port_type_set(struct devlink_port *devlink_port, in devlink_port_type_set() argument
1387 if (!devlink_port->devlink->ops->port_type_set) in devlink_port_type_set()
1390 if (port_type == devlink_port->type) in devlink_port_type_set()
1393 err = devlink_port->devlink->ops->port_type_set(devlink_port, in devlink_port_type_set()
1398 devlink_port->desired_type = port_type; in devlink_port_type_set()
1399 devlink_port_notify(devlink_port, DEVLINK_CMD_PORT_NEW); in devlink_port_type_set()
1403 static int devlink_port_function_hw_addr_set(struct devlink_port *port, in devlink_port_function_hw_addr_set()
1437 static int devlink_port_fn_state_set(struct devlink_port *port, in devlink_port_fn_state_set()
1454 static int devlink_port_function_set(struct devlink_port *port, in devlink_port_function_set()
1490 struct devlink_port *devlink_port = info->user_ptr[1]; in devlink_nl_cmd_port_set_doit() local
1497 err = devlink_port_type_set(devlink_port, port_type); in devlink_nl_cmd_port_set_doit()
1506 err = devlink_port_function_set(devlink_port, attr, extack); in devlink_nl_cmd_port_set_doit()
1528 struct devlink_port *devlink_port; in devlink_nl_cmd_port_split_doit() local
1536 devlink_port = devlink_port_get_from_info(devlink, info); in devlink_nl_cmd_port_split_doit()
1540 if (IS_ERR(devlink_port)) in devlink_nl_cmd_port_split_doit()
1543 if (!devlink_port->attrs.splittable) { in devlink_nl_cmd_port_split_doit()
1545 if (devlink_port->attrs.split) in devlink_nl_cmd_port_split_doit()
1552 if (count < 2 || !is_power_of_2(count) || count > devlink_port->attrs.lanes) { in devlink_nl_cmd_port_split_doit()
1586 struct devlink_port *devlink_port; in devlink_port_new_notifiy() local
1595 devlink_port = devlink_port_get_by_index(devlink, port_index); in devlink_port_new_notifiy()
1596 if (!devlink_port) { in devlink_port_new_notifiy()
1601 err = devlink_nl_port_fill(msg, devlink_port, DEVLINK_CMD_NEW, in devlink_port_new_notifiy()
2247 struct devlink_port *devlink_port, in devlink_nl_sb_port_pool_fill() argument
2258 err = ops->sb_port_pool_get(devlink_port, devlink_sb->index, in devlink_nl_sb_port_pool_fill()
2269 if (nla_put_u32(msg, DEVLINK_ATTR_PORT_INDEX, devlink_port->index)) in devlink_nl_sb_port_pool_fill()
2282 err = ops->sb_occ_port_pool_get(devlink_port, devlink_sb->index, in devlink_nl_sb_port_pool_fill()
2307 struct devlink_port *devlink_port = info->user_ptr[1]; in devlink_nl_cmd_sb_port_pool_get_doit() local
2308 struct devlink *devlink = devlink_port->devlink; in devlink_nl_cmd_sb_port_pool_get_doit()
2330 err = devlink_nl_sb_port_pool_fill(msg, devlink, devlink_port, in devlink_nl_cmd_sb_port_pool_get_doit()
2347 struct devlink_port *devlink_port; in __sb_port_pool_get_dumpit() local
2352 list_for_each_entry(devlink_port, &devlink->port_list, list) { in __sb_port_pool_get_dumpit()
2359 devlink_port, in __sb_port_pool_get_dumpit()
2420 static int devlink_sb_port_pool_set(struct devlink_port *devlink_port, in devlink_sb_port_pool_set() argument
2426 const struct devlink_ops *ops = devlink_port->devlink->ops; in devlink_sb_port_pool_set()
2429 return ops->sb_port_pool_set(devlink_port, sb_index, in devlink_sb_port_pool_set()
2437 struct devlink_port *devlink_port = info->user_ptr[1]; in devlink_nl_cmd_sb_port_pool_set_doit() local
2457 return devlink_sb_port_pool_set(devlink_port, devlink_sb->index, in devlink_nl_cmd_sb_port_pool_set_doit()
2463 struct devlink_port *devlink_port, in devlink_nl_sb_tc_pool_bind_fill() argument
2475 err = ops->sb_tc_pool_bind_get(devlink_port, devlink_sb->index, in devlink_nl_sb_tc_pool_bind_fill()
2487 if (nla_put_u32(msg, DEVLINK_ATTR_PORT_INDEX, devlink_port->index)) in devlink_nl_sb_tc_pool_bind_fill()
2504 err = ops->sb_occ_tc_port_bind_get(devlink_port, in devlink_nl_sb_tc_pool_bind_fill()
2529 struct devlink_port *devlink_port = info->user_ptr[1]; in devlink_nl_cmd_sb_tc_pool_bind_get_doit() local
2530 struct devlink *devlink = devlink_port->devlink; in devlink_nl_cmd_sb_tc_pool_bind_get_doit()
2557 err = devlink_nl_sb_tc_pool_bind_fill(msg, devlink, devlink_port, in devlink_nl_cmd_sb_tc_pool_bind_get_doit()
2576 struct devlink_port *devlink_port; in __sb_tc_pool_bind_get_dumpit() local
2580 list_for_each_entry(devlink_port, &devlink->port_list, list) { in __sb_tc_pool_bind_get_dumpit()
2588 devlink_port, in __sb_tc_pool_bind_get_dumpit()
2606 devlink_port, in __sb_tc_pool_bind_get_dumpit()
2670 static int devlink_sb_tc_pool_bind_set(struct devlink_port *devlink_port, in devlink_sb_tc_pool_bind_set() argument
2677 const struct devlink_ops *ops = devlink_port->devlink->ops; in devlink_sb_tc_pool_bind_set()
2680 return ops->sb_tc_pool_bind_set(devlink_port, sb_index, in devlink_sb_tc_pool_bind_set()
2689 struct devlink_port *devlink_port = info->user_ptr[1]; in devlink_nl_cmd_sb_tc_pool_bind_set_doit() local
2720 return devlink_sb_tc_pool_bind_set(devlink_port, devlink_sb->index, in devlink_nl_cmd_sb_tc_pool_bind_set_doit()
4936 struct devlink_port *devlink_port; in devlink_nl_cmd_port_param_get_dumpit() local
4952 list_for_each_entry(devlink_port, &devlink->port_list, list) { in devlink_nl_cmd_port_param_get_dumpit()
4954 &devlink_port->param_list, list) { in devlink_nl_cmd_port_param_get_dumpit()
4960 devlink_port->devlink, in devlink_nl_cmd_port_param_get_dumpit()
4961 devlink_port->index, param_item, in devlink_nl_cmd_port_param_get_dumpit()
4993 struct devlink_port *devlink_port = info->user_ptr[1]; in devlink_nl_cmd_port_param_get_doit() local
4998 param_item = devlink_param_get_from_info(&devlink_port->param_list, in devlink_nl_cmd_port_param_get_doit()
5007 err = devlink_nl_param_fill(msg, devlink_port->devlink, in devlink_nl_cmd_port_param_get_doit()
5008 devlink_port->index, param_item, in devlink_nl_cmd_port_param_get_doit()
5022 struct devlink_port *devlink_port = info->user_ptr[1]; in devlink_nl_cmd_port_param_set_doit() local
5024 return __devlink_nl_cmd_param_set_doit(devlink_port->devlink, in devlink_nl_cmd_port_param_set_doit()
5025 devlink_port->index, in devlink_nl_cmd_port_param_set_doit()
5026 &devlink_port->param_list, info, in devlink_nl_cmd_port_param_set_doit()
5410 struct devlink_port *port = NULL; in devlink_nl_cmd_region_get_doit()
5454 struct devlink_port *port, in devlink_nl_cmd_region_get_port_dumpit()
5487 struct devlink_port *port; in devlink_nl_cmd_region_get_devlink_dumpit()
5553 struct devlink_port *port = NULL; in devlink_nl_cmd_region_del()
5595 struct devlink_port *port = NULL; in devlink_nl_cmd_region_new()
5786 struct devlink_port *port = NULL; in devlink_nl_cmd_region_read_dumpit()
6693 struct devlink_port *devlink_port; member
6739 devlink_port_health_reporter_find_by_name(struct devlink_port *devlink_port, in devlink_port_health_reporter_find_by_name() argument
6742 return __devlink_health_reporter_find_by_name(&devlink_port->reporter_list, in devlink_port_health_reporter_find_by_name()
6743 &devlink_port->reporters_lock, in devlink_port_health_reporter_find_by_name()
6782 devlink_port_health_reporter_create(struct devlink_port *port, in devlink_port_health_reporter_create()
6800 reporter->devlink_port = port; in devlink_port_health_reporter_create()
6888 struct mutex *lock = &reporter->devlink_port->reporters_lock; in devlink_port_health_reporter_destroy()
6913 if (reporter->devlink_port) { in devlink_nl_health_reporter_fill()
6914 if (nla_put_u32(msg, DEVLINK_ATTR_PORT_INDEX, reporter->devlink_port->index)) in devlink_nl_health_reporter_fill()
7124 struct devlink_port *devlink_port; in devlink_health_reporter_get_from_attrs() local
7131 devlink_port = devlink_port_get_from_attrs(devlink, attrs); in devlink_health_reporter_get_from_attrs()
7132 if (IS_ERR(devlink_port)) { in devlink_health_reporter_get_from_attrs()
7139 mutex_lock(&devlink_port->reporters_lock); in devlink_health_reporter_get_from_attrs()
7140 reporter = devlink_port_health_reporter_find_by_name(devlink_port, reporter_name); in devlink_health_reporter_get_from_attrs()
7143 mutex_unlock(&devlink_port->reporters_lock); in devlink_health_reporter_get_from_attrs()
7234 struct devlink_port *port; in devlink_nl_cmd_health_reporter_get_dumpit()
9043 struct devlink_port *devlink_port; in devlink_notify_register() local
9048 list_for_each_entry(devlink_port, &devlink->port_list, list) in devlink_notify_register()
9049 devlink_port_notify(devlink_port, DEVLINK_CMD_PORT_NEW); in devlink_notify_register()
9079 struct devlink_port *devlink_port; in devlink_notify_unregister() local
9104 list_for_each_entry_reverse(devlink_port, &devlink->port_list, list) in devlink_notify_unregister()
9105 devlink_port_notify(devlink_port, DEVLINK_CMD_PORT_DEL); in devlink_notify_unregister()
9181 static bool devlink_port_type_should_warn(struct devlink_port *devlink_port) in devlink_port_type_should_warn() argument
9184 return devlink_port->attrs.flavour != DEVLINK_PORT_FLAVOUR_CPU && in devlink_port_type_should_warn()
9185 devlink_port->attrs.flavour != DEVLINK_PORT_FLAVOUR_DSA && in devlink_port_type_should_warn()
9186 devlink_port->attrs.flavour != DEVLINK_PORT_FLAVOUR_UNUSED; in devlink_port_type_should_warn()
9191 static void devlink_port_type_warn_schedule(struct devlink_port *devlink_port) in devlink_port_type_warn_schedule() argument
9193 if (!devlink_port_type_should_warn(devlink_port)) in devlink_port_type_warn_schedule()
9198 schedule_delayed_work(&devlink_port->type_warn_dw, in devlink_port_type_warn_schedule()
9202 static void devlink_port_type_warn_cancel(struct devlink_port *devlink_port) in devlink_port_type_warn_cancel() argument
9204 if (!devlink_port_type_should_warn(devlink_port)) in devlink_port_type_warn_cancel()
9206 cancel_delayed_work_sync(&devlink_port->type_warn_dw); in devlink_port_type_warn_cancel()
9223 struct devlink_port *devlink_port, in devlink_port_register() argument
9232 WARN_ON(devlink_port->devlink); in devlink_port_register()
9233 devlink_port->devlink = devlink; in devlink_port_register()
9234 devlink_port->index = port_index; in devlink_port_register()
9235 spin_lock_init(&devlink_port->type_lock); in devlink_port_register()
9236 INIT_LIST_HEAD(&devlink_port->reporter_list); in devlink_port_register()
9237 mutex_init(&devlink_port->reporters_lock); in devlink_port_register()
9238 list_add_tail(&devlink_port->list, &devlink->port_list); in devlink_port_register()
9239 INIT_LIST_HEAD(&devlink_port->param_list); in devlink_port_register()
9240 INIT_LIST_HEAD(&devlink_port->region_list); in devlink_port_register()
9242 INIT_DELAYED_WORK(&devlink_port->type_warn_dw, &devlink_port_type_warn); in devlink_port_register()
9243 devlink_port_type_warn_schedule(devlink_port); in devlink_port_register()
9244 devlink_port_notify(devlink_port, DEVLINK_CMD_PORT_NEW); in devlink_port_register()
9254 void devlink_port_unregister(struct devlink_port *devlink_port) in devlink_port_unregister() argument
9256 struct devlink *devlink = devlink_port->devlink; in devlink_port_unregister()
9258 devlink_port_type_warn_cancel(devlink_port); in devlink_port_unregister()
9259 devlink_port_notify(devlink_port, DEVLINK_CMD_PORT_DEL); in devlink_port_unregister()
9261 list_del(&devlink_port->list); in devlink_port_unregister()
9263 WARN_ON(!list_empty(&devlink_port->reporter_list)); in devlink_port_unregister()
9264 WARN_ON(!list_empty(&devlink_port->region_list)); in devlink_port_unregister()
9265 mutex_destroy(&devlink_port->reporters_lock); in devlink_port_unregister()
9269 static void __devlink_port_type_set(struct devlink_port *devlink_port, in __devlink_port_type_set() argument
9273 if (WARN_ON(!devlink_port->devlink)) in __devlink_port_type_set()
9275 devlink_port_type_warn_cancel(devlink_port); in __devlink_port_type_set()
9276 spin_lock_bh(&devlink_port->type_lock); in __devlink_port_type_set()
9277 devlink_port->type = type; in __devlink_port_type_set()
9278 devlink_port->type_dev = type_dev; in __devlink_port_type_set()
9279 spin_unlock_bh(&devlink_port->type_lock); in __devlink_port_type_set()
9280 devlink_port_notify(devlink_port, DEVLINK_CMD_PORT_NEW); in __devlink_port_type_set()
9283 static void devlink_port_type_netdev_checks(struct devlink_port *devlink_port, in devlink_port_type_netdev_checks() argument
9326 void devlink_port_type_eth_set(struct devlink_port *devlink_port, in devlink_port_type_eth_set() argument
9330 devlink_port_type_netdev_checks(devlink_port, netdev); in devlink_port_type_eth_set()
9332 dev_warn(devlink_port->devlink->dev, in devlink_port_type_eth_set()
9334 devlink_port->index); in devlink_port_type_eth_set()
9336 __devlink_port_type_set(devlink_port, DEVLINK_PORT_TYPE_ETH, netdev); in devlink_port_type_eth_set()
9346 void devlink_port_type_ib_set(struct devlink_port *devlink_port, in devlink_port_type_ib_set() argument
9349 __devlink_port_type_set(devlink_port, DEVLINK_PORT_TYPE_IB, ibdev); in devlink_port_type_ib_set()
9358 void devlink_port_type_clear(struct devlink_port *devlink_port) in devlink_port_type_clear() argument
9360 __devlink_port_type_set(devlink_port, DEVLINK_PORT_TYPE_NOTSET, NULL); in devlink_port_type_clear()
9361 devlink_port_type_warn_schedule(devlink_port); in devlink_port_type_clear()
9365 static int __devlink_port_attrs_set(struct devlink_port *devlink_port, in __devlink_port_attrs_set() argument
9368 struct devlink_port_attrs *attrs = &devlink_port->attrs; in __devlink_port_attrs_set()
9370 devlink_port->attrs_set = true; in __devlink_port_attrs_set()
9373 devlink_port->switch_port = true; in __devlink_port_attrs_set()
9377 devlink_port->switch_port = false; in __devlink_port_attrs_set()
9388 void devlink_port_attrs_set(struct devlink_port *devlink_port, in devlink_port_attrs_set() argument
9393 if (WARN_ON(devlink_port->devlink)) in devlink_port_attrs_set()
9395 devlink_port->attrs = *attrs; in devlink_port_attrs_set()
9396 ret = __devlink_port_attrs_set(devlink_port, attrs->flavour); in devlink_port_attrs_set()
9411 void devlink_port_attrs_pci_pf_set(struct devlink_port *devlink_port, u32 controller, in devlink_port_attrs_pci_pf_set() argument
9414 struct devlink_port_attrs *attrs = &devlink_port->attrs; in devlink_port_attrs_pci_pf_set()
9417 if (WARN_ON(devlink_port->devlink)) in devlink_port_attrs_pci_pf_set()
9419 ret = __devlink_port_attrs_set(devlink_port, in devlink_port_attrs_pci_pf_set()
9438 void devlink_port_attrs_pci_vf_set(struct devlink_port *devlink_port, u32 controller, in devlink_port_attrs_pci_vf_set() argument
9441 struct devlink_port_attrs *attrs = &devlink_port->attrs; in devlink_port_attrs_pci_vf_set()
9444 if (WARN_ON(devlink_port->devlink)) in devlink_port_attrs_pci_vf_set()
9446 ret = __devlink_port_attrs_set(devlink_port, in devlink_port_attrs_pci_vf_set()
9466 void devlink_port_attrs_pci_sf_set(struct devlink_port *devlink_port, u32 controller, in devlink_port_attrs_pci_sf_set() argument
9469 struct devlink_port_attrs *attrs = &devlink_port->attrs; in devlink_port_attrs_pci_sf_set()
9472 if (WARN_ON(devlink_port->devlink)) in devlink_port_attrs_pci_sf_set()
9474 ret = __devlink_port_attrs_set(devlink_port, in devlink_port_attrs_pci_sf_set()
9499 devlink_rate_leaf_create(struct devlink_port *devlink_port, void *priv) in devlink_rate_leaf_create() argument
9501 struct devlink *devlink = devlink_port->devlink; in devlink_rate_leaf_create()
9509 WARN_ON(devlink_port->devlink_rate); in devlink_rate_leaf_create()
9512 devlink_rate->devlink_port = devlink_port; in devlink_rate_leaf_create()
9515 devlink_port->devlink_rate = devlink_rate; in devlink_rate_leaf_create()
9530 void devlink_rate_leaf_destroy(struct devlink_port *devlink_port) in devlink_rate_leaf_destroy() argument
9532 struct devlink_rate *devlink_rate = devlink_port->devlink_rate; in devlink_rate_leaf_destroy()
9533 struct devlink *devlink = devlink_port->devlink; in devlink_rate_leaf_destroy()
9543 devlink_port->devlink_rate = NULL; in devlink_rate_leaf_destroy()
9589 static int __devlink_port_phys_port_name_get(struct devlink_port *devlink_port, in __devlink_port_phys_port_name_get() argument
9592 struct devlink_port_attrs *attrs = &devlink_port->attrs; in __devlink_port_phys_port_name_get()
9595 if (!devlink_port->attrs_set) in __devlink_port_phys_port_name_get()
10324 devlink_port_region_create(struct devlink_port *port, in devlink_port_region_create()
10904 struct devlink_port *in_devlink_port, in devlink_trap_report_metadata_set()
10927 void *trap_ctx, struct devlink_port *in_devlink_port, in devlink_trap_report()
11280 static struct devlink_port *netdev_to_devlink_port(struct net_device *dev) in netdev_to_devlink_port()
11325 struct devlink_port *devlink_port; in devlink_compat_phys_port_name_get() local
11333 devlink_port = netdev_to_devlink_port(dev); in devlink_compat_phys_port_name_get()
11334 if (!devlink_port) in devlink_compat_phys_port_name_get()
11337 return __devlink_port_phys_port_name_get(devlink_port, name, len); in devlink_compat_phys_port_name_get()
11343 struct devlink_port *devlink_port; in devlink_compat_switch_id_get() local
11349 devlink_port = netdev_to_devlink_port(dev); in devlink_compat_switch_id_get()
11350 if (!devlink_port || !devlink_port->switch_port) in devlink_compat_switch_id_get()
11353 memcpy(ppid, &devlink_port->attrs.switch_id, sizeof(*ppid)); in devlink_compat_switch_id_get()