eqo 808 drivers/net/ethernet/emulex/benet/be.h #define for_all_evt_queues(adapter, eqo, i) \ eqo 809 drivers/net/ethernet/emulex/benet/be.h for (i = 0, eqo = &adapter->eq_obj[i]; i < adapter->num_evt_qs; \ eqo 810 drivers/net/ethernet/emulex/benet/be.h i++, eqo++) eqo 812 drivers/net/ethernet/emulex/benet/be.h #define for_all_rx_queues_on_eq(adapter, eqo, rxo, i) \ eqo 813 drivers/net/ethernet/emulex/benet/be.h for (i = eqo->idx, rxo = &adapter->rx_obj[i]; i < adapter->num_rx_qs;\ eqo 816 drivers/net/ethernet/emulex/benet/be.h #define for_all_tx_queues_on_eq(adapter, eqo, txo, i) \ eqo 817 drivers/net/ethernet/emulex/benet/be.h for (i = eqo->idx, txo = &adapter->tx_obj[i]; i < adapter->num_tx_qs;\ eqo 820 drivers/net/ethernet/emulex/benet/be.h #define is_mcc_eqo(eqo) (eqo->idx == 0) eqo 992 drivers/net/ethernet/emulex/benet/be_cmds.c int be_cmd_eq_create(struct be_adapter *adapter, struct be_eq_obj *eqo) eqo 996 drivers/net/ethernet/emulex/benet/be_cmds.c struct be_dma_mem *q_mem = &eqo->q.dma_mem; eqo 1020 drivers/net/ethernet/emulex/benet/be_cmds.c __ilog2_u32(eqo->q.len / 256)); eqo 1029 drivers/net/ethernet/emulex/benet/be_cmds.c eqo->q.id = le16_to_cpu(resp->eq_id); eqo 1030 drivers/net/ethernet/emulex/benet/be_cmds.c eqo->msix_idx = eqo 1031 drivers/net/ethernet/emulex/benet/be_cmds.c (ver == 2) ? le16_to_cpu(resp->msix_idx) : eqo->idx; eqo 1032 drivers/net/ethernet/emulex/benet/be_cmds.c eqo->q.created = true; eqo 2395 drivers/net/ethernet/emulex/benet/be_cmds.h int be_cmd_eq_create(struct be_adapter *adapter, struct be_eq_obj *eqo); eqo 346 drivers/net/ethernet/emulex/benet/be_ethtool.c struct be_eq_obj *eqo; eqo 351 drivers/net/ethernet/emulex/benet/be_ethtool.c for_all_evt_queues(adapter, eqo, i) { eqo 2137 drivers/net/ethernet/emulex/benet/be_main.c static int be_get_new_eqd(struct be_eq_obj *eqo) eqo 2139 drivers/net/ethernet/emulex/benet/be_main.c struct be_adapter *adapter = eqo->adapter; eqo 2149 drivers/net/ethernet/emulex/benet/be_main.c aic = &adapter->aic_obj[eqo->idx]; eqo 2157 drivers/net/ethernet/emulex/benet/be_main.c for_all_rx_queues_on_eq(adapter, eqo, rxo, i) { eqo 2164 drivers/net/ethernet/emulex/benet/be_main.c for_all_tx_queues_on_eq(adapter, eqo, txo, i) { eqo 2199 drivers/net/ethernet/emulex/benet/be_main.c static u32 be_get_eq_delay_mult_enc(struct be_eq_obj *eqo) eqo 2201 drivers/net/ethernet/emulex/benet/be_main.c struct be_adapter *adapter = eqo->adapter; eqo 2202 drivers/net/ethernet/emulex/benet/be_main.c struct be_aic_obj *aic = &adapter->aic_obj[eqo->idx]; eqo 2213 drivers/net/ethernet/emulex/benet/be_main.c eqd = be_get_new_eqd(eqo); eqo 2233 drivers/net/ethernet/emulex/benet/be_main.c struct be_eq_obj *eqo; eqo 2236 drivers/net/ethernet/emulex/benet/be_main.c for_all_evt_queues(adapter, eqo, i) { eqo 2237 drivers/net/ethernet/emulex/benet/be_main.c aic = &adapter->aic_obj[eqo->idx]; eqo 2238 drivers/net/ethernet/emulex/benet/be_main.c eqd = be_get_new_eqd(eqo); eqo 2241 drivers/net/ethernet/emulex/benet/be_main.c set_eqd[num].eq_id = eqo->q.id; eqo 2784 drivers/net/ethernet/emulex/benet/be_main.c static inline int events_get(struct be_eq_obj *eqo) eqo 2790 drivers/net/ethernet/emulex/benet/be_main.c eqe = queue_tail_node(&eqo->q); eqo 2797 drivers/net/ethernet/emulex/benet/be_main.c queue_tail_inc(&eqo->q); eqo 2804 drivers/net/ethernet/emulex/benet/be_main.c static void be_eq_clean(struct be_eq_obj *eqo) eqo 2806 drivers/net/ethernet/emulex/benet/be_main.c int num = events_get(eqo); eqo 2808 drivers/net/ethernet/emulex/benet/be_main.c be_eq_notify(eqo->adapter, eqo->q.id, false, true, num, 0); eqo 2936 drivers/net/ethernet/emulex/benet/be_main.c struct be_eq_obj *eqo; eqo 2939 drivers/net/ethernet/emulex/benet/be_main.c for_all_evt_queues(adapter, eqo, i) { eqo 2940 drivers/net/ethernet/emulex/benet/be_main.c if (eqo->q.created) { eqo 2941 drivers/net/ethernet/emulex/benet/be_main.c be_eq_clean(eqo); eqo 2942 drivers/net/ethernet/emulex/benet/be_main.c be_cmd_q_destroy(adapter, &eqo->q, QTYPE_EQ); eqo 2943 drivers/net/ethernet/emulex/benet/be_main.c netif_napi_del(&eqo->napi); eqo 2944 drivers/net/ethernet/emulex/benet/be_main.c free_cpumask_var(eqo->affinity_mask); eqo 2946 drivers/net/ethernet/emulex/benet/be_main.c be_queue_free(adapter, &eqo->q); eqo 2953 drivers/net/ethernet/emulex/benet/be_main.c struct be_eq_obj *eqo; eqo 2964 drivers/net/ethernet/emulex/benet/be_main.c for_all_evt_queues(adapter, eqo, i) { eqo 2968 drivers/net/ethernet/emulex/benet/be_main.c eqo->adapter = adapter; eqo 2969 drivers/net/ethernet/emulex/benet/be_main.c eqo->idx = i; eqo 2972 drivers/net/ethernet/emulex/benet/be_main.c eq = &eqo->q; eqo 2978 drivers/net/ethernet/emulex/benet/be_main.c rc = be_cmd_eq_create(adapter, eqo); eqo 2982 drivers/net/ethernet/emulex/benet/be_main.c if (!zalloc_cpumask_var(&eqo->affinity_mask, GFP_KERNEL)) eqo 2985 drivers/net/ethernet/emulex/benet/be_main.c eqo->affinity_mask); eqo 2986 drivers/net/ethernet/emulex/benet/be_main.c netif_napi_add(adapter->netdev, &eqo->napi, be_poll, eqo 3063 drivers/net/ethernet/emulex/benet/be_main.c struct be_eq_obj *eqo; eqo 3081 drivers/net/ethernet/emulex/benet/be_main.c eqo = &adapter->eq_obj[i % adapter->num_evt_qs]; eqo 3082 drivers/net/ethernet/emulex/benet/be_main.c status = be_cmd_cq_create(adapter, cq, &eqo->q, false, 3); eqo 3095 drivers/net/ethernet/emulex/benet/be_main.c netif_set_xps_queue(adapter->netdev, eqo->affinity_mask, eqo 3096 drivers/net/ethernet/emulex/benet/be_main.c eqo->idx); eqo 3162 drivers/net/ethernet/emulex/benet/be_main.c struct be_eq_obj *eqo = dev; eqo 3163 drivers/net/ethernet/emulex/benet/be_main.c struct be_adapter *adapter = eqo->adapter; eqo 3174 drivers/net/ethernet/emulex/benet/be_main.c if (napi_schedule_prep(&eqo->napi)) { eqo 3175 drivers/net/ethernet/emulex/benet/be_main.c num_evts = events_get(eqo); eqo 3176 drivers/net/ethernet/emulex/benet/be_main.c __napi_schedule(&eqo->napi); eqo 3178 drivers/net/ethernet/emulex/benet/be_main.c eqo->spurious_intr = 0; eqo 3180 drivers/net/ethernet/emulex/benet/be_main.c be_eq_notify(adapter, eqo->q.id, false, true, num_evts, 0); eqo 3186 drivers/net/ethernet/emulex/benet/be_main.c if (num_evts || eqo->spurious_intr++ == 0) eqo 3194 drivers/net/ethernet/emulex/benet/be_main.c struct be_eq_obj *eqo = dev; eqo 3196 drivers/net/ethernet/emulex/benet/be_main.c be_eq_notify(eqo->adapter, eqo->q.id, false, true, 0, 0); eqo 3197 drivers/net/ethernet/emulex/benet/be_main.c napi_schedule(&eqo->napi); eqo 3296 drivers/net/ethernet/emulex/benet/be_main.c struct be_eq_obj *eqo = container_of(napi, struct be_eq_obj, napi); eqo 3297 drivers/net/ethernet/emulex/benet/be_main.c struct be_adapter *adapter = eqo->adapter; eqo 3303 drivers/net/ethernet/emulex/benet/be_main.c num_evts = events_get(eqo); eqo 3305 drivers/net/ethernet/emulex/benet/be_main.c for_all_tx_queues_on_eq(adapter, eqo, txo, i) eqo 3312 drivers/net/ethernet/emulex/benet/be_main.c for_all_rx_queues_on_eq(adapter, eqo, rxo, i) { eqo 3317 drivers/net/ethernet/emulex/benet/be_main.c if (is_mcc_eqo(eqo)) eqo 3327 drivers/net/ethernet/emulex/benet/be_main.c mult_enc = be_get_eq_delay_mult_enc(eqo); eqo 3329 drivers/net/ethernet/emulex/benet/be_main.c be_eq_notify(adapter, eqo->q.id, true, false, num_evts, eqo 3333 drivers/net/ethernet/emulex/benet/be_main.c be_eq_notify(adapter, eqo->q.id, false, false, num_evts, 0); eqo 3477 drivers/net/ethernet/emulex/benet/be_main.c struct be_eq_obj *eqo) eqo 3479 drivers/net/ethernet/emulex/benet/be_main.c return adapter->msix_entries[eqo->msix_idx].vector; eqo 3485 drivers/net/ethernet/emulex/benet/be_main.c struct be_eq_obj *eqo; eqo 3488 drivers/net/ethernet/emulex/benet/be_main.c for_all_evt_queues(adapter, eqo, i) { eqo 3489 drivers/net/ethernet/emulex/benet/be_main.c sprintf(eqo->desc, "%s-q%d", netdev->name, i); eqo 3490 drivers/net/ethernet/emulex/benet/be_main.c vec = be_msix_vec_get(adapter, eqo); eqo 3491 drivers/net/ethernet/emulex/benet/be_main.c status = request_irq(vec, be_msix, 0, eqo->desc, eqo); eqo 3495 drivers/net/ethernet/emulex/benet/be_main.c irq_set_affinity_hint(vec, eqo->affinity_mask); eqo 3501 drivers/net/ethernet/emulex/benet/be_main.c eqo = &adapter->eq_obj[i]; eqo 3502 drivers/net/ethernet/emulex/benet/be_main.c free_irq(be_msix_vec_get(adapter, eqo), eqo); eqo 3541 drivers/net/ethernet/emulex/benet/be_main.c struct be_eq_obj *eqo; eqo 3554 drivers/net/ethernet/emulex/benet/be_main.c for_all_evt_queues(adapter, eqo, i) { eqo 3555 drivers/net/ethernet/emulex/benet/be_main.c vec = be_msix_vec_get(adapter, eqo); eqo 3557 drivers/net/ethernet/emulex/benet/be_main.c free_irq(vec, eqo); eqo 3636 drivers/net/ethernet/emulex/benet/be_main.c struct be_eq_obj *eqo; eqo 3653 drivers/net/ethernet/emulex/benet/be_main.c for_all_evt_queues(adapter, eqo, i) { eqo 3654 drivers/net/ethernet/emulex/benet/be_main.c napi_disable(&eqo->napi); eqo 3669 drivers/net/ethernet/emulex/benet/be_main.c for_all_evt_queues(adapter, eqo, i) { eqo 3671 drivers/net/ethernet/emulex/benet/be_main.c synchronize_irq(be_msix_vec_get(adapter, eqo)); eqo 3674 drivers/net/ethernet/emulex/benet/be_main.c be_eq_clean(eqo); eqo 3796 drivers/net/ethernet/emulex/benet/be_main.c struct be_eq_obj *eqo; eqo 3822 drivers/net/ethernet/emulex/benet/be_main.c for_all_evt_queues(adapter, eqo, i) { eqo 3823 drivers/net/ethernet/emulex/benet/be_main.c napi_enable(&eqo->napi); eqo 3824 drivers/net/ethernet/emulex/benet/be_main.c be_eq_notify(adapter, eqo->q.id, true, true, 0, 0); eqo 4919 drivers/net/ethernet/emulex/benet/be_main.c struct be_eq_obj *eqo; eqo 4922 drivers/net/ethernet/emulex/benet/be_main.c for_all_evt_queues(adapter, eqo, i) { eqo 4923 drivers/net/ethernet/emulex/benet/be_main.c be_eq_notify(eqo->adapter, eqo->q.id, false, true, 0, 0); eqo 4924 drivers/net/ethernet/emulex/benet/be_main.c napi_schedule(&eqo->napi);