ionic              61 drivers/net/ethernet/pensando/ionic/ionic.h int ionic_dev_cmd_wait(struct ionic *ionic, unsigned long max_wait);
ionic              62 drivers/net/ethernet/pensando/ionic/ionic.h int ionic_set_dma_mask(struct ionic *ionic);
ionic              63 drivers/net/ethernet/pensando/ionic/ionic.h int ionic_setup(struct ionic *ionic);
ionic              65 drivers/net/ethernet/pensando/ionic/ionic.h int ionic_identify(struct ionic *ionic);
ionic              66 drivers/net/ethernet/pensando/ionic/ionic.h int ionic_init(struct ionic *ionic);
ionic              67 drivers/net/ethernet/pensando/ionic/ionic.h int ionic_reset(struct ionic *ionic);
ionic              69 drivers/net/ethernet/pensando/ionic/ionic.h int ionic_port_identify(struct ionic *ionic);
ionic              70 drivers/net/ethernet/pensando/ionic/ionic.h int ionic_port_init(struct ionic *ionic);
ionic              71 drivers/net/ethernet/pensando/ionic/ionic.h int ionic_port_reset(struct ionic *ionic);
ionic               7 drivers/net/ethernet/pensando/ionic/ionic_bus.h int ionic_bus_get_irq(struct ionic *ionic, unsigned int num);
ionic               8 drivers/net/ethernet/pensando/ionic/ionic_bus.h const char *ionic_bus_info(struct ionic *ionic);
ionic               9 drivers/net/ethernet/pensando/ionic/ionic_bus.h int ionic_bus_alloc_irq_vectors(struct ionic *ionic, unsigned int nintrs);
ionic              10 drivers/net/ethernet/pensando/ionic/ionic_bus.h void ionic_bus_free_irq_vectors(struct ionic *ionic);
ionic              13 drivers/net/ethernet/pensando/ionic/ionic_bus.h void __iomem *ionic_bus_map_dbpage(struct ionic *ionic, int page_num);
ionic              14 drivers/net/ethernet/pensando/ionic/ionic_bus.h void ionic_bus_unmap_dbpage(struct ionic *ionic, void __iomem *page);
ionic              22 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c int ionic_bus_get_irq(struct ionic *ionic, unsigned int num)
ionic              24 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	return pci_irq_vector(ionic->pdev, num);
ionic              27 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c const char *ionic_bus_info(struct ionic *ionic)
ionic              29 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	return pci_name(ionic->pdev);
ionic              32 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c int ionic_bus_alloc_irq_vectors(struct ionic *ionic, unsigned int nintrs)
ionic              34 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	return pci_alloc_irq_vectors(ionic->pdev, nintrs, nintrs,
ionic              38 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c void ionic_bus_free_irq_vectors(struct ionic *ionic)
ionic              40 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	pci_free_irq_vectors(ionic->pdev);
ionic              43 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c static int ionic_map_bars(struct ionic *ionic)
ionic              45 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	struct pci_dev *pdev = ionic->pdev;
ionic              46 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	struct device *dev = ionic->dev;
ionic              50 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	bars = ionic->bars;
ionic              51 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	ionic->num_bars = 0;
ionic              73 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 		ionic->num_bars++;
ionic              80 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c static void ionic_unmap_bars(struct ionic *ionic)
ionic              82 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	struct ionic_dev_bar *bars = ionic->bars;
ionic              95 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c void __iomem *ionic_bus_map_dbpage(struct ionic *ionic, int page_num)
ionic              97 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	return pci_iomap_range(ionic->pdev,
ionic              98 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 			       ionic->bars[IONIC_PCI_BAR_DBELL].res_index,
ionic             102 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c void ionic_bus_unmap_dbpage(struct ionic *ionic, void __iomem *page)
ionic             110 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	struct ionic *ionic;
ionic             113 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	ionic = ionic_devlink_alloc(dev);
ionic             114 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	if (!ionic)
ionic             117 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	ionic->pdev = pdev;
ionic             118 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	ionic->dev = dev;
ionic             119 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	pci_set_drvdata(pdev, ionic);
ionic             120 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	mutex_init(&ionic->dev_cmd_lock);
ionic             130 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	ionic_debugfs_add_dev(ionic);
ionic             147 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	err = ionic_map_bars(ionic);
ionic             152 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	err = ionic_setup(ionic);
ionic             158 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	err = ionic_identify(ionic);
ionic             164 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	err = ionic_init(ionic);
ionic             171 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	err = ionic_port_identify(ionic);
ionic             177 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	err = ionic_port_init(ionic);
ionic             184 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	err = ionic_lif_identify(ionic, IONIC_LIF_TYPE_CLASSIC,
ionic             185 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 				 &ionic->ident.lif);
ionic             191 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	err = ionic_lifs_size(ionic);
ionic             197 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	err = ionic_lifs_alloc(ionic);
ionic             203 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	err = ionic_lifs_init(ionic);
ionic             209 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	err = ionic_lifs_register(ionic);
ionic             215 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	err = ionic_devlink_register(ionic);
ionic             224 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	ionic_lifs_unregister(ionic);
ionic             226 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	ionic_lifs_deinit(ionic);
ionic             228 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	ionic_lifs_free(ionic);
ionic             230 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	ionic_bus_free_irq_vectors(ionic);
ionic             232 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	ionic_port_reset(ionic);
ionic             234 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	ionic_reset(ionic);
ionic             236 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	ionic_dev_teardown(ionic);
ionic             238 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	ionic_unmap_bars(ionic);
ionic             245 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	ionic_debugfs_del_dev(ionic);
ionic             247 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	mutex_destroy(&ionic->dev_cmd_lock);
ionic             248 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	ionic_devlink_free(ionic);
ionic             255 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	struct ionic *ionic = pci_get_drvdata(pdev);
ionic             257 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	if (!ionic)
ionic             260 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	ionic_devlink_unregister(ionic);
ionic             261 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	ionic_lifs_unregister(ionic);
ionic             262 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	ionic_lifs_deinit(ionic);
ionic             263 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	ionic_lifs_free(ionic);
ionic             264 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	ionic_bus_free_irq_vectors(ionic);
ionic             265 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	ionic_port_reset(ionic);
ionic             266 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	ionic_reset(ionic);
ionic             267 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	ionic_dev_teardown(ionic);
ionic             268 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	ionic_unmap_bars(ionic);
ionic             272 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	ionic_debugfs_del_dev(ionic);
ionic             273 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	mutex_destroy(&ionic->dev_cmd_lock);
ionic             274 drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c 	ionic_devlink_free(ionic);
ionic              26 drivers/net/ethernet/pensando/ionic/ionic_debugfs.c void ionic_debugfs_add_dev(struct ionic *ionic)
ionic              28 drivers/net/ethernet/pensando/ionic/ionic_debugfs.c 	ionic->dentry = debugfs_create_dir(ionic_bus_info(ionic), ionic_dir);
ionic              31 drivers/net/ethernet/pensando/ionic/ionic_debugfs.c void ionic_debugfs_del_dev(struct ionic *ionic)
ionic              33 drivers/net/ethernet/pensando/ionic/ionic_debugfs.c 	debugfs_remove_recursive(ionic->dentry);
ionic              34 drivers/net/ethernet/pensando/ionic/ionic_debugfs.c 	ionic->dentry = NULL;
ionic              39 drivers/net/ethernet/pensando/ionic/ionic_debugfs.c 	struct ionic *ionic = seq->private;
ionic              42 drivers/net/ethernet/pensando/ionic/ionic_debugfs.c 	ident = &ionic->ident;
ionic              57 drivers/net/ethernet/pensando/ionic/ionic_debugfs.c void ionic_debugfs_add_ident(struct ionic *ionic)
ionic              59 drivers/net/ethernet/pensando/ionic/ionic_debugfs.c 	debugfs_create_file("identity", 0400, ionic->dentry,
ionic              60 drivers/net/ethernet/pensando/ionic/ionic_debugfs.c 			    ionic, &identity_fops);
ionic              63 drivers/net/ethernet/pensando/ionic/ionic_debugfs.c void ionic_debugfs_add_sizes(struct ionic *ionic)
ionic              65 drivers/net/ethernet/pensando/ionic/ionic_debugfs.c 	debugfs_create_u32("nlifs", 0400, ionic->dentry,
ionic              66 drivers/net/ethernet/pensando/ionic/ionic_debugfs.c 			   (u32 *)&ionic->ident.dev.nlifs);
ionic              67 drivers/net/ethernet/pensando/ionic/ionic_debugfs.c 	debugfs_create_u32("nintrs", 0400, ionic->dentry, &ionic->nintrs);
ionic              69 drivers/net/ethernet/pensando/ionic/ionic_debugfs.c 	debugfs_create_u32("ntxqs_per_lif", 0400, ionic->dentry,
ionic              70 drivers/net/ethernet/pensando/ionic/ionic_debugfs.c 			   (u32 *)&ionic->ident.lif.eth.config.queue_count[IONIC_QTYPE_TXQ]);
ionic              71 drivers/net/ethernet/pensando/ionic/ionic_debugfs.c 	debugfs_create_u32("nrxqs_per_lif", 0400, ionic->dentry,
ionic              72 drivers/net/ethernet/pensando/ionic/ionic_debugfs.c 			   (u32 *)&ionic->ident.lif.eth.config.queue_count[IONIC_QTYPE_RXQ]);
ionic             116 drivers/net/ethernet/pensando/ionic/ionic_debugfs.c 	struct ionic_dev *idev = &lif->ionic->idev;
ionic             120 drivers/net/ethernet/pensando/ionic/ionic_debugfs.c 	struct device *dev = lif->ionic->dev;
ionic             231 drivers/net/ethernet/pensando/ionic/ionic_debugfs.c 	lif->dentry = debugfs_create_dir(lif->name, lif->ionic->dentry);
ionic              13 drivers/net/ethernet/pensando/ionic/ionic_debugfs.h void ionic_debugfs_add_dev(struct ionic *ionic);
ionic              14 drivers/net/ethernet/pensando/ionic/ionic_debugfs.h void ionic_debugfs_del_dev(struct ionic *ionic);
ionic              15 drivers/net/ethernet/pensando/ionic/ionic_debugfs.h void ionic_debugfs_add_ident(struct ionic *ionic);
ionic              16 drivers/net/ethernet/pensando/ionic/ionic_debugfs.h void ionic_debugfs_add_sizes(struct ionic *ionic);
ionic              24 drivers/net/ethernet/pensando/ionic/ionic_debugfs.h static inline void ionic_debugfs_add_dev(struct ionic *ionic) { }
ionic              25 drivers/net/ethernet/pensando/ionic/ionic_debugfs.h static inline void ionic_debugfs_del_dev(struct ionic *ionic) { }
ionic              26 drivers/net/ethernet/pensando/ionic/ionic_debugfs.h static inline void ionic_debugfs_add_ident(struct ionic *ionic) { }
ionic              27 drivers/net/ethernet/pensando/ionic/ionic_debugfs.h static inline void ionic_debugfs_add_sizes(struct ionic *ionic) { }
ionic              14 drivers/net/ethernet/pensando/ionic/ionic_dev.c void ionic_init_devinfo(struct ionic *ionic)
ionic              16 drivers/net/ethernet/pensando/ionic/ionic_dev.c 	struct ionic_dev *idev = &ionic->idev;
ionic              32 drivers/net/ethernet/pensando/ionic/ionic_dev.c 	dev_dbg(ionic->dev, "fw_version %s\n", idev->dev_info.fw_version);
ionic              35 drivers/net/ethernet/pensando/ionic/ionic_dev.c int ionic_dev_setup(struct ionic *ionic)
ionic              37 drivers/net/ethernet/pensando/ionic/ionic_dev.c 	struct ionic_dev_bar *bar = ionic->bars;
ionic              38 drivers/net/ethernet/pensando/ionic/ionic_dev.c 	unsigned int num_bars = ionic->num_bars;
ionic              39 drivers/net/ethernet/pensando/ionic/ionic_dev.c 	struct ionic_dev *idev = &ionic->idev;
ionic              40 drivers/net/ethernet/pensando/ionic/ionic_dev.c 	struct device *dev = ionic->dev;
ionic              66 drivers/net/ethernet/pensando/ionic/ionic_dev.c 	ionic_init_devinfo(ionic);
ionic              81 drivers/net/ethernet/pensando/ionic/ionic_dev.c void ionic_dev_teardown(struct ionic *ionic)
ionic             443 drivers/net/ethernet/pensando/ionic/ionic_dev.c 	struct device *dev = q->lif->ionic->dev;
ionic             483 drivers/net/ethernet/pensando/ionic/ionic_dev.c 		dev_err(q->lif->ionic->dev,
ionic             218 drivers/net/ethernet/pensando/ionic/ionic_dev.h struct ionic;
ionic             245 drivers/net/ethernet/pensando/ionic/ionic_dev.h void ionic_init_devinfo(struct ionic *ionic);
ionic             246 drivers/net/ethernet/pensando/ionic/ionic_dev.h int ionic_dev_setup(struct ionic *ionic);
ionic             247 drivers/net/ethernet/pensando/ionic/ionic_dev.h void ionic_dev_teardown(struct ionic *ionic);
ionic              15 drivers/net/ethernet/pensando/ionic/ionic_devlink.c 	struct ionic *ionic = devlink_priv(dl);
ionic              16 drivers/net/ethernet/pensando/ionic/ionic_devlink.c 	struct ionic_dev *idev = &ionic->idev;
ionic              54 drivers/net/ethernet/pensando/ionic/ionic_devlink.c struct ionic *ionic_devlink_alloc(struct device *dev)
ionic              58 drivers/net/ethernet/pensando/ionic/ionic_devlink.c 	dl = devlink_alloc(&ionic_dl_ops, sizeof(struct ionic));
ionic              63 drivers/net/ethernet/pensando/ionic/ionic_devlink.c void ionic_devlink_free(struct ionic *ionic)
ionic              65 drivers/net/ethernet/pensando/ionic/ionic_devlink.c 	struct devlink *dl = priv_to_devlink(ionic);
ionic              70 drivers/net/ethernet/pensando/ionic/ionic_devlink.c int ionic_devlink_register(struct ionic *ionic)
ionic              72 drivers/net/ethernet/pensando/ionic/ionic_devlink.c 	struct devlink *dl = priv_to_devlink(ionic);
ionic              75 drivers/net/ethernet/pensando/ionic/ionic_devlink.c 	err = devlink_register(dl, ionic->dev);
ionic              77 drivers/net/ethernet/pensando/ionic/ionic_devlink.c 		dev_warn(ionic->dev, "devlink_register failed: %d\n", err);
ionic              81 drivers/net/ethernet/pensando/ionic/ionic_devlink.c 	devlink_port_attrs_set(&ionic->dl_port, DEVLINK_PORT_FLAVOUR_PHYSICAL,
ionic              83 drivers/net/ethernet/pensando/ionic/ionic_devlink.c 	err = devlink_port_register(dl, &ionic->dl_port, 0);
ionic              85 drivers/net/ethernet/pensando/ionic/ionic_devlink.c 		dev_err(ionic->dev, "devlink_port_register failed: %d\n", err);
ionic              87 drivers/net/ethernet/pensando/ionic/ionic_devlink.c 		devlink_port_type_eth_set(&ionic->dl_port,
ionic              88 drivers/net/ethernet/pensando/ionic/ionic_devlink.c 					  ionic->master_lif->netdev);
ionic              93 drivers/net/ethernet/pensando/ionic/ionic_devlink.c void ionic_devlink_unregister(struct ionic *ionic)
ionic              95 drivers/net/ethernet/pensando/ionic/ionic_devlink.c 	struct devlink *dl = priv_to_devlink(ionic);
ionic              97 drivers/net/ethernet/pensando/ionic/ionic_devlink.c 	devlink_port_unregister(&ionic->dl_port);
ionic               9 drivers/net/ethernet/pensando/ionic/ionic_devlink.h struct ionic *ionic_devlink_alloc(struct device *dev);
ionic              10 drivers/net/ethernet/pensando/ionic/ionic_devlink.h void ionic_devlink_free(struct ionic *ionic);
ionic              11 drivers/net/ethernet/pensando/ionic/ionic_devlink.h int ionic_devlink_register(struct ionic *ionic);
ionic              12 drivers/net/ethernet/pensando/ionic/ionic_devlink.h void ionic_devlink_unregister(struct ionic *ionic);
ionic              86 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c 	struct ionic *ionic = lif->ionic;
ionic              90 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c 	strlcpy(drvinfo->fw_version, ionic->idev.dev_info.fw_version,
ionic              92 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c 	strlcpy(drvinfo->bus_info, ionic_bus_info(ionic),
ionic             110 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c 	memcpy_fromio(p, lif->ionic->idev.dev_info_regs->words, size);
ionic             113 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c 	memcpy_fromio(p, lif->ionic->idev.dev_cmd_regs->words, size);
ionic             120 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c 	struct ionic_dev *idev = &lif->ionic->idev;
ionic             204 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c 		dev_info(lif->ionic->dev, "unknown xcvr type pid=%d / 0x%x\n",
ionic             255 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c 	struct ionic *ionic = lif->ionic;
ionic             261 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c 	idev = &lif->ionic->idev;
ionic             266 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c 		mutex_lock(&ionic->dev_cmd_lock);
ionic             268 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c 		err = ionic_dev_cmd_wait(ionic, DEVCMD_TIMEOUT);
ionic             269 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c 		mutex_unlock(&ionic->dev_cmd_lock);
ionic             276 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c 		mutex_lock(&ionic->dev_cmd_lock);
ionic             278 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c 		err = ionic_dev_cmd_wait(ionic, DEVCMD_TIMEOUT);
ionic             279 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c 		mutex_unlock(&ionic->dev_cmd_lock);
ionic             299 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c 		mutex_lock(&ionic->dev_cmd_lock);
ionic             301 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c 		err = ionic_dev_cmd_wait(ionic, DEVCMD_TIMEOUT);
ionic             302 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c 		mutex_unlock(&ionic->dev_cmd_lock);
ionic             318 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c 	pause_type = lif->ionic->idev.port_info->config.pause_type;
ionic             329 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c 	struct ionic *ionic = lif->ionic;
ionic             343 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c 	if (requested_pause == lif->ionic->idev.port_info->config.pause_type)
ionic             346 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c 	mutex_lock(&ionic->dev_cmd_lock);
ionic             347 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c 	ionic_dev_cmd_port_pause(&lif->ionic->idev, requested_pause);
ionic             348 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c 	err = ionic_dev_cmd_wait(ionic, DEVCMD_TIMEOUT);
ionic             349 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c 	mutex_unlock(&ionic->dev_cmd_lock);
ionic             400 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c 	ident = &lif->ionic->ident;
ionic             413 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c 	coal = ionic_coal_usec_to_hw(lif->ionic, coalesce->rx_coalesce_usecs);
ionic             423 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c 	usecs = ionic_coal_hw_to_usec(lif->ionic, coal);
ionic             431 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c 				ionic_intr_coal_init(lif->ionic->idev.intr_ctrl,
ionic             496 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c 	ch->max_combined = lif->ionic->ntxqs_per_lif;
ionic             580 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c 	return le16_to_cpu(lif->ionic->ident.lif.eth.rss_ind_tbl_sz);
ionic             595 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c 		tbl_sz = le16_to_cpu(lif->ionic->ident.lif.eth.rss_ind_tbl_sz);
ionic             663 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c 	struct ionic_dev *idev = &lif->ionic->idev;
ionic             693 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c 	struct ionic_dev *idev = &lif->ionic->idev;
ionic             724 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c 	struct ionic *ionic = lif->ionic;
ionic             729 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c 	mutex_lock(&ionic->dev_cmd_lock);
ionic             731 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c 	ionic_dev_cmd_port_state(&ionic->idev, IONIC_PORT_ADMIN_STATE_DOWN);
ionic             732 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c 	err = ionic_dev_cmd_wait(ionic, DEVCMD_TIMEOUT);
ionic             735 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c 		ionic_dev_cmd_port_state(&ionic->idev, IONIC_PORT_ADMIN_STATE_UP);
ionic             736 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c 		err = ionic_dev_cmd_wait(ionic, DEVCMD_TIMEOUT);
ionic             739 drivers/net/ethernet/pensando/ionic/ionic_ethtool.c 	mutex_unlock(&ionic->dev_cmd_lock);
ionic             136 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	struct device *dev = lif->ionic->dev;
ionic             154 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	struct ionic *ionic = lif->ionic;
ionic             157 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	index = find_first_zero_bit(ionic->intrs, ionic->nintrs);
ionic             158 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	if (index == ionic->nintrs) {
ionic             160 drivers/net/ethernet/pensando/ionic/ionic_lif.c 			    __func__, index, ionic->nintrs);
ionic             164 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	set_bit(index, ionic->intrs);
ionic             165 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	ionic_intr_init(&ionic->idev, intr, index);
ionic             172 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	if (index != INTR_INDEX_NOT_ASSIGNED && index < lif->ionic->nintrs)
ionic             173 drivers/net/ethernet/pensando/ionic/ionic_lif.c 		clear_bit(index, lif->ionic->intrs);
ionic             194 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	idev = &lif->ionic->idev;
ionic             195 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	dev = lif->ionic->dev;
ionic             230 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	idev = &lif->ionic->idev;
ionic             231 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	dev = lif->ionic->dev;
ionic             249 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	struct ionic_dev *idev = &lif->ionic->idev;
ionic             250 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	struct device *dev = lif->ionic->dev;
ionic             272 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	struct device *dev = lif->ionic->dev;
ionic             293 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	struct device *dev = lif->ionic->dev;
ionic             341 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	struct ionic_dev *idev = &lif->ionic->idev;
ionic             343 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	struct device *dev = lif->ionic->dev;
ionic             402 drivers/net/ethernet/pensando/ionic/ionic_lif.c 		err = ionic_bus_get_irq(lif->ionic, new->intr.index);
ionic             474 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	struct device *dev = lif->ionic->dev;
ionic             489 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	if (lif->ionic->nnqs_per_lif) {
ionic             555 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	struct device *dev = lif->ionic->dev;
ionic             602 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	struct device *dev = lif->ionic->dev;
ionic             674 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	dev_dbg(lif->ionic->dev, "notifyq event:\n");
ionic             700 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	struct ionic_dev *idev = &lif->ionic->idev;
ionic             858 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	struct ionic *ionic = lif->ionic;
ionic             868 drivers/net/ethernet/pensando/ionic/ionic_lif.c 		nmfilters = le32_to_cpu(ionic->ident.lif.eth.max_mcast_filters);
ionic             869 drivers/net/ethernet/pensando/ionic/ionic_lif.c 		nufilters = le32_to_cpu(ionic->ident.lif.eth.max_ucast_filters);
ionic             982 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	ident = &lif->ionic->ident;
ionic            1067 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	struct device *dev = lif->ionic->dev;
ionic            1091 drivers/net/ethernet/pensando/ionic/ionic_lif.c 		dev_info_once(lif->ionic->dev, "NIC is not supporting vlan offload, likely in SmartNIC mode\n");
ionic            1354 drivers/net/ethernet/pensando/ionic/ionic_lif.c 		tbl_sz = le16_to_cpu(lif->ionic->ident.lif.eth.rss_ind_tbl_sz);
ionic            1378 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	tbl_sz = le16_to_cpu(lif->ionic->ident.lif.eth.rss_ind_tbl_sz);
ionic            1389 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	tbl_sz = le16_to_cpu(lif->ionic->ident.lif.eth.rss_ind_tbl_sz);
ionic            1455 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	coal = ionic_coal_usec_to_hw(lif->ionic, lif->rx_coalesce_usecs);
ionic            1467 drivers/net/ethernet/pensando/ionic/ionic_lif.c 		ionic_intr_coal_init(lif->ionic->idev.intr_ctrl,
ionic            1585 drivers/net/ethernet/pensando/ionic/ionic_lif.c 		dev_dbg(lif->ionic->dev, "%s: %s state=DOWN\n",
ionic            1589 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	dev_dbg(lif->ionic->dev, "%s: %s state=UP\n", __func__, lif->name);
ionic            1641 drivers/net/ethernet/pensando/ionic/ionic_lif.c static struct ionic_lif *ionic_lif_alloc(struct ionic *ionic, unsigned int index)
ionic            1643 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	struct device *dev = ionic->dev;
ionic            1651 drivers/net/ethernet/pensando/ionic/ionic_lif.c 				    ionic->ntxqs_per_lif, ionic->ntxqs_per_lif);
ionic            1661 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	ionic->master_lif = lif;
ionic            1669 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	lif->neqs = ionic->neqs_per_lif;
ionic            1670 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	lif->nxqs = ionic->ntxqs_per_lif;
ionic            1672 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	lif->ionic = ionic;
ionic            1678 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	coal = ionic_coal_usec_to_hw(lif->ionic, IONIC_ITR_COAL_USEC_DEFAULT);
ionic            1679 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	lif->rx_coalesce_usecs = ionic_coal_hw_to_usec(lif->ionic, coal);
ionic            1705 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	tbl_sz = le16_to_cpu(lif->ionic->ident.lif.eth.rss_ind_tbl_sz);
ionic            1718 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	list_add_tail(&lif->list, &ionic->lifs);
ionic            1735 drivers/net/ethernet/pensando/ionic/ionic_lif.c int ionic_lifs_alloc(struct ionic *ionic)
ionic            1739 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	INIT_LIST_HEAD(&ionic->lifs);
ionic            1742 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	set_bit(0, ionic->lifbits);
ionic            1743 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	lif = ionic_lif_alloc(ionic, 0);
ionic            1750 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	struct ionic_dev *idev = &lif->ionic->idev;
ionic            1752 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	mutex_lock(&lif->ionic->dev_cmd_lock);
ionic            1754 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	ionic_dev_cmd_wait(lif->ionic, DEVCMD_TIMEOUT);
ionic            1755 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	mutex_unlock(&lif->ionic->dev_cmd_lock);
ionic            1760 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	struct device *dev = lif->ionic->dev;
ionic            1778 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	ionic_bus_unmap_dbpage(lif->ionic, lif->kern_dbpage);
ionic            1789 drivers/net/ethernet/pensando/ionic/ionic_lif.c void ionic_lifs_free(struct ionic *ionic)
ionic            1794 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	list_for_each_safe(cur, tmp, &ionic->lifs) {
ionic            1818 drivers/net/ethernet/pensando/ionic/ionic_lif.c void ionic_lifs_deinit(struct ionic *ionic)
ionic            1823 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	list_for_each_safe(cur, tmp, &ionic->lifs) {
ionic            1831 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	struct device *dev = lif->ionic->dev;
ionic            1838 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	idev = &lif->ionic->idev;
ionic            1842 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	mutex_lock(&lif->ionic->dev_cmd_lock);
ionic            1844 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	err = ionic_dev_cmd_wait(lif->ionic, DEVCMD_TIMEOUT);
ionic            1846 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	mutex_unlock(&lif->ionic->dev_cmd_lock);
ionic            1885 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	struct device *dev = lif->ionic->dev;
ionic            1971 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	struct ionic_dev *idev = &lif->ionic->idev;
ionic            1972 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	struct device *dev = lif->ionic->dev;
ionic            1979 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	mutex_lock(&lif->ionic->dev_cmd_lock);
ionic            1981 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	err = ionic_dev_cmd_wait(lif->ionic, DEVCMD_TIMEOUT);
ionic            1983 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	mutex_unlock(&lif->ionic->dev_cmd_lock);
ionic            1990 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	lif->dbid_count = le32_to_cpu(lif->ionic->ident.dev.ndbpgs_per_lif);
ionic            2007 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	lif->kern_dbpage = ionic_bus_map_dbpage(lif->ionic, dbpage_num);
ionic            2018 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	if (lif->ionic->nnqs_per_lif) {
ionic            2049 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	ionic_bus_unmap_dbpage(lif->ionic, lif->kern_dbpage);
ionic            2058 drivers/net/ethernet/pensando/ionic/ionic_lif.c int ionic_lifs_init(struct ionic *ionic)
ionic            2064 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	list_for_each_safe(cur, tmp, &ionic->lifs) {
ionic            2107 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	struct ionic *ionic = container_of(nb, struct ionic, nb);
ionic            2110 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	if (!lif || lif->ionic != ionic)
ionic            2122 drivers/net/ethernet/pensando/ionic/ionic_lif.c int ionic_lifs_register(struct ionic *ionic)
ionic            2126 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	INIT_WORK(&ionic->nb_work, ionic_lif_notify_work);
ionic            2128 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	ionic->nb.notifier_call = ionic_lif_notify;
ionic            2130 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	err = register_netdevice_notifier(&ionic->nb);
ionic            2132 drivers/net/ethernet/pensando/ionic/ionic_lif.c 		ionic->nb.notifier_call = NULL;
ionic            2135 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	err = register_netdev(ionic->master_lif->netdev);
ionic            2137 drivers/net/ethernet/pensando/ionic/ionic_lif.c 		dev_err(ionic->dev, "Cannot register net device, aborting\n");
ionic            2141 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	ionic_link_status_check_request(ionic->master_lif);
ionic            2142 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	ionic->master_lif->registered = true;
ionic            2147 drivers/net/ethernet/pensando/ionic/ionic_lif.c void ionic_lifs_unregister(struct ionic *ionic)
ionic            2149 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	if (ionic->nb.notifier_call) {
ionic            2150 drivers/net/ethernet/pensando/ionic/ionic_lif.c 		unregister_netdevice_notifier(&ionic->nb);
ionic            2151 drivers/net/ethernet/pensando/ionic/ionic_lif.c 		cancel_work_sync(&ionic->nb_work);
ionic            2152 drivers/net/ethernet/pensando/ionic/ionic_lif.c 		ionic->nb.notifier_call = NULL;
ionic            2159 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	cancel_work_sync(&ionic->master_lif->deferred.work);
ionic            2160 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	cancel_work_sync(&ionic->master_lif->tx_timeout_work);
ionic            2161 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	if (ionic->master_lif->netdev->reg_state == NETREG_REGISTERED)
ionic            2162 drivers/net/ethernet/pensando/ionic/ionic_lif.c 		unregister_netdev(ionic->master_lif->netdev);
ionic            2165 drivers/net/ethernet/pensando/ionic/ionic_lif.c int ionic_lif_identify(struct ionic *ionic, u8 lif_type,
ionic            2168 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	struct ionic_dev *idev = &ionic->idev;
ionic            2174 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	mutex_lock(&ionic->dev_cmd_lock);
ionic            2176 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	err = ionic_dev_cmd_wait(ionic, DEVCMD_TIMEOUT);
ionic            2178 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	mutex_unlock(&ionic->dev_cmd_lock);
ionic            2182 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	dev_dbg(ionic->dev, "capabilities 0x%llx\n",
ionic            2185 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	dev_dbg(ionic->dev, "eth.max_ucast_filters %d\n",
ionic            2187 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	dev_dbg(ionic->dev, "eth.max_mcast_filters %d\n",
ionic            2189 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	dev_dbg(ionic->dev, "eth.features 0x%llx\n",
ionic            2191 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	dev_dbg(ionic->dev, "eth.queue_count[IONIC_QTYPE_ADMINQ] %d\n",
ionic            2193 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	dev_dbg(ionic->dev, "eth.queue_count[IONIC_QTYPE_NOTIFYQ] %d\n",
ionic            2195 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	dev_dbg(ionic->dev, "eth.queue_count[IONIC_QTYPE_RXQ] %d\n",
ionic            2197 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	dev_dbg(ionic->dev, "eth.queue_count[IONIC_QTYPE_TXQ] %d\n",
ionic            2199 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	dev_dbg(ionic->dev, "eth.config.name %s\n", lid->eth.config.name);
ionic            2200 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	dev_dbg(ionic->dev, "eth.config.mac %pM\n", lid->eth.config.mac);
ionic            2201 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	dev_dbg(ionic->dev, "eth.config.mtu %d\n",
ionic            2207 drivers/net/ethernet/pensando/ionic/ionic_lif.c int ionic_lifs_size(struct ionic *ionic)
ionic            2209 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	struct ionic_identity *ident = &ionic->ident;
ionic            2243 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	err = ionic_bus_alloc_irq_vectors(ionic, nintrs);
ionic            2245 drivers/net/ethernet/pensando/ionic/ionic_lif.c 		dev_err(ionic->dev, "Can't get intrs from OS: %d\n", err);
ionic            2252 drivers/net/ethernet/pensando/ionic/ionic_lif.c 		ionic_bus_free_irq_vectors(ionic);
ionic            2256 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	ionic->nnqs_per_lif = nnqs_per_lif;
ionic            2257 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	ionic->neqs_per_lif = neqs;
ionic            2258 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	ionic->ntxqs_per_lif = nxqs;
ionic            2259 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	ionic->nrxqs_per_lif = nxqs;
ionic            2260 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	ionic->nintrs = nintrs;
ionic            2262 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	ionic_debugfs_add_sizes(ionic);
ionic            2279 drivers/net/ethernet/pensando/ionic/ionic_lif.c 	dev_err(ionic->dev, "Can't get minimum %d intrs from OS\n", min_intrs);
ionic             139 drivers/net/ethernet/pensando/ionic/ionic_lif.h 	struct ionic *ionic;
ionic             201 drivers/net/ethernet/pensando/ionic/ionic_lif.h static inline u32 ionic_coal_usec_to_hw(struct ionic *ionic, u32 usecs)
ionic             203 drivers/net/ethernet/pensando/ionic/ionic_lif.h 	u32 mult = le32_to_cpu(ionic->ident.dev.intr_coal_mult);
ionic             204 drivers/net/ethernet/pensando/ionic/ionic_lif.h 	u32 div = le32_to_cpu(ionic->ident.dev.intr_coal_div);
ionic             217 drivers/net/ethernet/pensando/ionic/ionic_lif.h static inline u32 ionic_coal_hw_to_usec(struct ionic *ionic, u32 units)
ionic             219 drivers/net/ethernet/pensando/ionic/ionic_lif.h 	u32 mult = le32_to_cpu(ionic->ident.dev.intr_coal_mult);
ionic             220 drivers/net/ethernet/pensando/ionic/ionic_lif.h 	u32 div = le32_to_cpu(ionic->ident.dev.intr_coal_div);
ionic             230 drivers/net/ethernet/pensando/ionic/ionic_lif.h int ionic_lifs_alloc(struct ionic *ionic);
ionic             231 drivers/net/ethernet/pensando/ionic/ionic_lif.h void ionic_lifs_free(struct ionic *ionic);
ionic             232 drivers/net/ethernet/pensando/ionic/ionic_lif.h void ionic_lifs_deinit(struct ionic *ionic);
ionic             233 drivers/net/ethernet/pensando/ionic/ionic_lif.h int ionic_lifs_init(struct ionic *ionic);
ionic             234 drivers/net/ethernet/pensando/ionic/ionic_lif.h int ionic_lifs_register(struct ionic *ionic);
ionic             235 drivers/net/ethernet/pensando/ionic/ionic_lif.h void ionic_lifs_unregister(struct ionic *ionic);
ionic             236 drivers/net/ethernet/pensando/ionic/ionic_lif.h int ionic_lif_identify(struct ionic *ionic, u8 lif_type,
ionic             238 drivers/net/ethernet/pensando/ionic/ionic_lif.h int ionic_lifs_size(struct ionic *ionic);
ionic             300 drivers/net/ethernet/pensando/ionic/ionic_main.c 		ionic_intr_credits(cq->lif->ionic->idev.intr_ctrl,
ionic             310 drivers/net/ethernet/pensando/ionic/ionic_main.c int ionic_dev_cmd_wait(struct ionic *ionic, unsigned long max_seconds)
ionic             312 drivers/net/ethernet/pensando/ionic/ionic_main.c 	struct ionic_dev *idev = &ionic->idev;
ionic             337 drivers/net/ethernet/pensando/ionic/ionic_main.c 	dev_dbg(ionic->dev, "DEVCMD %s (%d) done=%d took %ld secs (%ld jiffies)\n",
ionic             342 drivers/net/ethernet/pensando/ionic/ionic_main.c 		dev_warn(ionic->dev, "DEVCMD %s (%d) timeout after %ld secs\n",
ionic             347 drivers/net/ethernet/pensando/ionic/ionic_main.c 	err = ionic_dev_cmd_status(&ionic->idev);
ionic             350 drivers/net/ethernet/pensando/ionic/ionic_main.c 			dev_err(ionic->dev, "DEV_CMD %s (%d) error, %s (%d) retrying...\n",
ionic             360 drivers/net/ethernet/pensando/ionic/ionic_main.c 		dev_err(ionic->dev, "DEV_CMD %s (%d) error, %s (%d) failed\n",
ionic             370 drivers/net/ethernet/pensando/ionic/ionic_main.c int ionic_setup(struct ionic *ionic)
ionic             374 drivers/net/ethernet/pensando/ionic/ionic_main.c 	err = ionic_dev_setup(ionic);
ionic             381 drivers/net/ethernet/pensando/ionic/ionic_main.c int ionic_identify(struct ionic *ionic)
ionic             383 drivers/net/ethernet/pensando/ionic/ionic_main.c 	struct ionic_identity *ident = &ionic->ident;
ionic             384 drivers/net/ethernet/pensando/ionic/ionic_main.c 	struct ionic_dev *idev = &ionic->idev;
ionic             394 drivers/net/ethernet/pensando/ionic/ionic_main.c 	mutex_lock(&ionic->dev_cmd_lock);
ionic             400 drivers/net/ethernet/pensando/ionic/ionic_main.c 	err = ionic_dev_cmd_wait(ionic, DEVCMD_TIMEOUT);
ionic             406 drivers/net/ethernet/pensando/ionic/ionic_main.c 	mutex_unlock(&ionic->dev_cmd_lock);
ionic             411 drivers/net/ethernet/pensando/ionic/ionic_main.c 	ionic_debugfs_add_ident(ionic);
ionic             419 drivers/net/ethernet/pensando/ionic/ionic_main.c int ionic_init(struct ionic *ionic)
ionic             421 drivers/net/ethernet/pensando/ionic/ionic_main.c 	struct ionic_dev *idev = &ionic->idev;
ionic             424 drivers/net/ethernet/pensando/ionic/ionic_main.c 	mutex_lock(&ionic->dev_cmd_lock);
ionic             426 drivers/net/ethernet/pensando/ionic/ionic_main.c 	err = ionic_dev_cmd_wait(ionic, DEVCMD_TIMEOUT);
ionic             427 drivers/net/ethernet/pensando/ionic/ionic_main.c 	mutex_unlock(&ionic->dev_cmd_lock);
ionic             432 drivers/net/ethernet/pensando/ionic/ionic_main.c int ionic_reset(struct ionic *ionic)
ionic             434 drivers/net/ethernet/pensando/ionic/ionic_main.c 	struct ionic_dev *idev = &ionic->idev;
ionic             437 drivers/net/ethernet/pensando/ionic/ionic_main.c 	mutex_lock(&ionic->dev_cmd_lock);
ionic             439 drivers/net/ethernet/pensando/ionic/ionic_main.c 	err = ionic_dev_cmd_wait(ionic, DEVCMD_TIMEOUT);
ionic             440 drivers/net/ethernet/pensando/ionic/ionic_main.c 	mutex_unlock(&ionic->dev_cmd_lock);
ionic             445 drivers/net/ethernet/pensando/ionic/ionic_main.c int ionic_port_identify(struct ionic *ionic)
ionic             447 drivers/net/ethernet/pensando/ionic/ionic_main.c 	struct ionic_identity *ident = &ionic->ident;
ionic             448 drivers/net/ethernet/pensando/ionic/ionic_main.c 	struct ionic_dev *idev = &ionic->idev;
ionic             452 drivers/net/ethernet/pensando/ionic/ionic_main.c 	mutex_lock(&ionic->dev_cmd_lock);
ionic             455 drivers/net/ethernet/pensando/ionic/ionic_main.c 	err = ionic_dev_cmd_wait(ionic, DEVCMD_TIMEOUT);
ionic             461 drivers/net/ethernet/pensando/ionic/ionic_main.c 	mutex_unlock(&ionic->dev_cmd_lock);
ionic             466 drivers/net/ethernet/pensando/ionic/ionic_main.c int ionic_port_init(struct ionic *ionic)
ionic             468 drivers/net/ethernet/pensando/ionic/ionic_main.c 	struct ionic_identity *ident = &ionic->ident;
ionic             469 drivers/net/ethernet/pensando/ionic/ionic_main.c 	struct ionic_dev *idev = &ionic->idev;
ionic             477 drivers/net/ethernet/pensando/ionic/ionic_main.c 	idev->port_info = dma_alloc_coherent(ionic->dev, idev->port_info_sz,
ionic             481 drivers/net/ethernet/pensando/ionic/ionic_main.c 		dev_err(ionic->dev, "Failed to allocate port info, aborting\n");
ionic             487 drivers/net/ethernet/pensando/ionic/ionic_main.c 	mutex_lock(&ionic->dev_cmd_lock);
ionic             491 drivers/net/ethernet/pensando/ionic/ionic_main.c 	err = ionic_dev_cmd_wait(ionic, DEVCMD_TIMEOUT);
ionic             493 drivers/net/ethernet/pensando/ionic/ionic_main.c 	ionic_dev_cmd_port_state(&ionic->idev, IONIC_PORT_ADMIN_STATE_UP);
ionic             494 drivers/net/ethernet/pensando/ionic/ionic_main.c 	(void)ionic_dev_cmd_wait(ionic, DEVCMD_TIMEOUT);
ionic             496 drivers/net/ethernet/pensando/ionic/ionic_main.c 	mutex_unlock(&ionic->dev_cmd_lock);
ionic             498 drivers/net/ethernet/pensando/ionic/ionic_main.c 		dev_err(ionic->dev, "Failed to init port\n");
ionic             499 drivers/net/ethernet/pensando/ionic/ionic_main.c 		dma_free_coherent(ionic->dev, idev->port_info_sz,
ionic             508 drivers/net/ethernet/pensando/ionic/ionic_main.c int ionic_port_reset(struct ionic *ionic)
ionic             510 drivers/net/ethernet/pensando/ionic/ionic_main.c 	struct ionic_dev *idev = &ionic->idev;
ionic             516 drivers/net/ethernet/pensando/ionic/ionic_main.c 	mutex_lock(&ionic->dev_cmd_lock);
ionic             518 drivers/net/ethernet/pensando/ionic/ionic_main.c 	err = ionic_dev_cmd_wait(ionic, DEVCMD_TIMEOUT);
ionic             519 drivers/net/ethernet/pensando/ionic/ionic_main.c 	mutex_unlock(&ionic->dev_cmd_lock);
ionic             521 drivers/net/ethernet/pensando/ionic/ionic_main.c 	dma_free_coherent(ionic->dev, idev->port_info_sz,
ionic             528 drivers/net/ethernet/pensando/ionic/ionic_main.c 		dev_err(ionic->dev, "Failed to reset port\n");
ionic              13 drivers/net/ethernet/pensando/ionic/ionic_rx_filter.c 	struct device *dev = lif->ionic->dev;
ionic              64 drivers/net/ethernet/pensando/ionic/ionic_rx_filter.c 	struct device *dev = lif->ionic->dev;
ionic              55 drivers/net/ethernet/pensando/ionic/ionic_txrx.c 	struct device *dev = q->lif->ionic->dev;
ionic             206 drivers/net/ethernet/pensando/ionic/ionic_txrx.c 	struct ionic_dev *idev = &cq->lif->ionic->idev;
ionic             226 drivers/net/ethernet/pensando/ionic/ionic_txrx.c 	dev = lif->ionic->dev;
ionic             286 drivers/net/ethernet/pensando/ionic/ionic_txrx.c 	struct device *dev = q->lif->ionic->dev;
ionic             311 drivers/net/ethernet/pensando/ionic/ionic_txrx.c 	idev = &lif->ionic->idev;
ionic             340 drivers/net/ethernet/pensando/ionic/ionic_txrx.c 	struct device *dev = q->lif->ionic->dev;
ionic             357 drivers/net/ethernet/pensando/ionic/ionic_txrx.c 	struct device *dev = q->lif->ionic->dev;
ionic             376 drivers/net/ethernet/pensando/ionic/ionic_txrx.c 	struct device *dev = q->lif->ionic->dev;
ionic             419 drivers/net/ethernet/pensando/ionic/ionic_txrx.c 	struct ionic_dev *idev = &cq->lif->ionic->idev;
ionic             549 drivers/net/ethernet/pensando/ionic/ionic_txrx.c 	struct device *dev = q->lif->ionic->dev;
ionic             718 drivers/net/ethernet/pensando/ionic/ionic_txrx.c 	struct device *dev = q->lif->ionic->dev;
ionic             755 drivers/net/ethernet/pensando/ionic/ionic_txrx.c 	struct device *dev = q->lif->ionic->dev;
ionic             789 drivers/net/ethernet/pensando/ionic/ionic_txrx.c 	struct device *dev = q->lif->ionic->dev;