Lines Matching defs:screq
134 scsireq_t *screq;
154 screq = &si->si_screq;
158 screq->retsts = 0;
159 screq->status = xs->status;
163 screq->datalen_used =
165 screq->retsts = SCCMD_OK;
169 screq->senselen_used = uimin(sizeof(xs->sense.scsi_sense),
171 memcpy(screq->sense, &xs->sense.scsi_sense,
172 screq->senselen_used);
173 screq->retsts = SCCMD_SENSE;
177 screq->senselen_used = uimin(sizeof(xs->sense.atapi_sense),
179 memcpy(screq->sense, &xs->sense.atapi_sense,
180 screq->senselen_used);
181 screq->retsts = SCCMD_UNKNOWN; /* XXX need a shortsense here */
186 screq->retsts = SCCMD_UNKNOWN;
190 screq->retsts = SCCMD_TIMEOUT;
194 screq->retsts = SCCMD_TIMEOUT;
198 screq->retsts = SCCMD_BUSY;
204 screq->retsts = SCCMD_UNKNOWN;
229 * the screq structure. [JRE]
235 scsireq_t *screq;
247 screq = &si->si_screq;
254 if (bp->b_bcount != screq->datalen) {
261 if (screq->timeout == 0) {
266 if (screq->cmdlen > sizeof(struct scsipi_generic)) {
273 if ((screq->flags & SCCMD_READ) && screq->datalen > 0)
275 if ((screq->flags & SCCMD_WRITE) && screq->datalen > 0)
277 if (screq->flags & SCCMD_TARGET)
279 if (screq->flags & SCCMD_ESCAPE)
282 error = scsipi_command(periph, (void *)screq->cmd, screq->cmdlen,
283 (void *)bp->b_data, screq->datalen,
285 screq->timeout, bp, flags | XS_CTL_USERCMD);
329 scsireq_t *screq = (scsireq_t *)addr;
333 len = screq->datalen;
338 if (len > 0 && (screq->databuf == NULL ||
339 (screq->flags & (SCCMD_READ|SCCMD_WRITE)) == 0))
343 si->si_screq = *screq;
346 si->si_iov.iov_base = screq->databuf;
353 (screq->flags & SCCMD_READ) ? UIO_READ : UIO_WRITE;
360 (screq->flags & SCCMD_READ) ? B_READ : B_WRITE,
373 *screq = si->si_screq;