Lines Matching refs:hwe_cb
116 struct hinic_hw_event_cb *hwe_cb = &aeqs->hwe_cb[event]; in hinic_aeq_register_hw_cb() local
118 hwe_cb->hwe_handler = hwe_handler; in hinic_aeq_register_hw_cb()
119 hwe_cb->handle = handle; in hinic_aeq_register_hw_cb()
120 hwe_cb->hwe_state = HINIC_EQE_ENABLED; in hinic_aeq_register_hw_cb()
131 struct hinic_hw_event_cb *hwe_cb = &aeqs->hwe_cb[event]; in hinic_aeq_unregister_hw_cb() local
133 hwe_cb->hwe_state &= ~HINIC_EQE_ENABLED; in hinic_aeq_unregister_hw_cb()
135 while (hwe_cb->hwe_state & HINIC_EQE_RUNNING) in hinic_aeq_unregister_hw_cb()
138 hwe_cb->hwe_handler = NULL; in hinic_aeq_unregister_hw_cb()
224 struct hinic_hw_event_cb *hwe_cb; in aeq_irq_handler() local
249 hwe_cb = &aeqs->hwe_cb[event]; in aeq_irq_handler()
253 eqe_state = cmpxchg(&hwe_cb->hwe_state, in aeq_irq_handler()
258 hwe_cb->hwe_handler) in aeq_irq_handler()
259 hwe_cb->hwe_handler(hwe_cb->handle, in aeq_irq_handler()
265 hwe_cb->hwe_state &= ~HINIC_EQE_RUNNING; in aeq_irq_handler()