Lines Matching refs:ionic

71 	new_coal = ionic_coal_usec_to_hw(lif->ionic, cur_moder.usec);  in ionic_dim_work()
78 ionic_intr_coal_init(lif->ionic->idev.intr_ctrl, in ionic_dim_work()
120 mod_timer(&lif->ionic->watchdog_timer, jiffies + 1); in ionic_lif_deferred_work()
137 queue_work(lif->ionic->wq, &lif->deferred.work); in ionic_lif_deferred_enqueue()
174 ionic_port_identify(lif->ionic); in ionic_link_status_check()
230 struct device *dev = lif->ionic->dev; in ionic_request_irq()
248 struct ionic *ionic = lif->ionic; in ionic_intr_alloc() local
251 index = find_first_zero_bit(ionic->intrs, ionic->nintrs); in ionic_intr_alloc()
252 if (index == ionic->nintrs) { in ionic_intr_alloc()
254 __func__, index, ionic->nintrs); in ionic_intr_alloc()
258 set_bit(index, ionic->intrs); in ionic_intr_alloc()
259 ionic_intr_init(&ionic->idev, intr, index); in ionic_intr_alloc()
264 static void ionic_intr_free(struct ionic *ionic, int index) in ionic_intr_free() argument
266 if (index != IONIC_INTR_INDEX_NOT_ASSIGNED && index < ionic->nintrs) in ionic_intr_free()
267 clear_bit(index, ionic->intrs); in ionic_intr_free()
301 idev = &lif->ionic->idev; in ionic_qcq_enable()
302 dev = lif->ionic->dev; in ionic_qcq_enable()
347 struct ionic_dev *idev = &lif->ionic->idev; in ionic_qcq_disable()
369 dev_dbg(lif->ionic->dev, "q_disable.index %d q_disable.qtype %d\n", in ionic_qcq_disable()
377 struct ionic_dev *idev = &lif->ionic->idev; in ionic_lif_qcq_deinit()
401 devm_free_irq(lif->ionic->dev, qcq->intr.vector, &qcq->napi); in ionic_qcq_intr_free()
403 ionic_intr_free(lif->ionic, qcq->intr.index); in ionic_qcq_intr_free()
409 struct device *dev = lif->ionic->dev; in ionic_qcq_free()
453 struct device *dev = lif->ionic->dev; in ionic_qcqs_free()
513 err = ionic_bus_get_irq(lif->ionic, qcq->intr.index); in ionic_alloc_qcq_interrupt()
520 ionic_intr_mask_assert(lif->ionic->idev.intr_ctrl, qcq->intr.index, in ionic_alloc_qcq_interrupt()
530 affinity_mask = &lif->ionic->affinity_masks[qcq->intr.index]; in ionic_alloc_qcq_interrupt()
535 dev_to_node(lif->ionic->dev)); in ionic_alloc_qcq_interrupt()
548 ionic_intr_free(lif->ionic, qcq->intr.index); in ionic_alloc_qcq_interrupt()
563 struct ionic_dev *idev = &lif->ionic->idev; in ionic_qcq_alloc()
564 struct device *dev = lif->ionic->dev; in ionic_qcq_alloc()
593 .dev = lif->ionic->dev, in ionic_qcq_alloc()
743 ionic_intr_free(lif->ionic, new->intr.index); in ionic_qcq_alloc()
758 struct device *dev = lif->ionic->dev; in ionic_qcqs_alloc()
774 if (lif->ionic->nnqs_per_lif) { in ionic_qcqs_alloc()
792 lif->txqcqs = devm_kcalloc(dev, lif->ionic->ntxqs_per_lif, in ionic_qcqs_alloc()
796 lif->rxqcqs = devm_kcalloc(dev, lif->ionic->nrxqs_per_lif, in ionic_qcqs_alloc()
801 lif->txqstats = devm_kcalloc(dev, lif->ionic->ntxqs_per_lif + 1, in ionic_qcqs_alloc()
805 lif->rxqstats = devm_kcalloc(dev, lif->ionic->nrxqs_per_lif + 1, in ionic_qcqs_alloc()
832 struct device *dev = lif->ionic->dev; in ionic_lif_txq_init()
897 struct device *dev = lif->ionic->dev; in ionic_lif_rxq_init()
994 txq_i = lif->ionic->ntxqs_per_lif; in ionic_lif_create_hwstamp_txq()
1031 devm_kfree(lif->ionic->dev, txq); in ionic_lif_create_hwstamp_txq()
1054 rxq_i = lif->ionic->nrxqs_per_lif; in ionic_lif_create_hwstamp_rxq()
1092 devm_kfree(lif->ionic->dev, rxq); in ionic_lif_create_hwstamp_rxq()
1217 struct ionic_dev *idev = &lif->ionic->idev; in ionic_adminq_napi()
1482 struct device *dev = lif->ionic->dev; in ionic_set_nic_features()
1515 dev_info_once(lif->ionic->dev, "NIC is not supporting vlan offload, likely in SmartNIC mode\n"); in ionic_set_nic_features()
1845 dev_err(lif->ionic->dev, "%s: Restarting queues failed\n", __func__); in ionic_tx_timeout_work()
1908 tbl_sz = le16_to_cpu(lif->ionic->ident.lif.eth.rss_ind_tbl_sz); in ionic_lif_rss_config()
1932 tbl_sz = le16_to_cpu(lif->ionic->ident.lif.eth.rss_ind_tbl_sz); in ionic_lif_rss_init()
1943 tbl_sz = le16_to_cpu(lif->ionic->ident.lif.eth.rss_ind_tbl_sz); in ionic_lif_rss_deinit()
2029 for (i = 0; i < lif->ionic->ntxqs_per_lif && lif->txqcqs[i]; i++) { in ionic_txrx_free()
2031 devm_kfree(lif->ionic->dev, lif->txqcqs[i]); in ionic_txrx_free()
2037 for (i = 0; i < lif->ionic->nrxqs_per_lif && lif->rxqcqs[i]; i++) { in ionic_txrx_free()
2039 devm_kfree(lif->ionic->dev, lif->rxqcqs[i]); in ionic_txrx_free()
2046 devm_kfree(lif->ionic->dev, lif->hwstamp_txq); in ionic_txrx_free()
2052 devm_kfree(lif->ionic->dev, lif->hwstamp_rxq); in ionic_txrx_free()
2091 ionic_intr_coal_init(lif->ionic->idev.intr_ctrl, in ionic_txrx_alloc()
2125 ionic_intr_coal_init(lif->ionic->idev.intr_ctrl, in ionic_txrx_alloc()
2188 dev_err(lif->ionic->dev, "%s: bad qcq %d\n", __func__, i); in ionic_txrx_enable()
2355 struct ionic *ionic = lif->ionic; in ionic_get_vf_config() local
2361 down_read(&ionic->vf_op_lock); in ionic_get_vf_config()
2363 if (vf >= pci_num_vf(ionic->pdev) || !ionic->vfs) { in ionic_get_vf_config()
2366 struct ionic_vf *vfdata = &ionic->vfs[vf]; in ionic_get_vf_config()
2378 up_read(&ionic->vf_op_lock); in ionic_get_vf_config()
2386 struct ionic *ionic = lif->ionic; in ionic_get_vf_stats() local
2393 down_read(&ionic->vf_op_lock); in ionic_get_vf_stats()
2395 if (vf >= pci_num_vf(ionic->pdev) || !ionic->vfs) { in ionic_get_vf_stats()
2399 vs = &ionic->vfs[vf].stats; in ionic_get_vf_stats()
2415 up_read(&ionic->vf_op_lock); in ionic_get_vf_stats()
2423 struct ionic *ionic = lif->ionic; in ionic_set_vf_mac() local
2432 down_write(&ionic->vf_op_lock); in ionic_set_vf_mac()
2434 if (vf >= pci_num_vf(ionic->pdev) || !ionic->vfs) { in ionic_set_vf_mac()
2438 dev_dbg(ionic->dev, "%s: vf %d macaddr %pM\n", in ionic_set_vf_mac()
2441 ret = ionic_set_vf_config(ionic, vf, &vfc); in ionic_set_vf_mac()
2443 ether_addr_copy(ionic->vfs[vf].macaddr, mac); in ionic_set_vf_mac()
2446 up_write(&ionic->vf_op_lock); in ionic_set_vf_mac()
2455 struct ionic *ionic = lif->ionic; in ionic_set_vf_vlan() local
2471 down_write(&ionic->vf_op_lock); in ionic_set_vf_vlan()
2473 if (vf >= pci_num_vf(ionic->pdev) || !ionic->vfs) { in ionic_set_vf_vlan()
2477 dev_dbg(ionic->dev, "%s: vf %d vlan %d\n", in ionic_set_vf_vlan()
2480 ret = ionic_set_vf_config(ionic, vf, &vfc); in ionic_set_vf_vlan()
2482 ionic->vfs[vf].vlanid = cpu_to_le16(vlan); in ionic_set_vf_vlan()
2485 up_write(&ionic->vf_op_lock); in ionic_set_vf_vlan()
2494 struct ionic *ionic = lif->ionic; in ionic_set_vf_rate() local
2504 down_write(&ionic->vf_op_lock); in ionic_set_vf_rate()
2506 if (vf >= pci_num_vf(ionic->pdev) || !ionic->vfs) { in ionic_set_vf_rate()
2510 dev_dbg(ionic->dev, "%s: vf %d maxrate %d\n", in ionic_set_vf_rate()
2513 ret = ionic_set_vf_config(ionic, vf, &vfc); in ionic_set_vf_rate()
2515 ionic->vfs[vf].maxrate = cpu_to_le32(tx_max); in ionic_set_vf_rate()
2518 up_write(&ionic->vf_op_lock); in ionic_set_vf_rate()
2526 struct ionic *ionic = lif->ionic; in ionic_set_vf_spoofchk() local
2532 down_write(&ionic->vf_op_lock); in ionic_set_vf_spoofchk()
2534 if (vf >= pci_num_vf(ionic->pdev) || !ionic->vfs) { in ionic_set_vf_spoofchk()
2538 dev_dbg(ionic->dev, "%s: vf %d spoof %d\n", in ionic_set_vf_spoofchk()
2541 ret = ionic_set_vf_config(ionic, vf, &vfc); in ionic_set_vf_spoofchk()
2543 ionic->vfs[vf].spoofchk = set; in ionic_set_vf_spoofchk()
2546 up_write(&ionic->vf_op_lock); in ionic_set_vf_spoofchk()
2554 struct ionic *ionic = lif->ionic; in ionic_set_vf_trust() local
2560 down_write(&ionic->vf_op_lock); in ionic_set_vf_trust()
2562 if (vf >= pci_num_vf(ionic->pdev) || !ionic->vfs) { in ionic_set_vf_trust()
2566 dev_dbg(ionic->dev, "%s: vf %d trust %d\n", in ionic_set_vf_trust()
2569 ret = ionic_set_vf_config(ionic, vf, &vfc); in ionic_set_vf_trust()
2571 ionic->vfs[vf].trusted = set; in ionic_set_vf_trust()
2574 up_write(&ionic->vf_op_lock); in ionic_set_vf_trust()
2582 struct ionic *ionic = lif->ionic; in ionic_set_vf_link_state() local
2603 down_write(&ionic->vf_op_lock); in ionic_set_vf_link_state()
2605 if (vf >= pci_num_vf(ionic->pdev) || !ionic->vfs) { in ionic_set_vf_link_state()
2609 dev_dbg(ionic->dev, "%s: vf %d linkstate %d\n", in ionic_set_vf_link_state()
2612 ret = ionic_set_vf_config(ionic, vf, &vfc); in ionic_set_vf_link_state()
2614 ionic->vfs[vf].linkstate = set; in ionic_set_vf_link_state()
2617 up_write(&ionic->vf_op_lock); in ionic_set_vf_link_state()
2624 struct ionic *ionic = lif->ionic; in ionic_vf_attr_replay() local
2628 if (!ionic->vfs) in ionic_vf_attr_replay()
2631 down_read(&ionic->vf_op_lock); in ionic_vf_attr_replay()
2633 for (i = 0; i < ionic->num_vfs; i++) { in ionic_vf_attr_replay()
2634 v = &ionic->vfs[i]; in ionic_vf_attr_replay()
2639 ionic_set_vf_config(ionic, i, &vfc); in ionic_vf_attr_replay()
2646 ionic_set_vf_config(ionic, i, &vfc); in ionic_vf_attr_replay()
2653 ionic_set_vf_config(ionic, i, &vfc); in ionic_vf_attr_replay()
2660 ionic_set_vf_config(ionic, i, &vfc); in ionic_vf_attr_replay()
2667 ionic_set_vf_config(ionic, i, &vfc); in ionic_vf_attr_replay()
2674 ionic_set_vf_config(ionic, i, &vfc); in ionic_vf_attr_replay()
2681 ionic_set_vf_config(ionic, i, &vfc); in ionic_vf_attr_replay()
2686 up_read(&ionic->vf_op_lock); in ionic_vf_attr_replay()
2688 ionic_vf_start(ionic); in ionic_vf_attr_replay()
2747 for (i = 0; i < lif->ionic->nrxqs_per_lif && lif->rxqcqs[i]; i++) { in ionic_xdp_rxqs_prog_update()
2863 dev_warn(lif->ionic->dev, in ionic_cmb_reconfig()
2870 dev_err(lif->ionic->dev, in ionic_cmb_reconfig()
2878 dev_err(lif->ionic->dev, in ionic_cmb_reconfig()
2951 tx_qcqs = devm_kcalloc(lif->ionic->dev, lif->ionic->ntxqs_per_lif, in ionic_reconfigure_queues()
2962 rx_qcqs = devm_kcalloc(lif->ionic->dev, lif->ionic->nrxqs_per_lif, in ionic_reconfigure_queues()
3083 for (i = 0; i < lif->ionic->ntxqs_per_lif; i++) { in ionic_reconfigure_queues()
3094 ionic_intr_coal_init(lif->ionic->idev.intr_ctrl, in ionic_reconfigure_queues()
3101 ionic_intr_coal_init(lif->ionic->idev.intr_ctrl, in ionic_reconfigure_queues()
3144 devm_kfree(lif->ionic->dev, tx_qcqs[i]); in ionic_reconfigure_queues()
3150 devm_kfree(lif->ionic->dev, rx_qcqs[i]); in ionic_reconfigure_queues()
3157 devm_kfree(lif->ionic->dev, rx_qcqs); in ionic_reconfigure_queues()
3161 devm_kfree(lif->ionic->dev, tx_qcqs); in ionic_reconfigure_queues()
3168 for (i = lif->nxqs; i < lif->ionic->ntxqs_per_lif; i++) { in ionic_reconfigure_queues()
3186 static int ionic_affinity_masks_alloc(struct ionic *ionic) in ionic_affinity_masks_alloc() argument
3189 int nintrs = ionic->nintrs; in ionic_affinity_masks_alloc()
3198 dev_to_node(ionic->dev))) in ionic_affinity_masks_alloc()
3202 ionic->affinity_masks = affinity_masks; in ionic_affinity_masks_alloc()
3214 static void ionic_affinity_masks_free(struct ionic *ionic) in ionic_affinity_masks_free() argument
3218 for (i = 0; i < ionic->nintrs; i++) in ionic_affinity_masks_free()
3219 free_cpumask_var(ionic->affinity_masks[i]); in ionic_affinity_masks_free()
3220 kfree(ionic->affinity_masks); in ionic_affinity_masks_free()
3221 ionic->affinity_masks = NULL; in ionic_affinity_masks_free()
3224 int ionic_lif_alloc(struct ionic *ionic) in ionic_lif_alloc() argument
3226 struct device *dev = ionic->dev; in ionic_lif_alloc()
3238 ionic->ntxqs_per_lif, ionic->ntxqs_per_lif); in ionic_lif_alloc()
3249 ionic->lif = lif; in ionic_lif_alloc()
3250 lif->ionic = ionic; in ionic_lif_alloc()
3259 err = ionic_lif_identify(ionic, lif->lif_type, lif->identity); in ionic_lif_alloc()
3261 dev_err(ionic->dev, "Cannot identify type %d: %d\n", in ionic_lif_alloc()
3270 lif->neqs = ionic->neqs_per_lif; in ionic_lif_alloc()
3271 lif->nxqs = ionic->ntxqs_per_lif; in ionic_lif_alloc()
3285 lif->rx_coalesce_hw = ionic_coal_usec_to_hw(lif->ionic, in ionic_lif_alloc()
3315 err = ionic_affinity_masks_alloc(ionic); in ionic_lif_alloc()
3326 tbl_sz = le16_to_cpu(lif->ionic->ident.lif.eth.rss_ind_tbl_sz); in ionic_lif_alloc()
3346 ionic_affinity_masks_free(lif->ionic); in ionic_lif_alloc()
3365 struct ionic_dev *idev = &lif->ionic->idev; in ionic_lif_reset()
3370 mutex_lock(&lif->ionic->dev_cmd_lock); in ionic_lif_reset()
3372 ionic_dev_cmd_wait(lif->ionic, DEVCMD_TIMEOUT); in ionic_lif_reset()
3373 mutex_unlock(&lif->ionic->dev_cmd_lock); in ionic_lif_reset()
3378 struct ionic *ionic = lif->ionic; in ionic_lif_handle_fw_down() local
3383 dev_info(ionic->dev, "FW Down: Stopping LIFs\n"); in ionic_lif_handle_fw_down()
3389 dev_info(ionic->dev, "Surprise FW stop, stopping queues\n"); in ionic_lif_handle_fw_down()
3398 ionic_reset(ionic); in ionic_lif_handle_fw_down()
3404 dev_info(ionic->dev, "FW Down: LIFs stopped\n"); in ionic_lif_handle_fw_down()
3409 struct ionic *ionic = lif->ionic; in ionic_restart_lif() local
3415 dev_info(ionic->dev, "FW Up: clearing broken state\n"); in ionic_restart_lif()
3447 ionic_queue_doorbell_check(ionic, IONIC_NAPI_DEADLINE); in ionic_restart_lif()
3465 struct ionic *ionic = lif->ionic; in ionic_lif_handle_fw_up() local
3471 dev_info(ionic->dev, "FW Up: restarting LIFs\n"); in ionic_lif_handle_fw_up()
3477 ionic_init_devinfo(ionic); in ionic_lif_handle_fw_up()
3478 ionic_reset(ionic); in ionic_lif_handle_fw_up()
3479 err = ionic_identify(ionic); in ionic_lif_handle_fw_up()
3482 err = ionic_port_identify(ionic); in ionic_lif_handle_fw_up()
3485 err = ionic_port_init(ionic); in ionic_lif_handle_fw_up()
3493 dev_info(ionic->dev, "FW Up: LIFs restarted\n"); in ionic_lif_handle_fw_up()
3501 dev_err(ionic->dev, "FW Up: LIFs restart failed - err %d\n", err); in ionic_lif_handle_fw_up()
3506 struct device *dev = lif->ionic->dev; in ionic_lif_free()
3521 ionic_affinity_masks_free(lif->ionic); in ionic_lif_free()
3530 ionic_bus_unmap_dbpage(lif->ionic, lif->kern_dbpage); in ionic_lif_free()
3563 struct device *dev = lif->ionic->dev; in ionic_lif_adminq_init()
3570 idev = &lif->ionic->idev; in ionic_lif_adminq_init()
3574 mutex_lock(&lif->ionic->dev_cmd_lock); in ionic_lif_adminq_init()
3576 err = ionic_dev_cmd_wait(lif->ionic, DEVCMD_TIMEOUT); in ionic_lif_adminq_init()
3578 mutex_unlock(&lif->ionic->dev_cmd_lock); in ionic_lif_adminq_init()
3613 struct device *dev = lif->ionic->dev; in ionic_lif_notifyq_init()
3728 struct ionic_dev *idev = &lif->ionic->idev; in ionic_lif_init()
3729 struct device *dev = lif->ionic->dev; in ionic_lif_init()
3734 mutex_lock(&lif->ionic->dev_cmd_lock); in ionic_lif_init()
3736 err = ionic_dev_cmd_wait(lif->ionic, DEVCMD_TIMEOUT); in ionic_lif_init()
3738 mutex_unlock(&lif->ionic->dev_cmd_lock); in ionic_lif_init()
3745 lif->dbid_count = le32_to_cpu(lif->ionic->ident.dev.ndbpgs_per_lif); in ionic_lif_init()
3753 lif->kern_dbpage = ionic_bus_map_dbpage(lif->ionic, dbpage_num); in ionic_lif_init()
3763 if (lif->ionic->nnqs_per_lif) { in ionic_lif_init()
3787 lif->doorbell_wa = ionic_doorbell_wa(lif->ionic); in ionic_lif_init()
3801 ionic_bus_unmap_dbpage(lif->ionic, lif->kern_dbpage); in ionic_lif_init()
3840 struct ionic *ionic = container_of(nb, struct ionic, nb); in ionic_lif_notify() local
3843 if (!lif || lif->ionic != ionic) in ionic_lif_notify()
3861 INIT_WORK(&lif->ionic->nb_work, ionic_lif_notify_work); in ionic_lif_register()
3863 lif->ionic->nb.notifier_call = ionic_lif_notify; in ionic_lif_register()
3865 err = register_netdevice_notifier(&lif->ionic->nb); in ionic_lif_register()
3867 lif->ionic->nb.notifier_call = NULL; in ionic_lif_register()
3872 dev_err(lif->ionic->dev, "Cannot register net device, aborting\n"); in ionic_lif_register()
3886 if (lif->ionic->nb.notifier_call) { in ionic_lif_unregister()
3887 unregister_netdevice_notifier(&lif->ionic->nb); in ionic_lif_unregister()
3888 cancel_work_sync(&lif->ionic->nb_work); in ionic_lif_unregister()
3889 lif->ionic->nb.notifier_call = NULL; in ionic_lif_unregister()
3903 struct ionic *ionic = lif->ionic; in ionic_lif_queue_identify() local
3909 idev = &lif->ionic->idev; in ionic_lif_queue_identify()
3928 mutex_lock(&ionic->dev_cmd_lock); in ionic_lif_queue_identify()
3931 err = ionic_dev_cmd_wait(ionic, DEVCMD_TIMEOUT); in ionic_lif_queue_identify()
3942 mutex_unlock(&ionic->dev_cmd_lock); in ionic_lif_queue_identify()
3945 dev_err(ionic->dev, "qtype %d not supported\n", qtype); in ionic_lif_queue_identify()
3948 dev_err(ionic->dev, "q_ident failed, not supported on older FW\n"); in ionic_lif_queue_identify()
3951 dev_err(ionic->dev, "q_ident failed, qtype %d: %d\n", in ionic_lif_queue_identify()
3956 dev_dbg(ionic->dev, " qtype[%d].version = %d\n", in ionic_lif_queue_identify()
3958 dev_dbg(ionic->dev, " qtype[%d].supported = 0x%02x\n", in ionic_lif_queue_identify()
3960 dev_dbg(ionic->dev, " qtype[%d].features = 0x%04llx\n", in ionic_lif_queue_identify()
3962 dev_dbg(ionic->dev, " qtype[%d].desc_sz = %d\n", in ionic_lif_queue_identify()
3964 dev_dbg(ionic->dev, " qtype[%d].comp_sz = %d\n", in ionic_lif_queue_identify()
3966 dev_dbg(ionic->dev, " qtype[%d].sg_desc_sz = %d\n", in ionic_lif_queue_identify()
3968 dev_dbg(ionic->dev, " qtype[%d].max_sg_elems = %d\n", in ionic_lif_queue_identify()
3970 dev_dbg(ionic->dev, " qtype[%d].sg_desc_stride = %d\n", in ionic_lif_queue_identify()
3981 dev_dbg(ionic->dev, "qtype %d max_sg_elems %d\n", in ionic_lif_queue_identify()
3986 int ionic_lif_identify(struct ionic *ionic, u8 lif_type, in ionic_lif_identify() argument
3989 struct ionic_dev *idev = &ionic->idev; in ionic_lif_identify()
3995 mutex_lock(&ionic->dev_cmd_lock); in ionic_lif_identify()
3997 err = ionic_dev_cmd_wait(ionic, DEVCMD_TIMEOUT); in ionic_lif_identify()
3999 mutex_unlock(&ionic->dev_cmd_lock); in ionic_lif_identify()
4003 dev_dbg(ionic->dev, "capabilities 0x%llx\n", in ionic_lif_identify()
4006 dev_dbg(ionic->dev, "eth.max_ucast_filters %d\n", in ionic_lif_identify()
4008 dev_dbg(ionic->dev, "eth.max_mcast_filters %d\n", in ionic_lif_identify()
4010 dev_dbg(ionic->dev, "eth.features 0x%llx\n", in ionic_lif_identify()
4012 dev_dbg(ionic->dev, "eth.queue_count[IONIC_QTYPE_ADMINQ] %d\n", in ionic_lif_identify()
4014 dev_dbg(ionic->dev, "eth.queue_count[IONIC_QTYPE_NOTIFYQ] %d\n", in ionic_lif_identify()
4016 dev_dbg(ionic->dev, "eth.queue_count[IONIC_QTYPE_RXQ] %d\n", in ionic_lif_identify()
4018 dev_dbg(ionic->dev, "eth.queue_count[IONIC_QTYPE_TXQ] %d\n", in ionic_lif_identify()
4020 dev_dbg(ionic->dev, "eth.config.name %s\n", lid->eth.config.name); in ionic_lif_identify()
4021 dev_dbg(ionic->dev, "eth.config.mac %pM\n", lid->eth.config.mac); in ionic_lif_identify()
4022 dev_dbg(ionic->dev, "eth.config.mtu %d\n", in ionic_lif_identify()
4028 int ionic_lif_size(struct ionic *ionic) in ionic_lif_size() argument
4030 struct ionic_identity *ident = &ionic->ident; in ionic_lif_size()
4084 err = ionic_bus_alloc_irq_vectors(ionic, nintrs); in ionic_lif_size()
4086 dev_err(ionic->dev, "Can't get intrs from OS: %d\n", err); in ionic_lif_size()
4093 ionic_bus_free_irq_vectors(ionic); in ionic_lif_size()
4097 ionic->nnqs_per_lif = nnqs_per_lif; in ionic_lif_size()
4098 ionic->neqs_per_lif = neqs; in ionic_lif_size()
4099 ionic->ntxqs_per_lif = nxqs; in ionic_lif_size()
4100 ionic->nrxqs_per_lif = nxqs; in ionic_lif_size()
4101 ionic->nintrs = nintrs; in ionic_lif_size()
4103 ionic_debugfs_add_sizes(ionic); in ionic_lif_size()
4120 dev_err(ionic->dev, "Can't get minimum %d intrs from OS\n", min_intrs); in ionic_lif_size()