Lines Matching refs:eqe

206 static void qp_event_callback(struct ehca_shca *shca, u64 eqe,  in qp_event_callback()  argument
210 u32 token = EHCA_BMASK_GET(EQE_QP_TOKEN, eqe); in qp_event_callback()
241 u64 eqe) in cq_event_callback() argument
244 u32 token = EHCA_BMASK_GET(EQE_CQ_TOKEN, eqe); in cq_event_callback()
263 static void parse_identifier(struct ehca_shca *shca, u64 eqe) in parse_identifier() argument
265 u8 identifier = EHCA_BMASK_GET(EQE_EE_IDENTIFIER, eqe); in parse_identifier()
269 qp_event_callback(shca, eqe, IB_EVENT_PATH_MIG, 0); in parse_identifier()
272 qp_event_callback(shca, eqe, IB_EVENT_COMM_EST, 0); in parse_identifier()
275 qp_event_callback(shca, eqe, IB_EVENT_SQ_DRAINED, 0); in parse_identifier()
279 qp_event_callback(shca, eqe, IB_EVENT_QP_FATAL, 1); in parse_identifier()
283 cq_event_callback(shca, eqe); in parse_identifier()
316 qp_event_callback(shca, eqe, IB_EVENT_SRQ_LIMIT_REACHED, 0); in parse_identifier()
385 static void parse_ec(struct ehca_shca *shca, u64 eqe) in parse_ec() argument
387 u8 ec = EHCA_BMASK_GET(NEQE_EVENT_CODE, eqe); in parse_ec()
388 u8 port = EHCA_BMASK_GET(NEQE_PORT_NUMBER, eqe); in parse_ec()
394 if (EHCA_BMASK_GET(NEQE_PORT_AVAILABILITY, eqe)) { in parse_ec()
418 if (EHCA_BMASK_GET(NEQE_DISRUPTIVE, eqe)) { in parse_ec()
441 spec_event = EHCA_BMASK_GET(NEQE_SPECIFIC_EVENT, eqe); in parse_ec()
482 struct ehca_eqe *eqe; in ehca_tasklet_neq() local
485 eqe = ehca_poll_eq(shca, &shca->neq); in ehca_tasklet_neq()
487 while (eqe) { in ehca_tasklet_neq()
488 if (!EHCA_BMASK_GET(NEQE_COMPLETION_EVENT, eqe->entry)) in ehca_tasklet_neq()
489 parse_ec(shca, eqe->entry); in ehca_tasklet_neq()
491 eqe = ehca_poll_eq(shca, &shca->neq); in ehca_tasklet_neq()
513 static inline void process_eqe(struct ehca_shca *shca, struct ehca_eqe *eqe) in process_eqe() argument
519 eqe_value = eqe->entry; in process_eqe()
577 eqe_cache[eqe_cnt].eqe = ehca_poll_eq(shca, eq); in ehca_process_eq()
578 if (!eqe_cache[eqe_cnt].eqe) in ehca_process_eq()
580 eqe_value = eqe_cache[eqe_cnt].eqe->entry; in ehca_process_eq()
634 parse_identifier(shca, eq->eqe_cache[i].eqe->entry); in ehca_process_eq()
640 struct ehca_eqe *eqe; in ehca_process_eq() local
641 eqe = ehca_poll_eq(shca, &shca->eq); in ehca_process_eq()
642 if (!eqe) in ehca_process_eq()
644 process_eqe(shca, eqe); in ehca_process_eq()