| /linux/drivers/net/ethernet/mellanox/mlx4/ |
| H A D | eq.c | 123 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/drivers/infiniband/hw/mthca/ |
| H A D | mthca_eq.c | 236 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/drivers/net/ethernet/mellanox/mlx5/core/ |
| H A D | events.c | 150 struct mlx5_eqe *eqe = data; in any_notifier() local 153 eqe_type_str(eqe->type), eqe->sub_type); in any_notifier() 179 struct mlx5_eqe *eqe = data; in temp_warn() local 183 value_lsb = be64_to_cpu(eqe->data.temp_warning.sensor_warning_lsb); in temp_warn() 188 value_msb = be64_to_cpu(eqe->data.temp_warning.sensor_warning_msb); in temp_warn() 253 struct mlx5_eqe *eqe = data; in port_module() local 261 module_event_eqe = &eqe->data.port_module; in port_module() 344 struct mlx5_eqe *eqe = data; in pcie_core() local 346 switch (eqe->sub_type) { in pcie_core() 367 struct mlx5_eqe *eqe = data; in forward_event() local [all …]
|
| H A D | eq.c | 113 struct mlx5_eqe *eqe; in mlx5_eq_comp_int() local 116 while ((eqe = next_eqe_sw(eq))) { in mlx5_eq_comp_int() 125 cqn = be32_to_cpu(eqe->data.comp.cqn) & 0xffffff; in mlx5_eq_comp_int() 130 cq->comp(cq, eqe); in mlx5_eq_comp_int() 199 struct mlx5_eqe *eqe; in mlx5_eq_async_int() local 210 while ((eqe = next_eqe_sw(eq))) { in mlx5_eq_async_int() 217 atomic_notifier_call_chain(&eqt->nh[eqe->type], eqe->type, eqe); in mlx5_eq_async_int() 218 atomic_notifier_call_chain(&eqt->nh[MLX5_EVENT_TYPE_NOTIFY_ANY], eqe->type, eqe); in mlx5_eq_async_int() 244 struct mlx5_eqe *eqe; in init_eq_buf() local 248 eqe = get_eqe(eq, i); in init_eq_buf() [all …]
|
| H A D | pagealloc.c | 625 struct mlx5_eqe *eqe; in req_pages_handler() local 633 eqe = data; in req_pages_handler() 635 func_id = be16_to_cpu(eqe->data.req_pages.func_id); in req_pages_handler() 636 npages = be32_to_cpu(eqe->data.req_pages.num_pages); in req_pages_handler() 637 ec_function = be16_to_cpu(eqe->data.req_pages.ec_function) & EC_FUNCTION_MASK; in req_pages_handler() 638 release_all = be16_to_cpu(eqe->data.req_pages.ec_function) & in req_pages_handler()
|
| H A D | fw_reset.c | 764 static void mlx5_sync_reset_events_handle(struct mlx5_fw_reset *fw_reset, struct mlx5_eqe *eqe) in mlx5_sync_reset_events_handle() argument 769 sync_fw_update_eqe = &eqe->data.sync_fw_update; in mlx5_sync_reset_events_handle() 804 struct mlx5_eqe *eqe = data; in fw_reset_event_notifier() local 809 switch (eqe->sub_type) { in fw_reset_event_notifier() 814 mlx5_sync_reset_events_handle(fw_reset, eqe); in fw_reset_event_notifier()
|
| H A D | cq.c | 70 struct mlx5_eqe *eqe) in mlx5_add_cq_to_tasklet() argument 100 static void mlx5_core_cq_dummy_cb(struct mlx5_core_cq *cq, struct mlx5_eqe *eqe) in mlx5_core_cq_dummy_cb() argument
|
| /linux/drivers/net/ethernet/mellanox/mlxsw/ |
| H A D | pci_hw.h | 382 MLXSW_ITEM32(pci, eqe, event_type, 0x0C, 24, 8); 389 MLXSW_ITEM32(pci, eqe, event_sub_type, 0x0C, 16, 8); 394 MLXSW_ITEM32(pci, eqe, cqn, 0x0C, 8, 7); 399 MLXSW_ITEM32(pci, eqe, owner, 0x0C, 0, 1); 404 MLXSW_ITEM32(pci, eqe, cmd_token, 0x00, 16, 16); 409 MLXSW_ITEM32(pci, eqe, cmd_status, 0x00, 0, 8); 414 MLXSW_ITEM32(pci, eqe, cmd_out_param_h, 0x04, 0, 32); 419 MLXSW_ITEM32(pci, eqe, cmd_out_param_l, 0x08, 0, 32);
|
| /linux/drivers/net/ethernet/mellanox/mlx5/core/fpga/ |
| H A D | core.c | 163 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/include/linux/mlx5/ |
| H A D | cq.h | 48 void (*comp)(struct mlx5_core_cq *cq, struct mlx5_eqe *eqe); 56 void (*comp)(struct mlx5_core_cq *cq, struct mlx5_eqe *eqe); 186 void mlx5_add_cq_to_tasklet(struct mlx5_core_cq *cq, struct mlx5_eqe *eqe);
|
| /linux/drivers/infiniband/hw/vmw_pvrdma/ |
| H A D | pvrdma_main.c | 439 struct pvrdma_eqe *eqe; in pvrdma_intr1_handler() local 441 eqe = get_eqe(dev, head); in pvrdma_intr1_handler() 443 switch (eqe->type) { in pvrdma_intr1_handler() 452 pvrdma_qp_event(dev, eqe->info, eqe->type); in pvrdma_intr1_handler() 456 pvrdma_cq_event(dev, eqe->info, eqe->type); in pvrdma_intr1_handler() 461 pvrdma_srq_event(dev, eqe->info, eqe->type); in pvrdma_intr1_handler() 471 pvrdma_dev_event(dev, eqe->info, eqe->type); in pvrdma_intr1_handler() 475 pvrdma_dev_event(dev, 1, eqe->type); in pvrdma_intr1_handler()
|
| /linux/drivers/net/ethernet/mellanox/mlx5/core/lag/ |
| H A D | mpesw.c | 254 struct mlx5_eqe *eqe = data; in mlx5_lag_mpesw_port_change_event() local 259 if (eqe->sub_type == MLX5_PORT_CHANGE_SUBTYPE_DOWN || in mlx5_lag_mpesw_port_change_event() 260 eqe->sub_type == MLX5_PORT_CHANGE_SUBTYPE_ACTIVE) in mlx5_lag_mpesw_port_change_event()
|
| /linux/drivers/infiniband/hw/efa/ |
| H A D | efa_main.c | 77 static void efa_process_comp_eqe(struct efa_dev *dev, struct efa_admin_eqe *eqe) in efa_process_comp_eqe() argument 79 u16 cqn = eqe->u.comp_event.cqn; in efa_process_comp_eqe() 94 static void efa_process_eqe(struct efa_com_eq *eeq, struct efa_admin_eqe *eqe) in efa_process_eqe() argument 98 if (likely(EFA_GET(&eqe->common, EFA_ADMIN_EQE_EVENT_TYPE) == in efa_process_eqe() 100 efa_process_comp_eqe(dev, eqe); in efa_process_eqe() 104 EFA_GET(&eqe->common, in efa_process_eqe()
|
| /linux/drivers/infiniband/hw/mlx4/ |
| H A D | mad.c | 63 #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/drivers/net/ethernet/ibm/ehea/ |
| H A D | ehea_main.c | 925 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 …]
|
| H A D | ehea_qmr.c | 305 struct ehea_eqe *eqe; in ehea_poll_eq() local 309 eqe = hw_eqit_eq_get_inc_valid(&eq->hw_queue); in ehea_poll_eq() 312 return eqe; in ehea_poll_eq()
|
| /linux/drivers/infiniband/hw/mlx5/ |
| H A D | qpc.c | 93 static int dct_event_notifier(struct mlx5_ib_dev *dev, struct mlx5_eqe *eqe) in dct_event_notifier() argument 99 qpn = be32_to_cpu(eqe->data.dct.dctn) & 0xFFFFFF; in dct_event_notifier() 114 struct mlx5_eqe *eqe = data; in rsc_event_notifier() local 121 return dct_event_notifier(dev, eqe); in rsc_event_notifier() 130 rsn = be32_to_cpu(eqe->data.qp_srq.qp_srq_n) & 0xffffff; in rsc_event_notifier() 131 rsn |= (eqe->data.qp_srq.type << MLX5_USER_INDEX_LEN); in rsc_event_notifier()
|
| H A D | odp.c | 1641 struct mlx5_eqe *eqe; in mlx5_ib_eq_pf_process() local 1644 while ((eqe = mlx5_eq_get_eqe(eq->core, cc))) { in mlx5_ib_eq_pf_process() 1651 pf_eqe = &eqe->data.page_fault; in mlx5_ib_eq_pf_process() 1652 pfault->event_subtype = eqe->sub_type; in mlx5_ib_eq_pf_process() 1654 switch (eqe->sub_type) { in mlx5_ib_eq_pf_process() 1675 eqe->sub_type, pfault->bytes_committed, in mlx5_ib_eq_pf_process() 1702 eqe->sub_type, pfault->bytes_committed, in mlx5_ib_eq_pf_process() 1731 eqe->sub_type, pfault->token, in mlx5_ib_eq_pf_process() 1745 eqe->sub_type); in mlx5_ib_eq_pf_process()
|
| H A D | srq_cmd.c | 728 struct mlx5_eqe *eqe; in srq_event_notifier() local 737 eqe = data; in srq_event_notifier() 738 srqn = be32_to_cpu(eqe->data.qp_srq.qp_srq_n) & 0xffffff; in srq_event_notifier() 749 srq->event(srq, eqe->type); in srq_event_notifier()
|
| H A D | devx.c | 294 static u16 get_event_obj_type(unsigned long event_type, struct mlx5_eqe *eqe) in get_event_obj_type() argument 307 return eqe->data.qp_srq.type; in get_event_obj_type() 315 return MLX5_GET(affiliated_event_header, &eqe->data, obj_type); in get_event_obj_type() 1492 static void devx_cq_comp(struct mlx5_core_cq *mcq, struct mlx5_eqe *eqe) in devx_cq_comp() argument 1510 dispatch_event_fd(&obj_event->obj_sub_list, eqe); in devx_cq_comp() 2477 struct mlx5_eqe *eqe = data; in devx_get_obj_id_from_event() local 2491 obj_id = be32_to_cpu(eqe->data.qp_srq.qp_srq_n) & 0xffffff; in devx_get_obj_id_from_event() 2494 obj_id = be32_to_cpu(eqe->data.xrq_err.type_xrqn) & 0xffffff; in devx_get_obj_id_from_event() 2498 obj_id = be32_to_cpu(eqe->data.dct.dctn) & 0xffffff; in devx_get_obj_id_from_event() 2501 obj_id = be32_to_cpu(eqe->data.cq_err.cqn) & 0xffffff; in devx_get_obj_id_from_event() [all …]
|
| /linux/drivers/net/ethernet/mellanox/mlx5/core/sf/ |
| H A D | vhca_event.c | 114 struct mlx5_eqe *eqe = data; in mlx5_vhca_state_change_notifier() local 122 work->event.function_id = be16_to_cpu(eqe->data.vhca_state.function_id); in mlx5_vhca_state_change_notifier()
|
| /linux/drivers/infiniband/hw/ionic/ |
| H A D | ionic_admin.c | 766 static bool ionic_next_eqe(struct ionic_eq *eq, struct ionic_v1_eqe *eqe) in ionic_next_eqe() argument 784 *eqe = *qeqe; in ionic_next_eqe() 896 struct ionic_v1_eqe eqe; in ionic_poll_eq() local 902 if (!ionic_next_eqe(eq, &eqe)) in ionic_poll_eq() 912 evt = ionic_v1_eqe_evt(&eqe); in ionic_poll_eq()
|
| /linux/drivers/scsi/be2iscsi/ |
| H A D | be_main.c | 686 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 …]
|
| /linux/drivers/net/ethernet/microsoft/mana/ |
| H A D | gdma_main.c | 571 struct gdma_eqe *eqe; in mana_gd_process_eqe() local 574 eqe = &eq_eqe_ptr[head]; in mana_gd_process_eqe() 575 eqe_info.as_uint32 = eqe->eqe_info; in mana_gd_process_eqe() 580 cq_id = eqe->details[0] & 0xFFFFFF; in mana_gd_process_eqe() 608 memcpy(&event.details, &eqe->details, GDMA_EVENT_DATA_SIZE); in mana_gd_process_eqe() 664 struct gdma_eqe *eqe; in mana_gd_process_eq_events() local 675 eqe = &eq_eqe_ptr[eq->head % num_eqe]; in mana_gd_process_eq_events() 676 eqe_info.as_uint32 = eqe->eqe_info; in mana_gd_process_eq_events()
|
| /linux/drivers/net/ethernet/mellanox/mlx5/core/en/ |
| H A D | monitor_stats.c | 72 unsigned long event, void *eqe) in mlx5e_monitor_event_handler() argument
|