ecb 339 dev/eisa/aha1742.c ahb_send_mbox(sc, opcode, ecb)
ecb 342 dev/eisa/aha1742.c struct ahb_ecb *ecb;
ecb 360 dev/eisa/aha1742.c bus_space_write_4(iot, ioh, MBOXOUT0, KVTOPHYS(ecb));
ecb 361 dev/eisa/aha1742.c bus_space_write_1(iot, ioh, ATTN, opcode | ecb->xs->sc_link->target);
ecb 560 dev/eisa/aha1742.c struct ahb_ecb *ecb;
ecb 591 dev/eisa/aha1742.c ecb = ahb_ecb_phys_kv(sc, mboxval);
ecb 592 dev/eisa/aha1742.c if (!ecb) {
ecb 600 dev/eisa/aha1742.c ecb->flags |= ECB_IMMED_FAIL;
ecb 602 dev/eisa/aha1742.c ecb = sc->immed_ecb;
ecb 609 dev/eisa/aha1742.c ecb = 0;
ecb 612 dev/eisa/aha1742.c if (ecb) {
ecb 615 dev/eisa/aha1742.c show_scsi_cmd(ecb->xs);
ecb 616 dev/eisa/aha1742.c if ((ahb_debug & AHB_SHOWECBS) && ecb)
ecb 617 dev/eisa/aha1742.c printf("<int ecb(%x)>", ecb);
ecb 619 dev/eisa/aha1742.c timeout_del(&ecb->xs->stimeout);
ecb 620 dev/eisa/aha1742.c ahb_done(sc, ecb);
ecb 634 dev/eisa/aha1742.c ahb_done(sc, ecb)
ecb 636 dev/eisa/aha1742.c struct ahb_ecb *ecb;
ecb 638 dev/eisa/aha1742.c struct ahb_ecb_status *stat = &ecb->ecb_status;
ecb 640 dev/eisa/aha1742.c struct scsi_xfer *xs = ecb->xs;
ecb 647 dev/eisa/aha1742.c if (ecb->flags & ECB_IMMED) {
ecb 648 dev/eisa/aha1742.c if (ecb->flags & ECB_IMMED_FAIL)
ecb 674 dev/eisa/aha1742.c s1 = &ecb->ecb_sense;
ecb 692 dev/eisa/aha1742.c ahb_free_ecb(sc, ecb, xs->flags);
ecb 701 dev/eisa/aha1742.c ahb_free_ecb(sc, ecb, flags)
ecb 703 dev/eisa/aha1742.c struct ahb_ecb *ecb;
ecb 710 dev/eisa/aha1742.c ecb->flags = ECB_FREE;
ecb 711 dev/eisa/aha1742.c TAILQ_INSERT_HEAD(&sc->free_ecb, ecb, chain);
ecb 717 dev/eisa/aha1742.c if (TAILQ_NEXT(ecb, chain) == NULL)
ecb 726 dev/eisa/aha1742.c ahb_init_ecb(sc, ecb)
ecb 728 dev/eisa/aha1742.c struct ahb_ecb *ecb;
ecb 732 dev/eisa/aha1742.c bzero(ecb, sizeof(struct ahb_ecb));
ecb 737 dev/eisa/aha1742.c ecb->hashkey = KVTOPHYS(ecb);
ecb 738 dev/eisa/aha1742.c hashnum = ECB_HASH(ecb->hashkey);
ecb 739 dev/eisa/aha1742.c ecb->nexthash = sc->ecbhash[hashnum];
ecb 740 dev/eisa/aha1742.c sc->ecbhash[hashnum] = ecb;
ecb 746 dev/eisa/aha1742.c ahb_reset_ecb(sc, ecb)
ecb 748 dev/eisa/aha1742.c struct ahb_ecb *ecb;
ecb 764 dev/eisa/aha1742.c struct ahb_ecb *ecb;
ecb 774 dev/eisa/aha1742.c ecb = TAILQ_FIRST(&sc->free_ecb);
ecb 775 dev/eisa/aha1742.c if (ecb) {
ecb 776 dev/eisa/aha1742.c TAILQ_REMOVE(&sc->free_ecb, ecb, chain);
ecb 780 dev/eisa/aha1742.c ecb = (struct ahb_ecb *) malloc(sizeof(struct ahb_ecb),
ecb 782 dev/eisa/aha1742.c if (ecb) {
ecb 783 dev/eisa/aha1742.c ahb_init_ecb(sc, ecb);
ecb 797 dev/eisa/aha1742.c ahb_reset_ecb(sc, ecb);
ecb 798 dev/eisa/aha1742.c ecb->flags = ECB_ACTIVE;
ecb 802 dev/eisa/aha1742.c return ecb;
ecb 814 dev/eisa/aha1742.c struct ahb_ecb *ecb = sc->ecbhash[hashnum];
ecb 816 dev/eisa/aha1742.c while (ecb) {
ecb 817 dev/eisa/aha1742.c if (ecb->hashkey == ecb_phys)
ecb 819 dev/eisa/aha1742.c ecb = ecb->nexthash;
ecb 821 dev/eisa/aha1742.c return ecb;
ecb 947 dev/eisa/aha1742.c struct ahb_ecb *ecb;
ecb 968 dev/eisa/aha1742.c if ((ecb = ahb_get_ecb(sc, flags)) == NULL) {
ecb 971 dev/eisa/aha1742.c ecb->xs = xs;
ecb 972 dev/eisa/aha1742.c timeout_set(&ecb->xs->stimeout, ahb_timeout, ecb);
ecb 981 dev/eisa/aha1742.c ecb->flags |= ECB_IMMED;
ecb 984 dev/eisa/aha1742.c sc->immed_ecb = ecb;
ecb 992 dev/eisa/aha1742.c timeout_add(&ecb->xs->stimeout, (xs->timeout * hz) / 1000);
ecb 1002 dev/eisa/aha1742.c ahb_timeout(ecb);
ecb 1009 dev/eisa/aha1742.c ecb->opcode = ECB_SCSI_OP;
ecb 1010 dev/eisa/aha1742.c ecb->opt1 = ECB_SES | ECB_DSB | ECB_ARS;
ecb 1012 dev/eisa/aha1742.c ecb->opt1 |= ECB_S_G;
ecb 1013 dev/eisa/aha1742.c ecb->opt2 = sc_link->lun | ECB_NRB;
ecb 1014 dev/eisa/aha1742.c ecb->scsi_cmd_length = xs->cmdlen;
ecb 1015 dev/eisa/aha1742.c ecb->sense_ptr = KVTOPHYS(&ecb->ecb_sense);
ecb 1016 dev/eisa/aha1742.c ecb->req_sense_length = sizeof(ecb->ecb_sense);
ecb 1017 dev/eisa/aha1742.c ecb->status = KVTOPHYS(&ecb->ecb_status);
ecb 1018 dev/eisa/aha1742.c ecb->ecb_status.host_stat = 0x00;
ecb 1019 dev/eisa/aha1742.c ecb->ecb_status.target_stat = 0x00;
ecb 1022 dev/eisa/aha1742.c ecb->data_addr = KVTOPHYS(ecb->ahb_dma);
ecb 1023 dev/eisa/aha1742.c sg = ecb->ahb_dma;
ecb 1095 dev/eisa/aha1742.c ecb->data_length = seg * sizeof(struct ahb_dma_seg);
ecb 1104 dev/eisa/aha1742.c ahb_free_ecb(sc, ecb, flags);
ecb 1108 dev/eisa/aha1742.c ecb->data_addr = (physaddr)0;
ecb 1109 dev/eisa/aha1742.c ecb->data_length = 0;
ecb 1111 dev/eisa/aha1742.c ecb->link_addr = (physaddr)0;
ecb 1117 dev/eisa/aha1742.c bcopy(xs->cmd, &ecb->scsi_cmd, ecb->scsi_cmd_length);
ecb 1121 dev/eisa/aha1742.c ahb_send_mbox(sc, OP_START_ECB, ecb);
ecb 1128 dev/eisa/aha1742.c timeout_add(&ecb->xs->stimeout, (xs->timeout * hz) / 1000);
ecb 1138 dev/eisa/aha1742.c ahb_timeout(ecb);
ecb 1140 dev/eisa/aha1742.c ahb_timeout(ecb);
ecb 1149 dev/eisa/aha1742.c struct ahb_ecb *ecb = arg;
ecb 1150 dev/eisa/aha1742.c struct scsi_xfer *xs = ecb->xs;
ecb 1160 dev/eisa/aha1742.c if (ecb->flags & ECB_IMMED) {
ecb 1162 dev/eisa/aha1742.c ecb->xs->retries = 0; /* I MEAN IT ! */
ecb 1163 dev/eisa/aha1742.c ecb->flags |= ECB_IMMED_FAIL;
ecb 1164 dev/eisa/aha1742.c ahb_done(sc, ecb);
ecb 1174 dev/eisa/aha1742.c if (ecb->flags == ECB_ABORTED) {
ecb 1177 dev/eisa/aha1742.c ecb->xs->retries = 0; /* I MEAN IT ! */
ecb 1178 dev/eisa/aha1742.c ahb_done(sc, ecb);
ecb 1182 dev/eisa/aha1742.c ecb->xs->error = XS_TIMEOUT;
ecb 1183 dev/eisa/aha1742.c ecb->flags = ECB_ABORTED;
ecb 1184 dev/eisa/aha1742.c ahb_send_mbox(sc, OP_ABORT_ECB, ecb);
ecb 1187 dev/eisa/aha1742.c timeout_add(&ecb->xs->stimeout, 2 * hz);
ecb 1195 dev/eisa/aha1742.c ahb_print_ecb(ecb)
ecb 1196 dev/eisa/aha1742.c struct ahb_ecb *ecb;
ecb 1199 dev/eisa/aha1742.c ecb, ecb->opcode, ecb->cdblen, ecb->senselen);
ecb 1201 dev/eisa/aha1742.c ecb->datalen, ecb->ecb_status.host_stat,
ecb 1202 dev/eisa/aha1742.c ecb->ecb_status.target_stat, ecb->flags);
ecb 1203 dev/eisa/aha1742.c show_scsi_cmd(ecb->xs);
ecb 1210 dev/eisa/aha1742.c struct ahb_ecb *ecb;
ecb 1214 dev/eisa/aha1742.c ecb = sc->ecb_hash_list[i];
ecb 1215 dev/eisa/aha1742.c while (ecb) {
ecb 1216 dev/eisa/aha1742.c if (ecb->flags != ECB_FREE)
ecb 1217 dev/eisa/aha1742.c ahb_print_ecb(ecb);
ecb 1218 dev/eisa/aha1742.c ecb = ecb->hash_list;
ecb 383 dev/ic/ncr53c9x.c struct ncr53c9x_ecb *ecb;
ecb 409 dev/ic/ncr53c9x.c if ((ecb = sc->sc_nexus) != NULL) {
ecb 410 dev/ic/ncr53c9x.c ecb->xs->error = XS_TIMEOUT;
ecb 411 dev/ic/ncr53c9x.c ncr53c9x_done(sc, ecb);
ecb 415 dev/ic/ncr53c9x.c if ((ecb = li->untagged)) {
ecb 423 dev/ic/ncr53c9x.c ecb->xs->error = XS_TIMEOUT;
ecb 424 dev/ic/ncr53c9x.c ncr53c9x_done(sc, ecb);
ecb 427 dev/ic/ncr53c9x.c if ((ecb = li->queued[i])) {
ecb 429 dev/ic/ncr53c9x.c ecb->xs->error = XS_TIMEOUT;
ecb 430 dev/ic/ncr53c9x.c ncr53c9x_done(sc, ecb);
ecb 593 dev/ic/ncr53c9x.c ncr53c9x_select(sc, ecb)
ecb 595 dev/ic/ncr53c9x.c struct ncr53c9x_ecb *ecb;
ecb 597 dev/ic/ncr53c9x.c struct scsi_link *sc_link = ecb->xs->sc_link;
ecb 608 dev/ic/ncr53c9x.c target, lun, ecb->cmd.cmd.opcode, ecb->tag[0], ecb->tag[1]));
ecb 616 dev/ic/ncr53c9x.c if ((ecb->xs->flags & SCSI_POLL) == 0) {
ecb 617 dev/ic/ncr53c9x.c int timeout = ecb->timeout;
ecb 623 dev/ic/ncr53c9x.c timeout_add(&ecb->to, timeout);
ecb 638 dev/ic/ncr53c9x.c if ((ecb->flags & ECB_SENSE) != 0) {
ecb 646 dev/ic/ncr53c9x.c dmasize = clen = ecb->clen;
ecb 648 dev/ic/ncr53c9x.c sc->sc_cmdp = (caddr_t)&ecb->cmd.cmd;
ecb 662 dev/ic/ncr53c9x.c ncr53c9x_wrfifo(sc, (u_char *)&ecb->cmd.cmd, ecb->clen);
ecb 669 dev/ic/ncr53c9x.c if (ecb->tag[0] != 0) {
ecb 684 dev/ic/ncr53c9x.c cmd = (u_char *)&ecb->cmd.cmd;
ecb 688 dev/ic/ncr53c9x.c clen = ecb->clen + 3;
ecb 691 dev/ic/ncr53c9x.c cmd[1] = ecb->tag[0]; /* msg[1] */
ecb 692 dev/ic/ncr53c9x.c cmd[2] = ecb->tag[1]; /* msg[2] */
ecb 695 dev/ic/ncr53c9x.c clen = ecb->clen + 1;
ecb 748 dev/ic/ncr53c9x.c ncr53c9x_free_ecb(sc, ecb, flags)
ecb 750 dev/ic/ncr53c9x.c struct ncr53c9x_ecb *ecb;
ecb 756 dev/ic/ncr53c9x.c ecb->flags = 0;
ecb 757 dev/ic/ncr53c9x.c pool_put(&ecb_pool, (void *)ecb);
ecb 766 dev/ic/ncr53c9x.c struct ncr53c9x_ecb *ecb;
ecb 773 dev/ic/ncr53c9x.c ecb = (struct ncr53c9x_ecb *)pool_get(&ecb_pool, wait);
ecb 775 dev/ic/ncr53c9x.c if (ecb == NULL)
ecb 777 dev/ic/ncr53c9x.c bzero(ecb, sizeof(*ecb));
ecb 778 dev/ic/ncr53c9x.c timeout_set(&ecb->to, ncr53c9x_timeout, ecb);
ecb 779 dev/ic/ncr53c9x.c ecb->flags |= ECB_ALLOC;
ecb 780 dev/ic/ncr53c9x.c return (ecb);
ecb 798 dev/ic/ncr53c9x.c struct ncr53c9x_ecb *ecb;
ecb 826 dev/ic/ncr53c9x.c if ((ecb = ncr53c9x_get_ecb(sc, flags)) == NULL)
ecb 830 dev/ic/ncr53c9x.c ecb->xs = xs;
ecb 831 dev/ic/ncr53c9x.c ecb->timeout = xs->timeout;
ecb 834 dev/ic/ncr53c9x.c ecb->flags |= ECB_RESET;
ecb 835 dev/ic/ncr53c9x.c ecb->clen = 0;
ecb 836 dev/ic/ncr53c9x.c ecb->dleft = 0;
ecb 838 dev/ic/ncr53c9x.c bcopy(xs->cmd, &ecb->cmd.cmd, xs->cmdlen);
ecb 839 dev/ic/ncr53c9x.c ecb->clen = xs->cmdlen;
ecb 840 dev/ic/ncr53c9x.c ecb->daddr = xs->data;
ecb 841 dev/ic/ncr53c9x.c ecb->dleft = xs->datalen;
ecb 843 dev/ic/ncr53c9x.c ecb->stat = 0;
ecb 847 dev/ic/ncr53c9x.c TAILQ_INSERT_TAIL(&sc->ready_list, ecb, chain);
ecb 848 dev/ic/ncr53c9x.c ecb->flags |= ECB_READY;
ecb 858 dev/ic/ncr53c9x.c if (ncr53c9x_poll(sc, xs, ecb->timeout)) {
ecb 859 dev/ic/ncr53c9x.c ncr53c9x_timeout(ecb);
ecb 860 dev/ic/ncr53c9x.c if (ncr53c9x_poll(sc, xs, ecb->timeout))
ecb 861 dev/ic/ncr53c9x.c ncr53c9x_timeout(ecb);
ecb 912 dev/ic/ncr53c9x.c struct ncr53c9x_ecb *ecb;
ecb 927 dev/ic/ncr53c9x.c TAILQ_FOREACH(ecb, &sc->ready_list, chain) {
ecb 928 dev/ic/ncr53c9x.c sc_link = ecb->xs->sc_link;
ecb 937 dev/ic/ncr53c9x.c else if ((ecb->flags & ECB_SENSE) != 0)
ecb 939 dev/ic/ncr53c9x.c else if (ecb->xs->flags & SCSI_URGENT)
ecb 945 dev/ic/ncr53c9x.c if (ecb->xs->flags & SCSI_POLL)
ecb 967 dev/ic/ncr53c9x.c li->untagged = ecb;
ecb 973 dev/ic/ncr53c9x.c ecb = li->untagged;
ecb 974 dev/ic/ncr53c9x.c sc_link = ecb->xs->sc_link;
ecb 982 dev/ic/ncr53c9x.c ecb->tag[0] = tag;
ecb 1013 dev/ic/ncr53c9x.c li->queued[i] = ecb;
ecb 1014 dev/ic/ncr53c9x.c ecb->tag[1] = i;
ecb 1019 dev/ic/ncr53c9x.c TAILQ_REMOVE(&sc->ready_list, ecb, chain);
ecb 1020 dev/ic/ncr53c9x.c ecb->flags &= ~ECB_READY;
ecb 1021 dev/ic/ncr53c9x.c sc->sc_nexus = ecb;
ecb 1022 dev/ic/ncr53c9x.c ncr53c9x_select(sc, ecb);
ecb 1026 dev/ic/ncr53c9x.c TAILQ_REMOVE(&sc->ready_list, ecb, chain);
ecb 1027 dev/ic/ncr53c9x.c ecb->flags &= ~ECB_READY;
ecb 1028 dev/ic/ncr53c9x.c sc->sc_nexus = ecb;
ecb 1029 dev/ic/ncr53c9x.c ncr53c9x_select(sc, ecb);
ecb 1039 dev/ic/ncr53c9x.c ncr53c9x_sense(sc, ecb)
ecb 1041 dev/ic/ncr53c9x.c struct ncr53c9x_ecb *ecb;
ecb 1043 dev/ic/ncr53c9x.c struct scsi_xfer *xs = ecb->xs;
ecb 1046 dev/ic/ncr53c9x.c struct scsi_sense *ss = (void *)&ecb->cmd.cmd;
ecb 1056 dev/ic/ncr53c9x.c ecb->clen = sizeof(*ss);
ecb 1057 dev/ic/ncr53c9x.c ecb->daddr = (char *)&xs->sense;
ecb 1058 dev/ic/ncr53c9x.c ecb->dleft = sizeof(struct scsi_sense_data);
ecb 1059 dev/ic/ncr53c9x.c ecb->flags |= ECB_SENSE;
ecb 1060 dev/ic/ncr53c9x.c ecb->timeout = NCR_SENSE_TIMEOUT;
ecb 1064 dev/ic/ncr53c9x.c ncr53c9x_dequeue(sc, ecb);
ecb 1065 dev/ic/ncr53c9x.c li->untagged = ecb;
ecb 1067 dev/ic/ncr53c9x.c if (ecb == sc->sc_nexus) {
ecb 1068 dev/ic/ncr53c9x.c ncr53c9x_select(sc, ecb);
ecb 1070 dev/ic/ncr53c9x.c TAILQ_INSERT_HEAD(&sc->ready_list, ecb, chain);
ecb 1071 dev/ic/ncr53c9x.c ecb->flags |= ECB_READY;
ecb 1081 dev/ic/ncr53c9x.c ncr53c9x_done(sc, ecb)
ecb 1083 dev/ic/ncr53c9x.c struct ncr53c9x_ecb *ecb;
ecb 1085 dev/ic/ncr53c9x.c struct scsi_xfer *xs = ecb->xs;
ecb 1093 dev/ic/ncr53c9x.c timeout_del(&ecb->to);
ecb 1095 dev/ic/ncr53c9x.c if (ecb->stat == SCSI_QUEUE_FULL) {
ecb 1114 dev/ic/ncr53c9x.c xs->status = ecb->stat;
ecb 1115 dev/ic/ncr53c9x.c if ((ecb->flags & ECB_ABORT) != 0) {
ecb 1117 dev/ic/ncr53c9x.c } else if ((ecb->flags & ECB_SENSE) != 0) {
ecb 1119 dev/ic/ncr53c9x.c } else if ((ecb->stat & ST_MASK) == SCSI_CHECK) {
ecb 1121 dev/ic/ncr53c9x.c xs->resid = ecb->dleft;
ecb 1122 dev/ic/ncr53c9x.c ncr53c9x_sense(sc, ecb);
ecb 1125 dev/ic/ncr53c9x.c xs->resid = ecb->dleft;
ecb 1145 dev/ic/ncr53c9x.c ncr53c9x_dequeue(sc, ecb);
ecb 1146 dev/ic/ncr53c9x.c if (ecb == sc->sc_nexus) {
ecb 1164 dev/ic/ncr53c9x.c ncr53c9x_free_ecb(sc, ecb, xs->flags);
ecb 1170 dev/ic/ncr53c9x.c ncr53c9x_dequeue(sc, ecb)
ecb 1172 dev/ic/ncr53c9x.c struct ncr53c9x_ecb *ecb;
ecb 1175 dev/ic/ncr53c9x.c &sc->sc_tinfo[ecb->xs->sc_link->target];
ecb 1177 dev/ic/ncr53c9x.c int64_t lun = ecb->xs->sc_link->lun;
ecb 1183 dev/ic/ncr53c9x.c (long long)lun, ecb);
ecb 1185 dev/ic/ncr53c9x.c if (li->untagged == ecb) {
ecb 1189 dev/ic/ncr53c9x.c if (ecb->tag[0] && li->queued[ecb->tag[1]]) {
ecb 1191 dev/ic/ncr53c9x.c if (li->queued[ecb->tag[1]] && (li->queued[ecb->tag[1]] != ecb))
ecb 1193 dev/ic/ncr53c9x.c "instead of ecb %p", ecb->tag[1],
ecb 1195 dev/ic/ncr53c9x.c li->queued[ecb->tag[1]], ecb);
ecb 1197 dev/ic/ncr53c9x.c li->queued[ecb->tag[1]] = NULL;
ecb 1201 dev/ic/ncr53c9x.c if (ecb->flags & ECB_READY) {
ecb 1202 dev/ic/ncr53c9x.c ecb->flags &= ~ECB_READY;
ecb 1203 dev/ic/ncr53c9x.c TAILQ_REMOVE(&sc->ready_list, ecb, chain);
ecb 1330 dev/ic/ncr53c9x.c struct ncr53c9x_ecb *ecb = NULL;
ecb 1370 dev/ic/ncr53c9x.c ecb = li->untagged;
ecb 1375 dev/ic/ncr53c9x.c } else if (tagtype) ecb = li->queued[tagid];
ecb 1377 dev/ic/ncr53c9x.c if (ecb == NULL) {
ecb 1385 dev/ic/ncr53c9x.c sc->sc_nexus = ecb;
ecb 1388 dev/ic/ncr53c9x.c if (ecb->flags & ECB_RESET)
ecb 1390 dev/ic/ncr53c9x.c else if (ecb->flags & ECB_ABORT)
ecb 1394 dev/ic/ncr53c9x.c sc->sc_dp = ecb->daddr;
ecb 1395 dev/ic/ncr53c9x.c sc->sc_dleft = ecb->dleft;
ecb 1513 dev/ic/ncr53c9x.c struct ncr53c9x_ecb *ecb;
ecb 1519 dev/ic/ncr53c9x.c ecb = sc->sc_nexus;
ecb 1520 dev/ic/ncr53c9x.c ti = &sc->sc_tinfo[ecb->xs->sc_link->target];
ecb 1526 dev/ic/ncr53c9x.c sc_print_addr(ecb->xs->sc_link);
ecb 1531 dev/ic/ncr53c9x.c ecb->dleft = (ecb->flags & ECB_TENTATIVE_DONE)
ecb 1534 dev/ic/ncr53c9x.c if ((ecb->flags & ECB_SENSE) == 0)
ecb 1535 dev/ic/ncr53c9x.c ecb->xs->resid = ecb->dleft;
ecb 1549 dev/ic/ncr53c9x.c sc->sc_dev.dv_xname, ecb->xs->sc_link->target);
ecb 1555 dev/ic/ncr53c9x.c lun = ecb->xs->sc_link->lun;
ecb 1557 dev/ic/ncr53c9x.c if (ecb->tag[0] &&
ecb 1558 dev/ic/ncr53c9x.c li->queued[ecb->tag[1]] != NULL) {
ecb 1559 dev/ic/ncr53c9x.c li->queued[ecb->tag[1]] = NULL;
ecb 1562 dev/ic/ncr53c9x.c ecb->tag[0] = ecb->tag[1] = 0;
ecb 1563 dev/ic/ncr53c9x.c li->untagged = ecb;
ecb 1569 dev/ic/ncr53c9x.c sc->sc_dev.dv_xname, ecb->xs->sc_link->target);
ecb 1577 dev/ic/ncr53c9x.c sc->sc_dev.dv_xname, ecb->xs->sc_link->target);
ecb 1609 dev/ic/ncr53c9x.c ecb->flags |= ECB_TENTATIVE_DONE;
ecb 1615 dev/ic/ncr53c9x.c ecb->daddr = sc->sc_dp;
ecb 1616 dev/ic/ncr53c9x.c ecb->dleft = sc->sc_dleft;
ecb 1621 dev/ic/ncr53c9x.c sc->sc_dp = ecb->daddr;
ecb 1622 dev/ic/ncr53c9x.c sc->sc_dleft = ecb->dleft;
ecb 1640 dev/ic/ncr53c9x.c sc_print_addr(ecb->xs->sc_link);
ecb 1665 dev/ic/ncr53c9x.c sc_print_addr(ecb->xs->sc_link);
ecb 1704 dev/ic/ncr53c9x.c sc_print_addr(ecb->xs->sc_link);
ecb 1713 dev/ic/ncr53c9x.c sc_print_addr(ecb->xs->sc_link);
ecb 1785 dev/ic/ncr53c9x.c struct ncr53c9x_ecb *ecb;
ecb 1824 dev/ic/ncr53c9x.c ecb = sc->sc_nexus;
ecb 1825 dev/ic/ncr53c9x.c ti = &sc->sc_tinfo[ecb->xs->sc_link->target];
ecb 1838 dev/ic/ncr53c9x.c ecb = sc->sc_nexus;
ecb 1839 dev/ic/ncr53c9x.c ti = &sc->sc_tinfo[ecb->xs->sc_link->target];
ecb 1851 dev/ic/ncr53c9x.c ecb = sc->sc_nexus;
ecb 1853 dev/ic/ncr53c9x.c MSG_IDENTIFY(ecb->xs->sc_link->lun, 0);
ecb 1860 dev/ic/ncr53c9x.c ecb = sc->sc_nexus;
ecb 1861 dev/ic/ncr53c9x.c sc->sc_omess[0] = ecb->tag[0];
ecb 1862 dev/ic/ncr53c9x.c sc->sc_omess[1] = ecb->tag[1];
ecb 1868 dev/ic/ncr53c9x.c ecb = sc->sc_nexus;
ecb 1869 dev/ic/ncr53c9x.c ti = &sc->sc_tinfo[ecb->xs->sc_link->target];
ecb 1953 dev/ic/ncr53c9x.c struct ncr53c9x_ecb *ecb;
ecb 2009 dev/ic/ncr53c9x.c ecb = sc->sc_nexus;
ecb 2023 dev/ic/ncr53c9x.c ecb->xs->error = XS_TIMEOUT;
ecb 2024 dev/ic/ncr53c9x.c ncr53c9x_done(sc, ecb);
ecb 2123 dev/ic/ncr53c9x.c ecb?ecb->dleft:-1);
ecb 2161 dev/ic/ncr53c9x.c ecb->xs->error = XS_SELTIMEOUT;
ecb 2164 dev/ic/ncr53c9x.c sc_link = ecb->xs->sc_link;
ecb 2184 dev/ic/ncr53c9x.c if (ecb)
ecb 2185 dev/ic/ncr53c9x.c sc_print_addr(ecb->xs->sc_link);
ecb 2188 dev/ic/ncr53c9x.c ti = &sc->sc_tinfo[ecb->xs->sc_link->target];
ecb 2206 dev/ic/ncr53c9x.c if (ecb->flags & ECB_SENSE) {
ecb 2211 dev/ic/ncr53c9x.c timeout_del(&ecb->to);
ecb 2212 dev/ic/ncr53c9x.c ncr53c9x_sense(sc, ecb);
ecb 2216 dev/ic/ncr53c9x.c ecb->xs->error = XS_TIMEOUT;
ecb 2259 dev/ic/ncr53c9x.c ecb = sc->sc_nexus;
ecb 2280 dev/ic/ncr53c9x.c ecb = sc->sc_nexus;
ecb 2291 dev/ic/ncr53c9x.c timeout_del(&ecb->to);
ecb 2292 dev/ic/ncr53c9x.c ncr53c9x_dequeue(sc, ecb);
ecb 2293 dev/ic/ncr53c9x.c TAILQ_INSERT_HEAD(&sc->ready_list, ecb, chain);
ecb 2294 dev/ic/ncr53c9x.c ecb->flags |= ECB_READY;
ecb 2295 dev/ic/ncr53c9x.c ecb = sc->sc_nexus = NULL;
ecb 2370 dev/ic/ncr53c9x.c ecb = sc->sc_nexus;
ecb 2371 dev/ic/ncr53c9x.c if (!ecb)
ecb 2374 dev/ic/ncr53c9x.c sc_link = ecb->xs->sc_link;
ecb 2392 dev/ic/ncr53c9x.c ecb->tag[0] == 0) {
ecb 2410 dev/ic/ncr53c9x.c if (ecb->tag[0])
ecb 2474 dev/ic/ncr53c9x.c sc->sc_dp = ecb->daddr;
ecb 2475 dev/ic/ncr53c9x.c sc->sc_dleft = ecb->dleft;
ecb 2515 dev/ic/ncr53c9x.c ecb->stat = sc->sc_imess[sc->sc_imlen - 2];
ecb 2517 dev/ic/ncr53c9x.c NCR_PHASE(("<stat:(%x,%x)>", ecb->stat, msg));
ecb 2519 dev/ic/ncr53c9x.c ecb->dleft = (ecb->flags & ECB_TENTATIVE_DONE)
ecb 2522 dev/ic/ncr53c9x.c if ((ecb->flags & ECB_SENSE) == 0)
ecb 2523 dev/ic/ncr53c9x.c ecb->xs->resid = ecb->dleft;
ecb 2547 dev/ic/ncr53c9x.c if (sc->sc_state != NCR_CONNECTED || ecb == NULL) {
ecb 2600 dev/ic/ncr53c9x.c ecb->cmd.cmd.opcode, ecb->clen));
ecb 2608 dev/ic/ncr53c9x.c size = ecb->clen;
ecb 2610 dev/ic/ncr53c9x.c sc->sc_cmdp = (caddr_t)&ecb->cmd.cmd;
ecb 2623 dev/ic/ncr53c9x.c ncr53c9x_wrfifo(sc, (u_char *)&ecb->cmd.cmd, ecb->clen);
ecb 2646 dev/ic/ncr53c9x.c ecb->flags &= ~ECB_TENTATIVE_DONE;
ecb 2688 dev/ic/ncr53c9x.c ncr53c9x_done(sc, ecb);
ecb 2725 dev/ic/ncr53c9x.c ncr53c9x_abort(sc, ecb)
ecb 2727 dev/ic/ncr53c9x.c struct ncr53c9x_ecb *ecb;
ecb 2731 dev/ic/ncr53c9x.c ecb->timeout = NCR_ABORT_TIMEOUT;
ecb 2732 dev/ic/ncr53c9x.c ecb->flags |= ECB_ABORT;
ecb 2734 dev/ic/ncr53c9x.c if (ecb == sc->sc_nexus) {
ecb 2735 dev/ic/ncr53c9x.c int timeout = ecb->timeout;
ecb 2751 dev/ic/ncr53c9x.c timeout_add(&ecb->to, timeout);
ecb 2767 dev/ic/ncr53c9x.c struct ncr53c9x_ecb *ecb = arg;
ecb 2768 dev/ic/ncr53c9x.c struct scsi_xfer *xs = ecb->xs;
ecb 2779 dev/ic/ncr53c9x.c ecb, ecb->flags, ecb->dleft, ecb->stat,
ecb 2786 dev/ic/ncr53c9x.c printf("TRACE: %s.", ecb->trace);
ecb 2791 dev/ic/ncr53c9x.c if (ecb->flags & ECB_ABORT) {
ecb 2800 dev/ic/ncr53c9x.c ncr53c9x_abort(sc, ecb);
ecb 2803 dev/ic/ncr53c9x.c if (ecb == sc->sc_nexus &&
ecb 134 dev/ic/ncr53c9xvar.h #define ECB_TRACE(ecb, msg, a, b) do { \
ecb 136 dev/ic/ncr53c9xvar.h int n = strlen((ecb)->trace); \
ecb 137 dev/ic/ncr53c9xvar.h if (n < (sizeof((ecb)->trace)-100)) \
ecb 138 dev/ic/ncr53c9xvar.h snprintf((ecb)->trace + n, sizeof((ecb)->trace) - n, f, a, b); \
ecb 141 dev/ic/ncr53c9xvar.h #define ECB_TRACE(ecb, msg, a, b)
ecb 693 dev/sbus/esp_sbus.c struct ncr53c9x_ecb *ecb;
ecb 710 dev/sbus/esp_sbus.c TAILQ_FOREACH(ecb, &sc->ready_list, chain) {
ecb 711 dev/sbus/esp_sbus.c db_printf("ecb %p ", ecb);
ecb 712 dev/sbus/esp_sbus.c if (ecb == TAILQ_NEXT(ecb, chain)) {
ecb 713 dev/sbus/esp_sbus.c db_printf("\nWARNING: tailq loop on ecb %p", ecb);
ecb 725 dev/sbus/esp_sbus.c if ((ecb = li->queued[i])) {
ecb 726 dev/sbus/esp_sbus.c db_printf("ecb %p tag %x\n", ecb, i);