Home
last modified time | relevance | path

Searched refs:eqe (Results 1 – 25 of 56) sorted by relevance

123

/linux-6.6.21/drivers/net/ethernet/mellanox/mlx4/
Deq.c123 struct mlx4_eqe *eqe = get_eqe(eq, eq->cons_index, eqe_factor, size); in next_eqe_sw() local
124 return !!(eqe->owner & 0x80) ^ !!(eq->cons_index & eq->nent) ? NULL : eqe; in next_eqe_sw()
129 struct mlx4_eqe *eqe = in next_slave_event_eqe() local
131 return (!!(eqe->owner & 0x80) ^ in next_slave_event_eqe()
133 eqe : NULL; in next_slave_event_eqe()
146 struct mlx4_eqe *eqe; in mlx4_gen_slave_eqe() local
150 for (eqe = next_slave_event_eqe(slave_eq); eqe; in mlx4_gen_slave_eqe()
151 eqe = next_slave_event_eqe(slave_eq)) { in mlx4_gen_slave_eqe()
152 slave = eqe->slave_id; in mlx4_gen_slave_eqe()
154 if (eqe->type == MLX4_EVENT_TYPE_PORT_CHANGE && in mlx4_gen_slave_eqe()
[all …]
/linux-6.6.21/drivers/infiniband/hw/mthca/
Dmthca_eq.c236 struct mthca_eqe *eqe; in next_eqe_sw() local
237 eqe = get_eqe(eq, eq->cons_index); in next_eqe_sw()
238 return (MTHCA_EQ_ENTRY_OWNER_HW & eqe->owner) ? NULL : eqe; in next_eqe_sw()
241 static inline void set_eqe_hw(struct mthca_eqe *eqe) in set_eqe_hw() argument
243 eqe->owner = MTHCA_EQ_ENTRY_OWNER_HW; in set_eqe_hw()
262 struct mthca_eqe *eqe; in mthca_eq_int() local
267 while ((eqe = next_eqe_sw(eq))) { in mthca_eq_int()
274 switch (eqe->type) { in mthca_eq_int()
276 disarm_cqn = be32_to_cpu(eqe->event.comp.cqn) & 0xffffff; in mthca_eq_int()
282 mthca_qp_event(dev, be32_to_cpu(eqe->event.qp.qpn) & 0xffffff, in mthca_eq_int()
[all …]
/linux-6.6.21/drivers/net/ethernet/mellanox/mlx5/core/
Devents.c149 struct mlx5_eqe *eqe = data; in any_notifier() local
152 eqe_type_str(eqe->type), eqe->sub_type); in any_notifier()
161 struct mlx5_eqe *eqe = data; in temp_warn() local
165 value_lsb = be64_to_cpu(eqe->data.temp_warning.sensor_warning_lsb); in temp_warn()
166 value_msb = be64_to_cpu(eqe->data.temp_warning.sensor_warning_msb); in temp_warn()
223 struct mlx5_eqe *eqe = data; in port_module() local
231 module_event_eqe = &eqe->data.port_module; in port_module()
314 struct mlx5_eqe *eqe = data; in pcie_core() local
316 switch (eqe->sub_type) { in pcie_core()
337 struct mlx5_eqe *eqe = data; in forward_event() local
[all …]
Deq.c115 struct mlx5_eqe *eqe; in mlx5_eq_comp_int() local
119 eqe = next_eqe_sw(eq); in mlx5_eq_comp_int()
120 if (!eqe) in mlx5_eq_comp_int()
131 cqn = be32_to_cpu(eqe->data.comp.cqn) & 0xffffff; in mlx5_eq_comp_int()
136 cq->comp(cq, eqe); in mlx5_eq_comp_int()
145 } while ((++num_eqes < MLX5_EQ_POLLING_BUDGET) && (eqe = next_eqe_sw(eq))); in mlx5_eq_comp_int()
207 struct mlx5_eqe *eqe; in mlx5_eq_async_int() local
218 eqe = next_eqe_sw(eq); in mlx5_eq_async_int()
219 if (!eqe) in mlx5_eq_async_int()
229 atomic_notifier_call_chain(&eqt->nh[eqe->type], eqe->type, eqe); in mlx5_eq_async_int()
[all …]
Dpagealloc.c617 struct mlx5_eqe *eqe; in req_pages_handler() local
625 eqe = data; in req_pages_handler()
627 func_id = be16_to_cpu(eqe->data.req_pages.func_id); in req_pages_handler()
628 npages = be32_to_cpu(eqe->data.req_pages.num_pages); in req_pages_handler()
629 ec_function = be16_to_cpu(eqe->data.req_pages.ec_function) & EC_FUNCTION_MASK; in req_pages_handler()
630 release_all = be16_to_cpu(eqe->data.req_pages.ec_function) & in req_pages_handler()
Dfw_reset.c607 static void mlx5_sync_reset_events_handle(struct mlx5_fw_reset *fw_reset, struct mlx5_eqe *eqe) in mlx5_sync_reset_events_handle() argument
612 sync_fw_update_eqe = &eqe->data.sync_fw_update; in mlx5_sync_reset_events_handle()
633 struct mlx5_eqe *eqe = data; in fw_reset_event_notifier() local
638 switch (eqe->sub_type) { in fw_reset_event_notifier()
643 mlx5_sync_reset_events_handle(fw_reset, eqe); in fw_reset_event_notifier()
/linux-6.6.21/drivers/net/ethernet/mellanox/mlxsw/
Dpci_hw.h377 MLXSW_ITEM32(pci, eqe, event_type, 0x0C, 24, 8);
384 MLXSW_ITEM32(pci, eqe, event_sub_type, 0x0C, 16, 8);
389 MLXSW_ITEM32(pci, eqe, cqn, 0x0C, 8, 7);
394 MLXSW_ITEM32(pci, eqe, owner, 0x0C, 0, 1);
399 MLXSW_ITEM32(pci, eqe, cmd_token, 0x00, 16, 16);
404 MLXSW_ITEM32(pci, eqe, cmd_status, 0x00, 0, 8);
409 MLXSW_ITEM32(pci, eqe, cmd_out_param_h, 0x04, 0, 32);
414 MLXSW_ITEM32(pci, eqe, cmd_out_param_l, 0x08, 0, 32);
Dpci.c798 static void mlxsw_pci_eq_cmd_event(struct mlxsw_pci *mlxsw_pci, char *eqe) in mlxsw_pci_eq_cmd_event() argument
800 mlxsw_pci->cmd.comp.status = mlxsw_pci_eqe_cmd_status_get(eqe); in mlxsw_pci_eq_cmd_event()
802 ((u64) mlxsw_pci_eqe_cmd_out_param_h_get(eqe)) << 32 | in mlxsw_pci_eq_cmd_event()
803 mlxsw_pci_eqe_cmd_out_param_l_get(eqe); in mlxsw_pci_eq_cmd_event()
830 char *eqe; in mlxsw_pci_eq_tasklet() local
838 while ((eqe = mlxsw_pci_eq_sw_eqe_get(q))) { in mlxsw_pci_eq_tasklet()
846 mlxsw_pci_eq_cmd_event(mlxsw_pci, eqe); in mlxsw_pci_eq_tasklet()
850 cqn = mlxsw_pci_eqe_cqn_get(eqe); in mlxsw_pci_eq_tasklet()
/linux-6.6.21/drivers/net/ethernet/mellanox/mlx5/core/fpga/
Dcore.c163 static int fpga_err_event(struct notifier_block *nb, unsigned long event, void *eqe) in fpga_err_event() argument
167 return mlx5_fpga_event(fdev, event, eqe); in fpga_err_event()
170 static int fpga_qp_err_event(struct notifier_block *nb, unsigned long event, void *eqe) in fpga_qp_err_event() argument
174 return mlx5_fpga_event(fdev, event, eqe); in fpga_qp_err_event()
334 unsigned long event, void *eqe) in mlx5_fpga_event() argument
336 void *data = ((struct mlx5_eqe *)eqe)->data.raw; in mlx5_fpga_event()
/linux-6.6.21/drivers/net/ethernet/mellanox/mlx5/core/lib/
Deq.h63 struct mlx5_eqe *eqe = get_eqe(eq, eq->cons_index & eq->fbc.sz_m1); in next_eqe_sw() local
65 return (eqe->owner ^ (eq->cons_index >> eq->fbc.log_sz)) & 1 ? NULL : eqe; in next_eqe_sw()
/linux-6.6.21/drivers/infiniband/hw/vmw_pvrdma/
Dpvrdma_main.c413 struct pvrdma_eqe *eqe; in pvrdma_intr1_handler() local
415 eqe = get_eqe(dev, head); in pvrdma_intr1_handler()
417 switch (eqe->type) { in pvrdma_intr1_handler()
426 pvrdma_qp_event(dev, eqe->info, eqe->type); in pvrdma_intr1_handler()
430 pvrdma_cq_event(dev, eqe->info, eqe->type); in pvrdma_intr1_handler()
435 pvrdma_srq_event(dev, eqe->info, eqe->type); in pvrdma_intr1_handler()
445 pvrdma_dev_event(dev, eqe->info, eqe->type); in pvrdma_intr1_handler()
449 pvrdma_dev_event(dev, 1, eqe->type); in pvrdma_intr1_handler()
/linux-6.6.21/include/linux/mlx5/
Dcq.h49 void (*comp)(struct mlx5_core_cq *cq, struct mlx5_eqe *eqe);
57 void (*comp)(struct mlx5_core_cq *cq, struct mlx5_eqe *eqe);
/linux-6.6.21/drivers/infiniband/hw/efa/
Defa_main.c72 static void efa_process_comp_eqe(struct efa_dev *dev, struct efa_admin_eqe *eqe) in efa_process_comp_eqe() argument
74 u16 cqn = eqe->u.comp_event.cqn; in efa_process_comp_eqe()
89 static void efa_process_eqe(struct efa_com_eq *eeq, struct efa_admin_eqe *eqe) in efa_process_eqe() argument
93 if (likely(EFA_GET(&eqe->common, EFA_ADMIN_EQE_EVENT_TYPE) == in efa_process_eqe()
95 efa_process_comp_eqe(dev, eqe); in efa_process_eqe()
99 EFA_GET(&eqe->common, in efa_process_eqe()
Defa_com.h85 struct efa_admin_eqe *eqe);
Defa_com.c1163 struct efa_admin_eqe *eqe; in efa_com_eq_comp_intr_handler() local
1170 eqe = &eeq->eqes[ci]; in efa_com_eq_comp_intr_handler()
1173 while ((READ_ONCE(eqe->common) & EFA_ADMIN_EQE_PHASE_MASK) == phase) { in efa_com_eq_comp_intr_handler()
1180 eeq->cb(eeq, eqe); in efa_com_eq_comp_intr_handler()
1191 eqe = &eeq->eqes[ci]; in efa_com_eq_comp_intr_handler()
/linux-6.6.21/drivers/infiniband/hw/mlx4/
Dmad.c63 #define GET_BLK_PTR_FROM_EQE(eqe) be32_to_cpu(eqe->event.port_mgmt_change.params.tbl_change_info.bl… argument
64 #define GET_MASK_FROM_EQE(eqe) be32_to_cpu(eqe->event.port_mgmt_change.params.tbl_change_info.tbl_e… argument
1120 struct mlx4_eqe *eqe) in propagate_pkey_ev() argument
1122 __propagate_pkey_ev(dev, port_num, GET_BLK_PTR_FROM_EQE(eqe), in propagate_pkey_ev()
1123 GET_MASK_FROM_EQE(eqe)); in propagate_pkey_ev()
1181 struct mlx4_eqe *eqe = &(ew->ib_eqe); in handle_port_mgmt_change_event() local
1182 u32 port = eqe->event.port_mgmt_change.port; in handle_port_mgmt_change_event()
1187 switch (eqe->subtype) { in handle_port_mgmt_change_event()
1189 changed_attr = be32_to_cpu(eqe->event.port_mgmt_change.params.port_info.changed_attr); in handle_port_mgmt_change_event()
1194 u16 lid = be16_to_cpu(eqe->event.port_mgmt_change.params.port_info.mstr_sm_lid); in handle_port_mgmt_change_event()
[all …]
/linux-6.6.21/drivers/infiniband/hw/mlx5/
Dqpc.c91 static int dct_event_notifier(struct mlx5_ib_dev *dev, struct mlx5_eqe *eqe) in dct_event_notifier() argument
97 qpn = be32_to_cpu(eqe->data.dct.dctn) & 0xFFFFFF; in dct_event_notifier()
112 struct mlx5_eqe *eqe = data; in rsc_event_notifier() local
119 return dct_event_notifier(dev, eqe); in rsc_event_notifier()
128 rsn = be32_to_cpu(eqe->data.qp_srq.qp_srq_n) & 0xffffff; in rsc_event_notifier()
129 rsn |= (eqe->data.qp_srq.type << MLX5_USER_INDEX_LEN); in rsc_event_notifier()
Dodp.c1391 struct mlx5_eqe *eqe; in mlx5_ib_eq_pf_process() local
1394 while ((eqe = mlx5_eq_get_eqe(eq->core, cc))) { in mlx5_ib_eq_pf_process()
1401 pf_eqe = &eqe->data.page_fault; in mlx5_ib_eq_pf_process()
1402 pfault->event_subtype = eqe->sub_type; in mlx5_ib_eq_pf_process()
1407 eqe->sub_type, pfault->bytes_committed); in mlx5_ib_eq_pf_process()
1409 switch (eqe->sub_type) { in mlx5_ib_eq_pf_process()
1458 eqe->sub_type); in mlx5_ib_eq_pf_process()
Ddevx.c251 static u16 get_event_obj_type(unsigned long event_type, struct mlx5_eqe *eqe) in get_event_obj_type() argument
264 return eqe->data.qp_srq.type; in get_event_obj_type()
272 return MLX5_GET(affiliated_event_header, &eqe->data, obj_type); in get_event_obj_type()
1429 static void devx_cq_comp(struct mlx5_core_cq *mcq, struct mlx5_eqe *eqe) in devx_cq_comp() argument
1447 dispatch_event_fd(&obj_event->obj_sub_list, eqe); in devx_cq_comp()
2414 struct mlx5_eqe *eqe = data; in devx_get_obj_id_from_event() local
2428 obj_id = be32_to_cpu(eqe->data.qp_srq.qp_srq_n) & 0xffffff; in devx_get_obj_id_from_event()
2431 obj_id = be32_to_cpu(eqe->data.xrq_err.type_xrqn) & 0xffffff; in devx_get_obj_id_from_event()
2435 obj_id = be32_to_cpu(eqe->data.dct.dctn) & 0xffffff; in devx_get_obj_id_from_event()
2438 obj_id = be32_to_cpu(eqe->data.cq_err.cqn) & 0xffffff; in devx_get_obj_id_from_event()
[all …]
/linux-6.6.21/drivers/infiniband/hw/erdma/
Derdma_eq.c24 u64 *eqe = get_queue_entry(eq->qbuf, eq->ci, eq->depth, EQE_SHIFT); in get_next_valid_eqe() local
25 u32 owner = FIELD_GET(ERDMA_CEQE_HDR_O_MASK, READ_ONCE(*eqe)); in get_next_valid_eqe()
27 return owner ^ !!(eq->ci & eq->depth) ? eqe : NULL; in get_next_valid_eqe()
/linux-6.6.21/drivers/net/ethernet/ibm/ehea/
Dehea_main.c925 struct ehea_eqe *eqe; in ehea_qp_aff_irq_handler() local
931 eqe = ehea_poll_eq(port->qp_eq); in ehea_qp_aff_irq_handler()
933 while (eqe) { in ehea_qp_aff_irq_handler()
934 qp_token = EHEA_BMASK_GET(EHEA_EQE_QP_TOKEN, eqe->entry); in ehea_qp_aff_irq_handler()
936 eqe->entry, qp_token); in ehea_qp_aff_irq_handler()
950 eqe = ehea_poll_eq(port->qp_eq); in ehea_qp_aff_irq_handler()
1138 static void ehea_parse_eqe(struct ehea_adapter *adapter, u64 eqe) in ehea_parse_eqe() argument
1146 ec = EHEA_BMASK_GET(NEQE_EVENT_CODE, eqe); in ehea_parse_eqe()
1147 portnum = EHEA_BMASK_GET(NEQE_PORTNUM, eqe); in ehea_parse_eqe()
1158 if (EHEA_BMASK_GET(NEQE_PORT_UP, eqe)) { in ehea_parse_eqe()
[all …]
/linux-6.6.21/drivers/net/ethernet/mellanox/mlx5/core/sf/
Dvhca_event.c108 struct mlx5_eqe *eqe = data; in mlx5_vhca_state_change_notifier() local
115 work->event.function_id = be16_to_cpu(eqe->data.vhca_state.function_id); in mlx5_vhca_state_change_notifier()
/linux-6.6.21/drivers/net/ethernet/microsoft/mana/
Dgdma_main.c350 struct gdma_eqe *eqe; in mana_gd_process_eqe() local
353 eqe = &eq_eqe_ptr[head]; in mana_gd_process_eqe()
354 eqe_info.as_uint32 = eqe->eqe_info; in mana_gd_process_eqe()
359 cq_id = eqe->details[0] & 0xFFFFFF; in mana_gd_process_eqe()
384 memcpy(&event.details, &eqe->details, GDMA_EVENT_DATA_SIZE); in mana_gd_process_eqe()
400 struct gdma_eqe *eqe; in mana_gd_process_eq_events() local
411 eqe = &eq_eqe_ptr[eq->head % num_eqe]; in mana_gd_process_eq_events()
412 eqe_info.as_uint32 = eqe->eqe_info; in mana_gd_process_eq_events()
/linux-6.6.21/drivers/net/ethernet/mellanox/mlx5/core/en/
Dmonitor_stats.c60 unsigned long event, void *eqe) in mlx5e_monitor_event_handler() argument
/linux-6.6.21/drivers/scsi/be2iscsi/
Dbe_main.c686 struct be_eq_entry *eqe; in be_isr_mcc() local
696 eqe = queue_tail_node(eq); in be_isr_mcc()
699 while (eqe->dw[offsetof(struct amap_eq_entry, valid) / 32] in be_isr_mcc()
701 if (((eqe->dw[offsetof(struct amap_eq_entry, in be_isr_mcc()
706 AMAP_SET_BITS(struct amap_eq_entry, valid, eqe, 0); in be_isr_mcc()
708 eqe = queue_tail_node(eq); in be_isr_mcc()
750 struct be_eq_entry *eqe; in be_isr() local
771 eqe = queue_tail_node(eq); in be_isr()
775 while (eqe->dw[offsetof(struct amap_eq_entry, valid) / 32] in be_isr()
777 if (((eqe->dw[offsetof(struct amap_eq_entry, in be_isr()
[all …]

123