nsim_bus_dev       21 drivers/net/netdevsim/bus.c static struct nsim_bus_dev *to_nsim_bus_dev(struct device *dev)
nsim_bus_dev       23 drivers/net/netdevsim/bus.c 	return container_of(dev, struct nsim_bus_dev, dev);
nsim_bus_dev       26 drivers/net/netdevsim/bus.c static int nsim_bus_dev_vfs_enable(struct nsim_bus_dev *nsim_bus_dev,
nsim_bus_dev       29 drivers/net/netdevsim/bus.c 	nsim_bus_dev->vfconfigs = kcalloc(num_vfs,
nsim_bus_dev       32 drivers/net/netdevsim/bus.c 	if (!nsim_bus_dev->vfconfigs)
nsim_bus_dev       34 drivers/net/netdevsim/bus.c 	nsim_bus_dev->num_vfs = num_vfs;
nsim_bus_dev       39 drivers/net/netdevsim/bus.c static void nsim_bus_dev_vfs_disable(struct nsim_bus_dev *nsim_bus_dev)
nsim_bus_dev       41 drivers/net/netdevsim/bus.c 	kfree(nsim_bus_dev->vfconfigs);
nsim_bus_dev       42 drivers/net/netdevsim/bus.c 	nsim_bus_dev->vfconfigs = NULL;
nsim_bus_dev       43 drivers/net/netdevsim/bus.c 	nsim_bus_dev->num_vfs = 0;
nsim_bus_dev       50 drivers/net/netdevsim/bus.c 	struct nsim_bus_dev *nsim_bus_dev = to_nsim_bus_dev(dev);
nsim_bus_dev       59 drivers/net/netdevsim/bus.c 	if (nsim_bus_dev->num_vfs == num_vfs)
nsim_bus_dev       61 drivers/net/netdevsim/bus.c 	if (nsim_bus_dev->num_vfs && num_vfs) {
nsim_bus_dev       67 drivers/net/netdevsim/bus.c 		ret = nsim_bus_dev_vfs_enable(nsim_bus_dev, num_vfs);
nsim_bus_dev       71 drivers/net/netdevsim/bus.c 		nsim_bus_dev_vfs_disable(nsim_bus_dev);
nsim_bus_dev       85 drivers/net/netdevsim/bus.c 	struct nsim_bus_dev *nsim_bus_dev = to_nsim_bus_dev(dev);
nsim_bus_dev       87 drivers/net/netdevsim/bus.c 	return sprintf(buf, "%u\n", nsim_bus_dev->num_vfs);
nsim_bus_dev       98 drivers/net/netdevsim/bus.c 	struct nsim_bus_dev *nsim_bus_dev = to_nsim_bus_dev(dev);
nsim_bus_dev      105 drivers/net/netdevsim/bus.c 	ret = nsim_dev_port_add(nsim_bus_dev, port_index);
nsim_bus_dev      115 drivers/net/netdevsim/bus.c 	struct nsim_bus_dev *nsim_bus_dev = to_nsim_bus_dev(dev);
nsim_bus_dev      122 drivers/net/netdevsim/bus.c 	ret = nsim_dev_port_del(nsim_bus_dev, port_index);
nsim_bus_dev      146 drivers/net/netdevsim/bus.c 	struct nsim_bus_dev *nsim_bus_dev = to_nsim_bus_dev(dev);
nsim_bus_dev      148 drivers/net/netdevsim/bus.c 	nsim_bus_dev_vfs_disable(nsim_bus_dev);
nsim_bus_dev      156 drivers/net/netdevsim/bus.c static struct nsim_bus_dev *
nsim_bus_dev      162 drivers/net/netdevsim/bus.c 	struct nsim_bus_dev *nsim_bus_dev;
nsim_bus_dev      182 drivers/net/netdevsim/bus.c 	nsim_bus_dev = nsim_bus_dev_new(id, port_count);
nsim_bus_dev      183 drivers/net/netdevsim/bus.c 	if (IS_ERR(nsim_bus_dev))
nsim_bus_dev      184 drivers/net/netdevsim/bus.c 		return PTR_ERR(nsim_bus_dev);
nsim_bus_dev      187 drivers/net/netdevsim/bus.c 	list_add_tail(&nsim_bus_dev->list, &nsim_bus_dev_list);
nsim_bus_dev      194 drivers/net/netdevsim/bus.c static void nsim_bus_dev_del(struct nsim_bus_dev *nsim_bus_dev);
nsim_bus_dev      199 drivers/net/netdevsim/bus.c 	struct nsim_bus_dev *nsim_bus_dev, *tmp;
nsim_bus_dev      218 drivers/net/netdevsim/bus.c 	list_for_each_entry_safe(nsim_bus_dev, tmp, &nsim_bus_dev_list, list) {
nsim_bus_dev      219 drivers/net/netdevsim/bus.c 		if (nsim_bus_dev->dev.id != id)
nsim_bus_dev      221 drivers/net/netdevsim/bus.c 		list_del(&nsim_bus_dev->list);
nsim_bus_dev      222 drivers/net/netdevsim/bus.c 		nsim_bus_dev_del(nsim_bus_dev);
nsim_bus_dev      240 drivers/net/netdevsim/bus.c 	struct nsim_bus_dev *nsim_bus_dev = to_nsim_bus_dev(dev);
nsim_bus_dev      242 drivers/net/netdevsim/bus.c 	return nsim_dev_probe(nsim_bus_dev);
nsim_bus_dev      247 drivers/net/netdevsim/bus.c 	struct nsim_bus_dev *nsim_bus_dev = to_nsim_bus_dev(dev);
nsim_bus_dev      249 drivers/net/netdevsim/bus.c 	nsim_dev_remove(nsim_bus_dev);
nsim_bus_dev      255 drivers/net/netdevsim/bus.c 	struct nsim_bus_dev *nsim_bus_dev = to_nsim_bus_dev(dev);
nsim_bus_dev      257 drivers/net/netdevsim/bus.c 	return nsim_bus_dev->num_vfs;
nsim_bus_dev      269 drivers/net/netdevsim/bus.c static struct nsim_bus_dev *
nsim_bus_dev      272 drivers/net/netdevsim/bus.c 	struct nsim_bus_dev *nsim_bus_dev;
nsim_bus_dev      275 drivers/net/netdevsim/bus.c 	nsim_bus_dev = kzalloc(sizeof(*nsim_bus_dev), GFP_KERNEL);
nsim_bus_dev      276 drivers/net/netdevsim/bus.c 	if (!nsim_bus_dev)
nsim_bus_dev      282 drivers/net/netdevsim/bus.c 	nsim_bus_dev->dev.id = err;
nsim_bus_dev      283 drivers/net/netdevsim/bus.c 	nsim_bus_dev->dev.bus = &nsim_bus;
nsim_bus_dev      284 drivers/net/netdevsim/bus.c 	nsim_bus_dev->dev.type = &nsim_bus_dev_type;
nsim_bus_dev      285 drivers/net/netdevsim/bus.c 	nsim_bus_dev->port_count = port_count;
nsim_bus_dev      287 drivers/net/netdevsim/bus.c 	err = device_register(&nsim_bus_dev->dev);
nsim_bus_dev      290 drivers/net/netdevsim/bus.c 	return nsim_bus_dev;
nsim_bus_dev      293 drivers/net/netdevsim/bus.c 	ida_free(&nsim_bus_dev_ids, nsim_bus_dev->dev.id);
nsim_bus_dev      295 drivers/net/netdevsim/bus.c 	kfree(nsim_bus_dev);
nsim_bus_dev      299 drivers/net/netdevsim/bus.c static void nsim_bus_dev_del(struct nsim_bus_dev *nsim_bus_dev)
nsim_bus_dev      301 drivers/net/netdevsim/bus.c 	device_unregister(&nsim_bus_dev->dev);
nsim_bus_dev      302 drivers/net/netdevsim/bus.c 	ida_free(&nsim_bus_dev_ids, nsim_bus_dev->dev.id);
nsim_bus_dev      303 drivers/net/netdevsim/bus.c 	kfree(nsim_bus_dev);
nsim_bus_dev      331 drivers/net/netdevsim/bus.c 	struct nsim_bus_dev *nsim_bus_dev, *tmp;
nsim_bus_dev      334 drivers/net/netdevsim/bus.c 	list_for_each_entry_safe(nsim_bus_dev, tmp, &nsim_bus_dev_list, list) {
nsim_bus_dev      335 drivers/net/netdevsim/bus.c 		list_del(&nsim_bus_dev->list);
nsim_bus_dev      336 drivers/net/netdevsim/bus.c 		nsim_bus_dev_del(nsim_bus_dev);
nsim_bus_dev       78 drivers/net/netdevsim/dev.c 	sprintf(dev_ddir_name, DRV_NAME "%u", nsim_dev->nsim_bus_dev->dev.id);
nsim_bus_dev      115 drivers/net/netdevsim/dev.c 		nsim_dev->nsim_bus_dev->dev.id);
nsim_bus_dev      661 drivers/net/netdevsim/dev.c nsim_dev_create(struct nsim_bus_dev *nsim_bus_dev, unsigned int port_count)
nsim_bus_dev      671 drivers/net/netdevsim/dev.c 	nsim_dev->nsim_bus_dev = nsim_bus_dev;
nsim_bus_dev      684 drivers/net/netdevsim/dev.c 	err = devlink_register(devlink, &nsim_bus_dev->dev);
nsim_bus_dev      818 drivers/net/netdevsim/dev.c int nsim_dev_probe(struct nsim_bus_dev *nsim_bus_dev)
nsim_bus_dev      824 drivers/net/netdevsim/dev.c 	nsim_dev = nsim_dev_create(nsim_bus_dev, nsim_bus_dev->port_count);
nsim_bus_dev      827 drivers/net/netdevsim/dev.c 	dev_set_drvdata(&nsim_bus_dev->dev, nsim_dev);
nsim_bus_dev      830 drivers/net/netdevsim/dev.c 	for (i = 0; i < nsim_bus_dev->port_count; i++) {
nsim_bus_dev      845 drivers/net/netdevsim/dev.c void nsim_dev_remove(struct nsim_bus_dev *nsim_bus_dev)
nsim_bus_dev      847 drivers/net/netdevsim/dev.c 	struct nsim_dev *nsim_dev = dev_get_drvdata(&nsim_bus_dev->dev);
nsim_bus_dev      864 drivers/net/netdevsim/dev.c int nsim_dev_port_add(struct nsim_bus_dev *nsim_bus_dev,
nsim_bus_dev      867 drivers/net/netdevsim/dev.c 	struct nsim_dev *nsim_dev = dev_get_drvdata(&nsim_bus_dev->dev);
nsim_bus_dev      879 drivers/net/netdevsim/dev.c int nsim_dev_port_del(struct nsim_bus_dev *nsim_bus_dev,
nsim_bus_dev      882 drivers/net/netdevsim/dev.c 	struct nsim_dev *nsim_dev = dev_get_drvdata(&nsim_bus_dev->dev);
nsim_bus_dev       84 drivers/net/netdevsim/netdev.c 	struct nsim_bus_dev *nsim_bus_dev = ns->nsim_bus_dev;
nsim_bus_dev       87 drivers/net/netdevsim/netdev.c 	if (vf >= nsim_bus_dev->num_vfs || is_multicast_ether_addr(mac))
nsim_bus_dev       89 drivers/net/netdevsim/netdev.c 	memcpy(nsim_bus_dev->vfconfigs[vf].vf_mac, mac, ETH_ALEN);
nsim_bus_dev       98 drivers/net/netdevsim/netdev.c 	struct nsim_bus_dev *nsim_bus_dev = ns->nsim_bus_dev;
nsim_bus_dev      100 drivers/net/netdevsim/netdev.c 	if (vf >= nsim_bus_dev->num_vfs || vlan > 4095 || qos > 7)
nsim_bus_dev      103 drivers/net/netdevsim/netdev.c 	nsim_bus_dev->vfconfigs[vf].vlan = vlan;
nsim_bus_dev      104 drivers/net/netdevsim/netdev.c 	nsim_bus_dev->vfconfigs[vf].qos = qos;
nsim_bus_dev      105 drivers/net/netdevsim/netdev.c 	nsim_bus_dev->vfconfigs[vf].vlan_proto = vlan_proto;
nsim_bus_dev      113 drivers/net/netdevsim/netdev.c 	struct nsim_bus_dev *nsim_bus_dev = ns->nsim_bus_dev;
nsim_bus_dev      115 drivers/net/netdevsim/netdev.c 	if (vf >= nsim_bus_dev->num_vfs)
nsim_bus_dev      118 drivers/net/netdevsim/netdev.c 	nsim_bus_dev->vfconfigs[vf].min_tx_rate = min;
nsim_bus_dev      119 drivers/net/netdevsim/netdev.c 	nsim_bus_dev->vfconfigs[vf].max_tx_rate = max;
nsim_bus_dev      127 drivers/net/netdevsim/netdev.c 	struct nsim_bus_dev *nsim_bus_dev = ns->nsim_bus_dev;
nsim_bus_dev      129 drivers/net/netdevsim/netdev.c 	if (vf >= nsim_bus_dev->num_vfs)
nsim_bus_dev      131 drivers/net/netdevsim/netdev.c 	nsim_bus_dev->vfconfigs[vf].spoofchk_enabled = val;
nsim_bus_dev      139 drivers/net/netdevsim/netdev.c 	struct nsim_bus_dev *nsim_bus_dev = ns->nsim_bus_dev;
nsim_bus_dev      141 drivers/net/netdevsim/netdev.c 	if (vf >= nsim_bus_dev->num_vfs)
nsim_bus_dev      143 drivers/net/netdevsim/netdev.c 	nsim_bus_dev->vfconfigs[vf].rss_query_enabled = val;
nsim_bus_dev      151 drivers/net/netdevsim/netdev.c 	struct nsim_bus_dev *nsim_bus_dev = ns->nsim_bus_dev;
nsim_bus_dev      153 drivers/net/netdevsim/netdev.c 	if (vf >= nsim_bus_dev->num_vfs)
nsim_bus_dev      155 drivers/net/netdevsim/netdev.c 	nsim_bus_dev->vfconfigs[vf].trusted = val;
nsim_bus_dev      164 drivers/net/netdevsim/netdev.c 	struct nsim_bus_dev *nsim_bus_dev = ns->nsim_bus_dev;
nsim_bus_dev      166 drivers/net/netdevsim/netdev.c 	if (vf >= nsim_bus_dev->num_vfs)
nsim_bus_dev      170 drivers/net/netdevsim/netdev.c 	ivi->linkstate = nsim_bus_dev->vfconfigs[vf].link_state;
nsim_bus_dev      171 drivers/net/netdevsim/netdev.c 	ivi->min_tx_rate = nsim_bus_dev->vfconfigs[vf].min_tx_rate;
nsim_bus_dev      172 drivers/net/netdevsim/netdev.c 	ivi->max_tx_rate = nsim_bus_dev->vfconfigs[vf].max_tx_rate;
nsim_bus_dev      173 drivers/net/netdevsim/netdev.c 	ivi->vlan = nsim_bus_dev->vfconfigs[vf].vlan;
nsim_bus_dev      174 drivers/net/netdevsim/netdev.c 	ivi->vlan_proto = nsim_bus_dev->vfconfigs[vf].vlan_proto;
nsim_bus_dev      175 drivers/net/netdevsim/netdev.c 	ivi->qos = nsim_bus_dev->vfconfigs[vf].qos;
nsim_bus_dev      176 drivers/net/netdevsim/netdev.c 	memcpy(&ivi->mac, nsim_bus_dev->vfconfigs[vf].vf_mac, ETH_ALEN);
nsim_bus_dev      177 drivers/net/netdevsim/netdev.c 	ivi->spoofchk = nsim_bus_dev->vfconfigs[vf].spoofchk_enabled;
nsim_bus_dev      178 drivers/net/netdevsim/netdev.c 	ivi->trusted = nsim_bus_dev->vfconfigs[vf].trusted;
nsim_bus_dev      179 drivers/net/netdevsim/netdev.c 	ivi->rss_query_en = nsim_bus_dev->vfconfigs[vf].rss_query_enabled;
nsim_bus_dev      187 drivers/net/netdevsim/netdev.c 	struct nsim_bus_dev *nsim_bus_dev = ns->nsim_bus_dev;
nsim_bus_dev      189 drivers/net/netdevsim/netdev.c 	if (vf >= nsim_bus_dev->num_vfs)
nsim_bus_dev      201 drivers/net/netdevsim/netdev.c 	nsim_bus_dev->vfconfigs[vf].link_state = state;
nsim_bus_dev      297 drivers/net/netdevsim/netdev.c 	ns->nsim_bus_dev = nsim_dev->nsim_bus_dev;
nsim_bus_dev      298 drivers/net/netdevsim/netdev.c 	SET_NETDEV_DEV(dev, &ns->nsim_bus_dev->dev);
nsim_bus_dev       60 drivers/net/netdevsim/netdevsim.h 	struct nsim_bus_dev *nsim_bus_dev;
nsim_bus_dev      146 drivers/net/netdevsim/netdevsim.h 	struct nsim_bus_dev *nsim_bus_dev;
nsim_bus_dev      169 drivers/net/netdevsim/netdevsim.h int nsim_dev_probe(struct nsim_bus_dev *nsim_bus_dev);
nsim_bus_dev      170 drivers/net/netdevsim/netdevsim.h void nsim_dev_remove(struct nsim_bus_dev *nsim_bus_dev);
nsim_bus_dev      171 drivers/net/netdevsim/netdevsim.h int nsim_dev_port_add(struct nsim_bus_dev *nsim_bus_dev,
nsim_bus_dev      173 drivers/net/netdevsim/netdevsim.h int nsim_dev_port_del(struct nsim_bus_dev *nsim_bus_dev,