Home | History | Annotate | Download | only in ic

Lines Matching defs:xs

60 static void	ahd_setup_data(struct ahd_softc *ahd, struct scsipi_xfer *xs,
201 struct scsipi_xfer *xs;
207 xs = scb->xs;
208 periph = xs->xs_periph;
210 callout_stop(&scb->xs->xs_callout);
212 if (xs->datalen) {
215 if (xs->xs_control & XS_CTL_DATA_IN)
238 struct scsipi_xfer *txs = list_scb->xs;
251 scsipi_printaddr(xs->xs_periph);
253 ahd_name(ahd), xs->status);
256 if (xs->error != XS_NOERROR) {
258 } else if ((xs->status == SCSI_STATUS_BUSY) ||
259 (xs->status == SCSI_STATUS_QUEUE_FULL)) {
275 memset(&xs->sense.scsi_sense, 0, sizeof(xs->sense.scsi_sense));
276 memcpy(&xs->sense.scsi_sense, ahd_get_sense_buf(ahd, scb),
291 sizeof(xs->sense.scsi_sense));
292 memset(&xs->sense.scsi_sense, 0, sizeof(xs->sense.scsi_sense));
293 memcpy(&xs->sense.scsi_sense,
299 printf(" 0x%x", ((uint8_t *)&xs->sense.scsi_sense)[i]);
317 scsipi_done(xs);
333 struct scsipi_xfer *xs;
343 xs = arg;
344 periph = xs->xs_periph;
359 if (xs->xs_tag_type != 0 ||
367 xs->error = XS_RESOURCE_SHORTAGE;
369 scsipi_done(xs);
377 scb->xs = xs;
385 if (xs->xs_control & XS_CTL_RESET) {
395 ahd_setup_data(ahd, xs, scb);
531 struct scsipi_xfer *xs;
539 xs = scb->xs;
540 xs->error = 0;
541 xs->status = 0;
542 xs->xs_status = 0;
544 xs->xs_periph->periph_channel->chan_adapter->adapt_dev);
563 if (xs->xs_control & XS_CTL_DATA_IN)
598 scb->hscb->control |= xs->xs_tag_type|TAG_ENB;
607 if ((xs->xs_control & XS_CTL_DISCOVERY) &&
624 if (!(xs->xs_control & XS_CTL_POLL)) {
625 callout_reset(&scb->xs->xs_callout, xs->timeout > 1000000 ?
626 (xs->timeout / 1000) * hz : (xs->timeout * hz) / 1000,
641 if (!(xs->xs_control & XS_CTL_POLL)) {
648 SC_DEBUG(xs->xs_periph, SCSIPI_DB3, ("cmd_poll\n"));
650 if (ahd_poll(ahd, xs->timeout)) {
651 if (!(xs->xs_control & XS_CTL_SILENT))
656 } while (!(xs->xs_status & XS_STS_DONE));
682 ahd_setup_data(struct ahd_softc *ahd, struct scsipi_xfer *xs,
688 xs->resid = xs->status = 0;
690 hscb->cdb_len = xs->cmdlen;
704 scsipi_done(xs);
706 memcpy(hscb->shared_data.idata.cdb, xs->cmd, hscb->cdb_len);
709 if (xs->datalen) {
713 scb->dmamap, xs->data,
714 xs->datalen, NULL,
715 ((xs->xs_control & XS_CTL_NOSLEEP) ?
718 ((xs->xs_control & XS_CTL_DATA_IN) ?
726 xs->error = XS_RESOURCE_SHORTAGE;
727 scsipi_done(xs);