cmdQ
free_cmdQ_buffers(pesge *sge, struct cmdQ *Q, unsigned int credits_pend)
struct cmdQ *Q = &sge->cmdQ[i];
setup_ring_params(ap, sge->cmdQ[0].cq_pa, sge->cmdQ[0].cq_entries_n,
setup_ring_params(ap, sge->cmdQ[1].cq_pa, sge->cmdQ[1].cq_entries_n,
struct cmdQ *Q = &sge->cmdQ[i];
cmn_err(CE_NOTE, "&sge->cmdQ[0]: %p\n", &sge->cmdQ[0]);
atomic_read(sge->cmdQ[0].cq_asleep)) {
struct cmdQ *Q = &sge->cmdQ[qid];
ddi_dma_handle_t dh = (ddi_dma_handle_t)sge->cmdQ[qid].cq_dh;
spin_lock(&sge->cmdQ[0].cq_qlock);
sge->cmdQ[0].cq_complete += e->Cmdq0CreditReturn;
spin_unlock(&sge->cmdQ[0].cq_qlock);
spin_lock(&sge->cmdQ[1].cq_qlock);
sge->cmdQ[1].cq_complete += e->Cmdq1CreditReturn;
(sge->cmdQ[0].cq_complete +
sge->cmdQ[1].cq_complete) > 16) {
spin_unlock(&sge->cmdQ[1].cq_qlock);
free_cmdQ_buffers(sge, &sge->cmdQ[0], credits_pend[0]);
free_cmdQ_buffers(sge, &sge->cmdQ[1], credits_pend[1]);
free_cmdQ_buffers(sge, &sge->cmdQ[0], credits_pend[0]);
free_cmdQ_buffers(sge, &sge->cmdQ[1], credits_pend[1]);
struct cmdQ *cmdQ = &sge->cmdQ[0];
atomic_set(&cmdQ->cq_asleep, 1);
if (atomic_read(cmdQ->cq_pio_pidx) != cmdQ->cq_pidx) {
atomic_set(&cmdQ->cq_pio_pidx, cmdQ->cq_pidx);
(sge->cmdQ[0].cq_credits > (sge->cmdQ[0].cq_entries_n>>2)) &&
(sge->cmdQ[1].cq_credits > (sge->cmdQ[1].cq_entries_n>>2))) {
(sge->cmdQ[0].cq_credits > (sge->cmdQ[0].cq_entries_n>>1)) &&
(sge->cmdQ[1].cq_credits > (sge->cmdQ[1].cq_entries_n>>1))) {
struct cmdQ cmdQ[2]; /* command Q(s) */