Lines Matching refs:nsim_dev_port

391 				      struct nsim_dev_port *nsim_dev_port)  in nsim_dev_port_debugfs_init()  argument
394 unsigned int port_index = nsim_dev_port->port_index; in nsim_dev_port_debugfs_init()
399 nsim_dev_port->ddir = debugfs_create_dir(port_ddir_name, in nsim_dev_port_debugfs_init()
401 if (IS_ERR(nsim_dev_port->ddir)) in nsim_dev_port_debugfs_init()
402 return PTR_ERR(nsim_dev_port->ddir); in nsim_dev_port_debugfs_init()
405 if (nsim_dev_port_is_vf(nsim_dev_port)) { in nsim_dev_port_debugfs_init()
408 debugfs_create_u16("tx_share", 0400, nsim_dev_port->ddir, in nsim_dev_port_debugfs_init()
410 debugfs_create_u16("tx_max", 0400, nsim_dev_port->ddir, in nsim_dev_port_debugfs_init()
412 nsim_dev_port->rate_parent = debugfs_create_file("rate_parent", in nsim_dev_port_debugfs_init()
414 nsim_dev_port->ddir, in nsim_dev_port_debugfs_init()
415 &nsim_dev_port->parent_name, in nsim_dev_port_debugfs_init()
418 debugfs_create_symlink("dev", nsim_dev_port->ddir, dev_link_name); in nsim_dev_port_debugfs_init()
423 static void nsim_dev_port_debugfs_exit(struct nsim_dev_port *nsim_dev_port) in nsim_dev_port_debugfs_exit() argument
425 debugfs_remove_recursive(nsim_dev_port->ddir); in nsim_dev_port_debugfs_exit()
570 static void __nsim_dev_port_del(struct nsim_dev_port *nsim_dev_port);
576 struct nsim_dev_port *nsim_dev_port, *tmp; in nsim_esw_legacy_enable() local
580 list_for_each_entry_safe(nsim_dev_port, tmp, &nsim_dev->port_list, list) in nsim_esw_legacy_enable()
581 if (nsim_dev_port_is_vf(nsim_dev_port)) in nsim_esw_legacy_enable()
582 __nsim_dev_port_del(nsim_dev_port); in nsim_esw_legacy_enable()
779 static void nsim_dev_trap_report(struct nsim_dev_port *nsim_dev_port) in nsim_dev_trap_report() argument
781 struct nsim_dev *nsim_dev = nsim_dev_port->ns->nsim_dev; in nsim_dev_trap_report()
805 skb->dev = nsim_dev_port->ns->netdev; in nsim_dev_trap_report()
816 &nsim_dev_port->devlink_port, fa_cookie); in nsim_dev_trap_report()
828 struct nsim_dev_port *nsim_dev_port; in nsim_dev_trap_report_work() local
839 list_for_each_entry(nsim_dev_port, &nsim_dev->port_list, list) { in nsim_dev_trap_report_work()
840 if (!netif_running(nsim_dev_port->ns->netdev)) in nsim_dev_trap_report_work()
843 nsim_dev_trap_report(nsim_dev_port); in nsim_dev_trap_report_work()
1176 struct nsim_dev_port *nsim_dev_port = priv; in nsim_leaf_tx_share_set() local
1177 struct nsim_dev *nsim_dev = nsim_dev_port->ns->nsim_dev; in nsim_leaf_tx_share_set()
1178 int vf_id = nsim_dev_port_index_to_vf_index(nsim_dev_port->port_index); in nsim_leaf_tx_share_set()
1192 struct nsim_dev_port *nsim_dev_port = priv; in nsim_leaf_tx_max_set() local
1193 struct nsim_dev *nsim_dev = nsim_dev_port->ns->nsim_dev; in nsim_leaf_tx_max_set()
1194 int vf_id = nsim_dev_port_index_to_vf_index(nsim_dev_port->port_index); in nsim_leaf_tx_max_set()
1285 struct nsim_dev_port *nsim_dev_port = priv_child; in nsim_rate_leaf_parent_set() local
1288 nsim_dev_port->parent_name = parent->name; in nsim_rate_leaf_parent_set()
1290 nsim_dev_port->parent_name = NULL; in nsim_rate_leaf_parent_set()
1358 struct nsim_dev_port *nsim_dev_port; in __nsim_dev_port_add() local
1365 nsim_dev_port = kzalloc(sizeof(*nsim_dev_port), GFP_KERNEL); in __nsim_dev_port_add()
1366 if (!nsim_dev_port) in __nsim_dev_port_add()
1368 nsim_dev_port->port_index = nsim_dev_port_index(type, port_index); in __nsim_dev_port_add()
1369 nsim_dev_port->port_type = type; in __nsim_dev_port_add()
1371 devlink_port = &nsim_dev_port->devlink_port; in __nsim_dev_port_add()
1372 if (nsim_dev_port_is_pf(nsim_dev_port)) { in __nsim_dev_port_add()
1384 nsim_dev_port->port_index); in __nsim_dev_port_add()
1388 err = nsim_dev_port_debugfs_init(nsim_dev, nsim_dev_port); in __nsim_dev_port_add()
1392 nsim_dev_port->ns = nsim_create(nsim_dev, nsim_dev_port); in __nsim_dev_port_add()
1393 if (IS_ERR(nsim_dev_port->ns)) { in __nsim_dev_port_add()
1394 err = PTR_ERR(nsim_dev_port->ns); in __nsim_dev_port_add()
1398 if (nsim_dev_port_is_vf(nsim_dev_port)) { in __nsim_dev_port_add()
1399 err = devlink_rate_leaf_create(&nsim_dev_port->devlink_port, in __nsim_dev_port_add()
1400 nsim_dev_port); in __nsim_dev_port_add()
1405 devlink_port_type_eth_set(devlink_port, nsim_dev_port->ns->netdev); in __nsim_dev_port_add()
1406 list_add(&nsim_dev_port->list, &nsim_dev->port_list); in __nsim_dev_port_add()
1411 nsim_destroy(nsim_dev_port->ns); in __nsim_dev_port_add()
1413 nsim_dev_port_debugfs_exit(nsim_dev_port); in __nsim_dev_port_add()
1417 kfree(nsim_dev_port); in __nsim_dev_port_add()
1421 static void __nsim_dev_port_del(struct nsim_dev_port *nsim_dev_port) in __nsim_dev_port_del() argument
1423 struct devlink_port *devlink_port = &nsim_dev_port->devlink_port; in __nsim_dev_port_del()
1425 list_del(&nsim_dev_port->list); in __nsim_dev_port_del()
1426 if (nsim_dev_port_is_vf(nsim_dev_port)) in __nsim_dev_port_del()
1427 devlink_rate_leaf_destroy(&nsim_dev_port->devlink_port); in __nsim_dev_port_del()
1429 nsim_destroy(nsim_dev_port->ns); in __nsim_dev_port_del()
1430 nsim_dev_port_debugfs_exit(nsim_dev_port); in __nsim_dev_port_del()
1432 kfree(nsim_dev_port); in __nsim_dev_port_del()
1437 struct nsim_dev_port *nsim_dev_port, *tmp; in nsim_dev_port_del_all() local
1440 list_for_each_entry_safe(nsim_dev_port, tmp, in nsim_dev_port_del_all()
1442 __nsim_dev_port_del(nsim_dev_port); in nsim_dev_port_del_all()
1677 static struct nsim_dev_port *
1681 struct nsim_dev_port *nsim_dev_port; in __nsim_dev_port_lookup() local
1684 list_for_each_entry(nsim_dev_port, &nsim_dev->port_list, list) in __nsim_dev_port_lookup()
1685 if (nsim_dev_port->port_index == port_index) in __nsim_dev_port_lookup()
1686 return nsim_dev_port; in __nsim_dev_port_lookup()
1709 struct nsim_dev_port *nsim_dev_port; in nsim_drv_port_del() local
1713 nsim_dev_port = __nsim_dev_port_lookup(nsim_dev, type, port_index); in nsim_drv_port_del()
1714 if (!nsim_dev_port) in nsim_drv_port_del()
1717 __nsim_dev_port_del(nsim_dev_port); in nsim_drv_port_del()