Lines Matching refs:mrb
451 static struct mrb *qla4xxx_get_new_mrb(struct scsi_qla_host *ha) in qla4xxx_get_new_mrb()
453 struct mrb *mrb; in qla4xxx_get_new_mrb() local
455 mrb = kzalloc(sizeof(*mrb), GFP_KERNEL); in qla4xxx_get_new_mrb()
456 if (!mrb) in qla4xxx_get_new_mrb()
457 return mrb; in qla4xxx_get_new_mrb()
459 mrb->ha = ha; in qla4xxx_get_new_mrb()
460 return mrb; in qla4xxx_get_new_mrb()
463 static int qla4xxx_send_mbox_iocb(struct scsi_qla_host *ha, struct mrb *mrb, in qla4xxx_send_mbox_iocb() argument
475 rval = qla4xxx_get_req_pkt(ha, (struct queue_entry **) &(mrb->mbox)); in qla4xxx_send_mbox_iocb()
491 mrb->iocb_cnt = 1; in qla4xxx_send_mbox_iocb()
492 ha->active_mrb_array[index] = mrb; in qla4xxx_send_mbox_iocb()
493 mrb->mbox->handle = index; in qla4xxx_send_mbox_iocb()
494 mrb->mbox->hdr.entryType = ET_MBOX_CMD; in qla4xxx_send_mbox_iocb()
495 mrb->mbox->hdr.entryCount = mrb->iocb_cnt; in qla4xxx_send_mbox_iocb()
496 memcpy(mrb->mbox->in_mbox, in_mbox, 32); in qla4xxx_send_mbox_iocb()
497 mrb->mbox_cmd = in_mbox[0]; in qla4xxx_send_mbox_iocb()
500 ha->iocb_cnt += mrb->iocb_cnt; in qla4xxx_send_mbox_iocb()
511 struct mrb *mrb = NULL; in qla4xxx_ping_iocb() local
516 mrb = qla4xxx_get_new_mrb(ha); in qla4xxx_ping_iocb()
517 if (!mrb) { in qla4xxx_ping_iocb()
532 mrb->pid = pid; in qla4xxx_ping_iocb()
533 rval = qla4xxx_send_mbox_iocb(ha, mrb, in_mbox); in qla4xxx_ping_iocb()
540 kfree(mrb); in qla4xxx_ping_iocb()