Lines Matching refs:mbm
1195 struct csio_mbm *mbm = &hw->mbm;
1216 if (mbm->mcurrent != NULL) {
1225 list_add_tail(&mbp->list, &mbm->req_q);
1226 CSIO_INC_STATS(mbm, n_activeq);
1253 if (mbm->mcurrent == NULL) {
1278 mbm->mcurrent = mbp;
1279 mod_timer(&mbm->timer, jiffies + msecs_to_jiffies(mbp->tmo));
1290 CSIO_INC_STATS(mbm, n_req);
1328 CSIO_INC_STATS(mbm, n_err);
1330 CSIO_INC_STATS(mbm, n_rsp);
1335 CSIO_INC_STATS(mbm, n_tmo);
1343 CSIO_INC_STATS(mbm, n_err);
1357 struct csio_mbm *mbm = &hw->mbm;
1366 CSIO_INC_STATS(mbm, n_err);
1368 CSIO_INC_STATS(mbm, n_rsp);
1474 struct csio_mbm *mbm = &hw->mbm;
1475 struct csio_mb *mbp = mbm->mcurrent;
1544 mbm->mcurrent = NULL;
1547 list_add_tail(&mbp->list, &mbm->cbfn_q);
1548 CSIO_INC_STATS(mbm, n_cbfnq);
1578 struct csio_mbm *mbm = &hw->mbm;
1579 struct csio_mb *mbp = mbm->mcurrent;
1596 mbm->mcurrent = NULL;
1597 CSIO_INC_STATS(mbm, n_tmo);
1614 struct csio_mbm *mbm = &hw->mbm;
1618 if (mbm->mcurrent) {
1619 mbp = mbm->mcurrent;
1622 del_timer_sync(&mbm->timer);
1626 mbm->mcurrent = NULL;
1629 if (!list_empty(&mbm->req_q)) {
1630 list_splice_tail_init(&mbm->req_q, cbfn_q);
1631 mbm->stats.n_activeq = 0;
1634 if (!list_empty(&mbm->cbfn_q)) {
1635 list_splice_tail_init(&mbm->cbfn_q, cbfn_q);
1636 mbm->stats.n_cbfnq = 0;
1649 CSIO_INC_STATS(mbm, n_cancel);
1656 * @mbm: Mailbox module
1663 csio_mbm_init(struct csio_mbm *mbm, struct csio_hw *hw,
1666 mbm->hw = hw;
1667 timer_setup(&mbm->timer, timer_fn, 0);
1669 INIT_LIST_HEAD(&mbm->req_q);
1670 INIT_LIST_HEAD(&mbm->cbfn_q);
1671 csio_set_mb_intr_idx(mbm, -1);
1678 * @mbm: Mailbox module
1683 csio_mbm_exit(struct csio_mbm *mbm)
1685 del_timer_sync(&mbm->timer);
1687 CSIO_DB_ASSERT(mbm->mcurrent == NULL);
1688 CSIO_DB_ASSERT(list_empty(&mbm->req_q));
1689 CSIO_DB_ASSERT(list_empty(&mbm->cbfn_q));