Lines Matching full:crq
70 /* VSCSI CRQ format from table 260 of PAPR spec 2.4 (page 760) */
324 /* CRQ area */ in vscsi_attach()
494 struct vscsi_crq crq; in vscsi_srp_login() local
508 crq.iu_length = htobe16(xp->srp_iu_size); in vscsi_srp_login()
523 /* Create CRQ entry */ in vscsi_srp_login()
524 crq.valid = 0x80; in vscsi_srp_login()
525 crq.format = 0x01; in vscsi_srp_login()
526 crq.iu_data = htobe64(xp->sc->srp_iu_phys + xp->srp_iu_offset); in vscsi_srp_login()
530 be64toh(((uint64_t *)(&crq))[0]), in vscsi_srp_login()
531 be64toh(((uint64_t *)(&crq))[1])); in vscsi_srp_login()
533 panic("CRQ send failure (%d)", err); in vscsi_srp_login()
541 struct vscsi_crq crq; in vscsi_task_management() local
554 crq.iu_length = htobe16(xp->srp_iu_size); in vscsi_task_management()
578 /* Create CRQ entry */ in vscsi_task_management()
579 crq.valid = 0x80; in vscsi_task_management()
580 crq.format = 0x01; in vscsi_task_management()
581 crq.iu_data = htobe64(xp->sc->srp_iu_phys + xp->srp_iu_offset); in vscsi_task_management()
584 be64toh(((uint64_t *)(&crq))[0]), in vscsi_task_management()
585 be64toh(((uint64_t *)(&crq))[1])); in vscsi_task_management()
587 panic("CRQ send failure (%d)", err); in vscsi_task_management()
600 struct vscsi_crq crq; in vscsi_scsi_command() local
612 crq.iu_length = htobe16(xp->srp_iu_size); in vscsi_scsi_command()
706 /* Create CRQ entry */ in vscsi_scsi_command()
707 crq.valid = 0x80; in vscsi_scsi_command()
708 crq.format = 0x01; in vscsi_scsi_command()
709 crq.iu_data = htobe64(xp->sc->srp_iu_phys + xp->srp_iu_offset); in vscsi_scsi_command()
712 be64toh(((uint64_t *)(&crq))[0]), in vscsi_scsi_command()
713 be64toh(((uint64_t *)(&crq))[1])); in vscsi_scsi_command()
715 panic("CRQ send failure (%d)", err); in vscsi_scsi_command()
735 struct vscsi_crq crq; in vscsi_setup_bus() local
755 bzero(&crq, sizeof(crq)); in vscsi_setup_bus()
758 crq.valid = 0xc0; in vscsi_setup_bus()
759 crq.format = 0x01; in vscsi_setup_bus()
773 KASSERT(error == 0, ("CRQ registration success")); in vscsi_setup_bus()
776 be64toh(((uint64_t *)(&crq))[0]), in vscsi_setup_bus()
777 be64toh(((uint64_t *)(&crq))[1])); in vscsi_setup_bus()
779 panic("CRQ setup failure (%d)", error); in vscsi_setup_bus()
808 crq.iu_length = htobe16(xp->srp_iu_size); in vscsi_setup_bus()
815 crq.valid = 0x80; in vscsi_setup_bus()
816 crq.format = 0x02; in vscsi_setup_bus()
817 crq.iu_data = htobe64(xp->sc->srp_iu_phys + xp->srp_iu_offset); in vscsi_setup_bus()
820 be64toh(((uint64_t *)(&crq))[0]), in vscsi_setup_bus()
821 be64toh(((uint64_t *)(&crq))[1])); in vscsi_setup_bus()
845 vscsi_srp_response(struct vscsi_xfer *xp, struct vscsi_crq *crq) in vscsi_srp_response() argument
862 if (crq->status != 0) in vscsi_srp_response()
908 vscsi_login_response(struct vscsi_xfer *xp, struct vscsi_crq *crq) in vscsi_login_response() argument
936 struct vscsi_crq *crq; in vscsi_check_response_queue() local
947 crq = &sc->crq_queue[sc->cur_crq]; in vscsi_check_response_queue()
949 switch (crq->valid) { in vscsi_check_response_queue()
951 if (crq->format == 0x02) in vscsi_check_response_queue()
956 xp = (struct vscsi_xfer *)crq->iu_data; in vscsi_check_response_queue()
958 switch (crq->format) { in vscsi_check_response_queue()
964 vscsi_srp_response(xp, crq); in vscsi_check_response_queue()
967 vscsi_login_response(xp, crq); in vscsi_check_response_queue()
979 panic("Unknown CRQ format %d\n", crq->format); in vscsi_check_response_queue()
989 "Unknown CRQ message type %d\n", crq->valid); in vscsi_check_response_queue()
993 crq->valid = 0; in vscsi_check_response_queue()