taglinefilesource code
scsiq1926drivers/scsi/advansys.cASC_SCSI_Q dosfar * scsiq,
scsiq3651drivers/scsi/advansys.cASC_SCSI_Q    scsiq;
scsiq3674drivers/scsi/advansys.cmemset(&scsiq, 0, sizeof(ASC_SCSI_Q));
scsiq3679drivers/scsi/advansys.cscsiq.q2.srb_ptr = (ulong) scp;
scsiq3684drivers/scsi/advansys.cscsiq.cdbptr = &scp->cmnd[0];
scsiq3685drivers/scsi/advansys.cscsiq.q2.cdb_len = scp->cmd_len;
scsiq3686drivers/scsi/advansys.cscsiq.q1.target_id = ASC_TID_TO_TARGET_ID(scp->target);
scsiq3687drivers/scsi/advansys.cscsiq.q1.target_lun = scp->lun;
scsiq3688drivers/scsi/advansys.cscsiq.q2.target_ix = ASC_TIDLUN_TO_IX(scp->target, scp->lun);
scsiq3689drivers/scsi/advansys.cscsiq.q1.sense_addr = (ulong) &scp->sense_buffer[0];
scsiq3690drivers/scsi/advansys.cscsiq.q1.sense_len = sizeof(scp->sense_buffer);
scsiq3691drivers/scsi/advansys.cscsiq.q2.tag_code = M2_QTAG_MSG_SIMPLE;
scsiq3703drivers/scsi/advansys.cscsiq.q1.data_addr = (ulong) scp->request_buffer;
scsiq3704drivers/scsi/advansys.cscsiq.q1.data_cnt = scp->request_bufflen;
scsiq3706drivers/scsi/advansys.cscsiq.q1.sg_queue_cnt = 0;
scsiq3707drivers/scsi/advansys.cscsiq.sg_head = NULL;
scsiq3731drivers/scsi/advansys.cscsiq.q1.cntl |= QC_SG_HEAD;
scsiq3732drivers/scsi/advansys.cscsiq.sg_head = &sghead;
scsiq3733drivers/scsi/advansys.cscsiq.q1.data_cnt = 0;
scsiq3734drivers/scsi/advansys.cscsiq.q1.data_addr = 0;
scsiq3735drivers/scsi/advansys.csghead.entry_cnt = scsiq.q1.sg_queue_cnt = scp->use_sg;
scsiq3749drivers/scsi/advansys.cASC_DBG_PRT_SCSI_Q(2, &scsiq);
scsiq3752drivers/scsi/advansys.cswitch (ret = AscExeScsiQueue(boardp, &scsiq)) {
scsiq5518drivers/scsi/advansys.cASC_QDONE_INFO dosfar * scsiq,
scsiq5527drivers/scsi/advansys.c(ushort dosfar *) scsiq,
scsiq5531drivers/scsi/advansys.cAscAdjEndianQDoneInfo(scsiq);
scsiq5536drivers/scsi/advansys.cscsiq->q_status = (uchar) _val;
scsiq5537drivers/scsi/advansys.cscsiq->q_no = (uchar) (_val >> 8);
scsiq5541drivers/scsi/advansys.cscsiq->cntl = (uchar) _val;
scsiq5546drivers/scsi/advansys.cscsiq->sense_len = (uchar) _val;
scsiq5547drivers/scsi/advansys.cscsiq->user_def = (uchar) (_val >> 8);
scsiq5549drivers/scsi/advansys.cscsiq->remain_bytes = AscReadLramDWord(iop_base,
scsiq5551drivers/scsi/advansys.cscsiq->remain_bytes &= max_dma_count;
scsiq5576drivers/scsi/advansys.cASC_QDONE_INFO dosfar *scsiq;
scsiq5591drivers/scsi/advansys.cscsiq = (ASC_QDONE_INFO dosfar *) & scsiq_buf;
scsiq5601drivers/scsi/advansys.csg_queue_cnt = _AscCopyLramScsiDoneQ(iop_base, q_addr, scsiq, asc_dvc->max_dma_count);
scsiq5605drivers/scsi/advansys.c(uchar) (scsiq->q_status & (uchar) ~ (QS_READY | QS_ABORTED)));
scsiq5606drivers/scsi/advansys.ctid_no = ASC_TIX_TO_TID(scsiq->d2.target_ix);
scsiq5607drivers/scsi/advansys.ctarget_id = ASC_TIX_TO_TARGET_ID(scsiq->d2.target_ix);
scsiq5608drivers/scsi/advansys.cif ((scsiq->cntl & QC_SG_HEAD) != 0) {
scsiq5617drivers/scsi/advansys.cscsiq->d3.done_stat = QD_WITH_ERROR;
scsiq5618drivers/scsi/advansys.cscsiq->d3.host_stat = QHSTA_D_QDONE_SG_LIST_CORRUPTED;
scsiq5632drivers/scsi/advansys.c(ushort) ((ushort) ASC_QADR_BEG + (ushort) scsiq->d2.target_ix));
scsiq5649drivers/scsi/advansys.cscsiq->d3.done_stat = QD_WITH_ERROR;
scsiq5653drivers/scsi/advansys.cif ((scsiq->d2.srb_ptr == 0UL) ||
scsiq5654drivers/scsi/advansys.c((scsiq->q_status & QS_ABORTED) != 0)) {
scsiq5657drivers/scsi/advansys.c} else if (scsiq->q_status == QS_DONE) {
scsiq5666drivers/scsi/advansys.cif (scsiq->remain_bytes != 0UL) {
scsiq5667drivers/scsi/advansys.cscsiq->remain_bytes--;
scsiq5668drivers/scsi/advansys.cif (scsiq->remain_bytes == 0UL) {
scsiq5675drivers/scsi/advansys.cif ((scsiq->d3.done_stat == QD_WITH_ERROR) &&
scsiq5676drivers/scsi/advansys.c(scsiq->d3.host_stat == QHSTA_M_DATA_OVER_RUN)) {
scsiq5677drivers/scsi/advansys.cif ((scsiq->cntl & (QC_DATA_IN | QC_DATA_OUT)) == 0) {
scsiq5678drivers/scsi/advansys.cscsiq->d3.done_stat = QD_NO_ERROR;
scsiq5679drivers/scsi/advansys.cscsiq->d3.host_stat = QHSTA_NO_ERROR;
scsiq5681drivers/scsi/advansys.cscsiq->d3.done_stat = QD_NO_ERROR;
scsiq5682drivers/scsi/advansys.cscsiq->d3.host_stat = QHSTA_NO_ERROR;
scsiq5691drivers/scsi/advansys.cif ((scsiq->cntl & QC_NO_CALLBACK) == 0) {
scsiq5692drivers/scsi/advansys.c(*asc_isr_callback) (asc_dvc, scsiq);
scsiq5699drivers/scsi/advansys.cif (scsiq->d3.done_stat != QD_NO_ERROR) {
scsiq5731drivers/scsi/advansys.cif ((scsiq->cntl & QC_NO_CALLBACK) == 0) {
scsiq5732drivers/scsi/advansys.c(*asc_isr_callback) (asc_dvc, scsiq);
scsiq5827drivers/scsi/advansys.cASC_SCSI_REQ_Q dosfar * scsiq,
scsiq5834drivers/scsi/advansys.cscsiq->r1.cntl = 0;
scsiq5835drivers/scsi/advansys.cscsiq->r1.sg_queue_cnt = 0;
scsiq5836drivers/scsi/advansys.cscsiq->r1.q_no = 0;
scsiq5837drivers/scsi/advansys.cscsiq->r1.user_def = 0;
scsiq5838drivers/scsi/advansys.cscsiq->cdbptr = (uchar dosfar *) scsiq->cdb;
scsiq5839drivers/scsi/advansys.cscsiq->r3.scsi_stat = 0;
scsiq5840drivers/scsi/advansys.cscsiq->r3.scsi_msg = 0;
scsiq5841drivers/scsi/advansys.cscsiq->r3.host_stat = 0;
scsiq5842drivers/scsi/advansys.cscsiq->r3.done_stat = 0;
scsiq5843drivers/scsi/advansys.cscsiq->r2.vm_id = 0;
scsiq5844drivers/scsi/advansys.cscsiq->r1.data_cnt = buf_len;
scsiq5846drivers/scsi/advansys.cscsiq->r2.tag_code = (uchar) M2_QTAG_MSG_SIMPLE;
scsiq5847drivers/scsi/advansys.cscsiq->r2.flag = (uchar) ASC_FLAG_SCSIQ_REQ;
scsiq5848drivers/scsi/advansys.cscsiq->r2.srb_ptr = (ulong) scsiq;
scsiq5849drivers/scsi/advansys.cscsiq->r1.status = (uchar) QS_READY;
scsiq5850drivers/scsi/advansys.cscsiq->r1.data_addr = 0L;
scsiq5854drivers/scsi/advansys.c(uchar dosfar *) buf_addr, scsiq->r1.data_cnt)) == 0L) {
scsiq5857drivers/scsi/advansys.cscsiq->r1.data_addr = phy_addr;
scsiq6015drivers/scsi/advansys.cASC_SCSI_Q dosfar * scsiq
scsiq6045drivers/scsi/advansys.cif (scsiq == (ASC_SCSI_Q dosfar *) 0L) {
scsiq6049drivers/scsi/advansys.cscsiq->q1.q_no = 0;
scsiq6051drivers/scsi/advansys.ctarget_ix = scsiq->q2.target_ix;
scsiq6056drivers/scsi/advansys.cif (scsiq->cdbptr[0] == SCSICMD_RequestSense) {
scsiq6058drivers/scsi/advansys.cif (((asc_dvc->init_sdtr & scsiq->q1.target_id) != 0) &&
scsiq6059drivers/scsi/advansys.c((asc_dvc->sdtr_done & scsiq->q1.target_id) != 0)) {
scsiq6065drivers/scsi/advansys.cscsiq->q1.cntl |= (QC_MSG_OUT | QC_URGENT);
scsiq6076drivers/scsi/advansys.cif ((scsiq->q1.cntl & QC_SG_HEAD) != 0) {
scsiq6078drivers/scsi/advansys.cif ((sg_entry_cnt = scsiq->sg_head->entry_cnt) == 0) {
scsiq6084drivers/scsi/advansys.cscsiq->q1.data_addr = scsiq->sg_head->sg_list[0].addr;
scsiq6085drivers/scsi/advansys.cscsiq->q1.data_cnt = scsiq->sg_head->sg_list[0].bytes;
scsiq6086drivers/scsi/advansys.cscsiq->q1.cntl &= ~(QC_SG_HEAD | QC_SG_SWAP_QUEUE);
scsiq6099drivers/scsi/advansys.caddr = scsiq->sg_head->sg_list[i].addr +
scsiq6100drivers/scsi/advansys.cscsiq->sg_head->sg_list[i].bytes;
scsiq6115drivers/scsi/advansys.caddr = scsiq->sg_head->sg_list[sg_entry_cnt_minus_one].addr +
scsiq6116drivers/scsi/advansys.cscsiq->sg_head->sg_list[sg_entry_cnt_minus_one].bytes;
scsiq6118drivers/scsi/advansys.cif ((scsiq->cdbptr[0] == SCSICMD_Read6) ||
scsiq6119drivers/scsi/advansys.c(scsiq->cdbptr[0] == SCSICMD_Read10)) {
scsiq6120drivers/scsi/advansys.cif ((scsiq->q2.tag_code & ASC_TAG_FLAG_ADD_ONE_BYTE) == 0) {
scsiq6122drivers/scsi/advansys.cscsiq->sg_head->sg_list[sg_entry_cnt_minus_one].bytes++;
scsiq6123drivers/scsi/advansys.cscsiq->q2.tag_code |= ASC_TAG_FLAG_ADD_ONE_BYTE;
scsiq6129drivers/scsi/advansys.cscsiq->sg_head->entry_to_copy = scsiq->sg_head->entry_cnt;
scsiq6141drivers/scsi/advansys.c((scsiq->q1.cntl & QC_URGENT) != 0)) {
scsiq6142drivers/scsi/advansys.cif ((sta = AscSendScsiQueue(asc_dvc, scsiq,
scsiq6147drivers/scsi/advansys.c(*asc_exe_callback) (asc_dvc, scsiq);
scsiq6160drivers/scsi/advansys.caddr = scsiq->q1.data_addr + scsiq->q1.data_cnt;
scsiq6161drivers/scsi/advansys.cif ((scsiq->cdbptr[0] == SCSICMD_Read6) ||
scsiq6162drivers/scsi/advansys.c(scsiq->cdbptr[0] == SCSICMD_Read10)) {
scsiq6164drivers/scsi/advansys.cif (((ushort) scsiq->q1.data_cnt & 0x01FF) == 0) {
scsiq6166drivers/scsi/advansys.cif ((scsiq->q2.tag_code & ASC_TAG_FLAG_ADD_ONE_BYTE) == 0) {
scsiq6168drivers/scsi/advansys.cscsiq->q2.tag_code |= ASC_TAG_FLAG_ADD_ONE_BYTE;
scsiq6169drivers/scsi/advansys.cscsiq->q1.data_cnt++;
scsiq6185drivers/scsi/advansys.c((scsiq->q1.cntl & QC_URGENT) != 0)) {
scsiq6186drivers/scsi/advansys.cif ((sta = AscSendScsiQueue(asc_dvc, scsiq,
scsiq6191drivers/scsi/advansys.c(*asc_exe_callback) (asc_dvc, scsiq);
scsiq6203drivers/scsi/advansys.cscsiq->ext.q_required = n_q_required;
scsiq6205drivers/scsi/advansys.casc_dvc->scsiq_busy_head[tid_no] = (ASC_SCSI_Q dosfar *) scsiq;
scsiq6206drivers/scsi/advansys.casc_dvc->scsiq_busy_tail[tid_no] = (ASC_SCSI_Q dosfar *) scsiq;
scsiq6207drivers/scsi/advansys.cscsiq->ext.next = (ASC_SCSI_Q dosfar *) 0L;
scsiq6208drivers/scsi/advansys.cscsiq->ext.join = (ASC_SCSI_Q dosfar *) 0L;
scsiq6209drivers/scsi/advansys.cscsiq->q1.status = QS_BUSY;
scsiq6214drivers/scsi/advansys.cif ((scsiq->q1.cntl & QC_URGENT) != 0) {
scsiq6216drivers/scsi/advansys.casc_dvc->scsiq_busy_head[tid_no] = (ASC_SCSI_Q dosfar *) scsiq;
scsiq6217drivers/scsi/advansys.cscsiq->ext.next = scsiq_next;
scsiq6218drivers/scsi/advansys.cscsiq->ext.join = (ASC_SCSI_Q dosfar *) 0L;
scsiq6220drivers/scsi/advansys.cif (scsiq->ext.cntl & QCX_SORT) {
scsiq6224drivers/scsi/advansys.cif (scsiq->ext.lba < scsiq_prev->ext.lba)
scsiq6228drivers/scsi/advansys.cscsiq_prev->ext.next = scsiq;
scsiq6229drivers/scsi/advansys.cscsiq->ext.next = scsiq_next;
scsiq6231drivers/scsi/advansys.casc_dvc->scsiq_busy_tail[tid_no] = (ASC_SCSI_Q dosfar *) scsiq;
scsiq6233drivers/scsi/advansys.cscsiq->ext.join = (ASC_SCSI_Q dosfar *) 0L;
scsiq6236drivers/scsi/advansys.cscsiq_tail->ext.next = (ASC_SCSI_Q dosfar *) scsiq;
scsiq6237drivers/scsi/advansys.casc_dvc->scsiq_busy_tail[tid_no] = (ASC_SCSI_Q dosfar *) scsiq;
scsiq6238drivers/scsi/advansys.cscsiq->ext.next = (ASC_SCSI_Q dosfar *) 0L;
scsiq6239drivers/scsi/advansys.cscsiq->ext.join = (ASC_SCSI_Q dosfar *) 0L;
scsiq6242drivers/scsi/advansys.cscsiq->q1.status = QS_BUSY;
scsiq6260drivers/scsi/advansys.cASC_SCSI_Q dosfar * scsiq,
scsiq6272drivers/scsi/advansys.ctarget_ix = scsiq->q2.target_ix;
scsiq6281drivers/scsi/advansys.cscsiq->sg_head->queue_cnt = n_q_required - 1;
scsiq6282drivers/scsi/advansys.cscsiq->q1.q_no = free_q_head;
scsiq6284drivers/scsi/advansys.cif ((sta = AscPutReadySgListQueue(asc_dvc, scsiq,
scsiq6302drivers/scsi/advansys.cscsiq->q1.q_no = free_q_head;
scsiq6303drivers/scsi/advansys.cif ((sta = AscPutReadyQueue(asc_dvc, scsiq,
scsiq6378drivers/scsi/advansys.cASC_SCSI_Q dosfar * scsiq,
scsiq6391drivers/scsi/advansys.cif (((asc_dvc->init_sdtr & scsiq->q1.target_id) != 0) &&
scsiq6392drivers/scsi/advansys.c((asc_dvc->sdtr_done & scsiq->q1.target_id) == 0)) {
scsiq6394drivers/scsi/advansys.ctid_no = ASC_TIX_TO_TID(scsiq->q2.target_ix);
scsiq6404drivers/scsi/advansys.cscsiq->q1.cntl |= QC_MSG_OUT;
scsiq6408drivers/scsi/advansys.cif ((scsiq->q1.target_id & asc_dvc->use_tagged_qng) == 0) {
scsiq6409drivers/scsi/advansys.cscsiq->q2.tag_code &= ~M2_QTAG_MSG_SIMPLE;
scsiq6411drivers/scsi/advansys.cscsiq->q1.status = QS_FREE;
scsiq6415drivers/scsi/advansys.c(ushort dosfar *) scsiq->cdbptr,
scsiq6416drivers/scsi/advansys.c(ushort) ((ushort) scsiq->q2.cdb_len >> 1));
scsiq6419drivers/scsi/advansys.cAscAdjEndianScsiQ(scsiq);
scsiq6424drivers/scsi/advansys.c(ushort dosfar *) & scsiq->q1.cntl,
scsiq6439drivers/scsi/advansys.c(ushort dosfar *) scsiq->cdbptr,
scsiq6440drivers/scsi/advansys.c(ushort) (scsiq->q2.cdb_len >> 1)) != 0) {
scsiq6446drivers/scsi/advansys.c(ushort dosfar *) & scsiq->q1.cntl,
scsiq6466drivers/scsi/advansys.c(ushort) (((ushort) scsiq->q1.q_no << 8) | (ushort) QS_READY));
scsiq6473drivers/scsi/advansys.cASC_SCSI_Q dosfar * scsiq,
scsiq6491drivers/scsi/advansys.csg_head = scsiq->sg_head;
scsiq6493drivers/scsi/advansys.csaved_data_addr = scsiq->q1.data_addr;
scsiq6494drivers/scsi/advansys.csaved_data_cnt = scsiq->q1.data_cnt;
scsiq6495drivers/scsi/advansys.cscsiq->q1.data_addr = sg_head->sg_list[0].addr;
scsiq6496drivers/scsi/advansys.cscsiq->q1.data_cnt = sg_head->sg_list[0].bytes;
scsiq6499drivers/scsi/advansys.cscsiq->q1.cntl |= QC_SG_HEAD;
scsiq6502drivers/scsi/advansys.cscsiq->q1.sg_queue_cnt = sg_head->queue_cnt;
scsiq6549drivers/scsi/advansys.cscsiq->q1.cntl &= ~QC_SG_HEAD;
scsiq6551drivers/scsi/advansys.csta = AscPutReadyQueue(asc_dvc, scsiq, q_no);
scsiq6553drivers/scsi/advansys.cscsiq->q1.data_addr = saved_data_addr;
scsiq6554drivers/scsi/advansys.cscsiq->q1.data_cnt = saved_data_cnt;
scsiq6600drivers/scsi/advansys.cASC_SCSI_REQ_Q dosfar *scsiq;
scsiq6620drivers/scsi/advansys.cscsiq = (ASC_SCSI_REQ_Q dosfar *) & scsiq_buf;
scsiq6626drivers/scsi/advansys.cscsiq->r1.status = (uchar) QS_READY;
scsiq6627drivers/scsi/advansys.cscsiq->r2.cdb_len = 6;
scsiq6628drivers/scsi/advansys.cscsiq->r2.tag_code = M2_QTAG_MSG_SIMPLE;
scsiq6629drivers/scsi/advansys.cscsiq->r1.target_id = target_id;
scsiq6631drivers/scsi/advansys.cscsiq->r2.target_ix = ASC_TIDLUN_TO_IX(tid_no, 0);
scsiq6632drivers/scsi/advansys.cscsiq->cdbptr = (uchar dosfar *) scsiq->cdb;
scsiq6634drivers/scsi/advansys.cscsiq->r1.cntl = QC_NO_CALLBACK | QC_MSG_OUT | QC_URGENT;
scsiq6642drivers/scsi/advansys.cif (AscExeScsiQueue(asc_dvc, (ASC_SCSI_Q dosfar *) scsiq)
scsiq6646drivers/scsi/advansys.c_AscWaitQDone(iop_base, (ASC_SCSI_Q dosfar *) scsiq);
scsiq6888drivers/scsi/advansys.cASC_SCSI_Q dosfar * scsiq
scsiq6895drivers/scsi/advansys.cwhile (scsiq->q1.q_no == 0) ;
scsiq6896drivers/scsi/advansys.cq_addr = ASC_QNO_TO_QADDR(scsiq->q1.q_no);
scsiq7069drivers/scsi/advansys.cASC_QDONE_INFO dosfar *scsiq;
scsiq7076drivers/scsi/advansys.cscsiq = (ASC_QDONE_INFO dosfar *) & scsiq_buf;
scsiq7079drivers/scsi/advansys.c_AscAbortSrbBusyQueue(asc_dvc, scsiq, srb_ptr);
scsiq7085drivers/scsi/advansys.cscsiq->d2.srb_ptr = AscReadLramDWord(iop_base,
scsiq7087drivers/scsi/advansys.cif (scsiq->d2.srb_ptr == srb_ptr) {
scsiq7088drivers/scsi/advansys.c_AscCopyLramScsiDoneQ(iop_base, q_addr, scsiq, asc_dvc->max_dma_count);
scsiq7089drivers/scsi/advansys.cif (((scsiq->q_status & QS_READY) != 0) &&
scsiq7090drivers/scsi/advansys.c((scsiq->q_status & QS_ABORTED) == 0) &&
scsiq7091drivers/scsi/advansys.c((scsiq->cntl & QCSG_SG_XFER_LIST) == 0)) {
scsiq7093drivers/scsi/advansys.cscsiq->q_status |= QS_ABORTED;
scsiq7094drivers/scsi/advansys.cscsiq->d3.done_stat = QD_ABORTED_BY_HOST;
scsiq7100drivers/scsi/advansys.cscsiq->q_status);
scsiq7101drivers/scsi/advansys.c(*asc_isr_callback) (asc_dvc, scsiq);
scsiq7120drivers/scsi/advansys.cASC_QDONE_INFO dosfar *scsiq;
scsiq7132drivers/scsi/advansys.cscsiq = (ASC_QDONE_INFO dosfar *) & scsiq_buf;
scsiq7137drivers/scsi/advansys.c_AscAbortTidBusyQueue(asc_dvc, scsiq, tid_no);
scsiq7144drivers/scsi/advansys.c_AscCopyLramScsiDoneQ(iop_base, q_addr, scsiq, asc_dvc->max_dma_count);
scsiq7145drivers/scsi/advansys.cif (((scsiq->q_status & QS_READY) != 0) &&
scsiq7146drivers/scsi/advansys.c((scsiq->q_status & QS_ABORTED) == 0) &&
scsiq7147drivers/scsi/advansys.c((scsiq->cntl & QCSG_SG_XFER_LIST) == 0)) {
scsiq7148drivers/scsi/advansys.cif (scsiq->d2.target_ix == target_ix) {
scsiq7149drivers/scsi/advansys.cscsiq->q_status |= QS_ABORTED;
scsiq7150drivers/scsi/advansys.cscsiq->d3.done_stat = QD_ABORTED_BY_HOST;
scsiq7158drivers/scsi/advansys.cscsiq->q_status);
scsiq7159drivers/scsi/advansys.c(*asc_isr_callback) (asc_dvc, scsiq);
scsiq8394drivers/scsi/advansys.cASC_SCSI_REQ_Q dosfar * scsiq,
scsiq8409drivers/scsi/advansys.ctid_bits = scsiq->r1.target_id;
scsiq8410drivers/scsi/advansys.clun = scsiq->r1.target_lun;
scsiq8411drivers/scsi/advansys.ctid_no = ASC_TIX_TO_TID(scsiq->r2.target_ix);
scsiq8413drivers/scsi/advansys.c(uchar dosfar *) scsiq->sense_ptr,
scsiq8414drivers/scsi/advansys.c(ulong) scsiq->r1.sense_len)) == 0L) {
scsiq8417drivers/scsi/advansys.cscsiq->r1.sense_addr = phy_addr;
scsiq8425drivers/scsi/advansys.cif (PollScsiInquiry(asc_dvc, scsiq, (uchar dosfar *) inq,
scsiq8486drivers/scsi/advansys.cif (InitTestUnitReady(asc_dvc, scsiq) != 1) {
scsiq8491drivers/scsi/advansys.cif (PollScsiReadCapacity(asc_dvc, scsiq,
scsiq8512drivers/scsi/advansys.cASC_SCSI_REQ_Q dosfar * scsiq,
scsiq8523drivers/scsi/advansys.c(ASC_SCSI_Q dosfar *) scsiq)) == 1) {
scsiq8525drivers/scsi/advansys.cif ((status = AscPollQDone(asc_dvc, scsiq,
scsiq8532drivers/scsi/advansys.cscsiq->r3.done_stat = 0;
scsiq8533drivers/scsi/advansys.cscsiq->r3.host_stat = 0;
scsiq8534drivers/scsi/advansys.cscsiq->r3.scsi_stat = 0;
scsiq8535drivers/scsi/advansys.cscsiq->r3.scsi_msg = 0;
scsiq8539drivers/scsi/advansys.cscsiq->r3.done_stat = 0;
scsiq8540drivers/scsi/advansys.cscsiq->r3.host_stat = 0;
scsiq8541drivers/scsi/advansys.cscsiq->r3.scsi_stat = 0;
scsiq8542drivers/scsi/advansys.cscsiq->r3.scsi_msg = 0;
scsiq8544drivers/scsi/advansys.c(unsigned) scsiq);
scsiq8546drivers/scsi/advansys.cAscAbortSRB(asc_dvc, (ulong) scsiq);
scsiq8548drivers/scsi/advansys.cASC_DBG1(3, "PollQueueDone: done_stat %x\n", scsiq->r3.done_stat);
scsiq8549drivers/scsi/advansys.creturn (scsiq->r3.done_stat);
scsiq8553drivers/scsi/advansys.creturn (scsiq->r3.done_stat = QD_WITH_ERROR);
scsiq8559drivers/scsi/advansys.cASC_SCSI_REQ_Q dosfar * scsiq,
scsiq8564drivers/scsi/advansys.cif (AscScsiInquiry(asc_dvc, scsiq, buf, buf_len) == ERR) {
scsiq8565drivers/scsi/advansys.creturn (scsiq->r3.done_stat = QD_WITH_ERROR);
scsiq8567drivers/scsi/advansys.creturn (PollQueueDone(asc_dvc, (ASC_SCSI_REQ_Q dosfar *) scsiq, 4));
scsiq8573drivers/scsi/advansys.cASC_SCSI_REQ_Q dosfar * scsiq,
scsiq8580drivers/scsi/advansys.cif (AscScsiReadCapacity(asc_dvc, scsiq,
scsiq8582drivers/scsi/advansys.creturn (scsiq->r3.done_stat = QD_WITH_ERROR);
scsiq8584drivers/scsi/advansys.cstatus = PollQueueDone(asc_dvc, (ASC_SCSI_REQ_Q dosfar *) scsiq, 8);
scsiq8593drivers/scsi/advansys.creturn (scsiq->r3.done_stat);
scsiq8595drivers/scsi/advansys.creturn (scsiq->r3.done_stat = QD_WITH_ERROR);
scsiq8619drivers/scsi/advansys.cASC_SCSI_REQ_Q dosfar * scsiq
scsiq8622drivers/scsi/advansys.cif (AscScsiTestUnitReady(asc_dvc, scsiq) == ERR) {
scsiq8623drivers/scsi/advansys.creturn (scsiq->r3.done_stat = QD_WITH_ERROR);
scsiq8625drivers/scsi/advansys.creturn (PollQueueDone(asc_dvc, (ASC_SCSI_REQ_Q dosfar *) scsiq, 12));
scsiq8631drivers/scsi/advansys.cASC_SCSI_REQ_Q dosfar * scsiq
scsiq8634drivers/scsi/advansys.cif (AscScsiStartStopUnit(asc_dvc, scsiq, 1) == ERR) {
scsiq8635drivers/scsi/advansys.creturn (scsiq->r3.done_stat = QD_WITH_ERROR);
scsiq8637drivers/scsi/advansys.creturn (PollQueueDone(asc_dvc, (ASC_SCSI_REQ_Q dosfar *) scsiq, 40));
scsiq8643drivers/scsi/advansys.cASC_SCSI_REQ_Q dosfar * scsiq
scsiq8651drivers/scsi/advansys.ctid_bits = scsiq->r1.target_id;
scsiq8654drivers/scsi/advansys.cPollScsiTestUnitReady(asc_dvc, scsiq);
scsiq8655drivers/scsi/advansys.cASC_DBG1(3, "InitTestUnitReady: done_stat %x\n", scsiq->r3.done_stat);
scsiq8656drivers/scsi/advansys.cif (scsiq->r3.done_stat == 0x01) {
scsiq8658drivers/scsi/advansys.c} else if (scsiq->r3.done_stat == QD_WITH_ERROR) {
scsiq8661drivers/scsi/advansys.csen = (ASC_REQ_SENSE dosfar *) scsiq->sense_ptr;
scsiq8663drivers/scsi/advansys.cif ((scsiq->r3.scsi_stat == SS_CHK_CONDITION) &&
scsiq8669drivers/scsi/advansys.cif (PollScsiStartUnit(asc_dvc, scsiq) == 1) {
scsiq8687drivers/scsi/advansys.c} else if (scsiq->r3.done_stat == QD_ABORTED_BY_HOST) {
scsiq8703drivers/scsi/advansys.cASC_SCSI_REQ_Q dosfar * scsiq,
scsiq8719drivers/scsi/advansys.cloop, asc_dvc->err_code, scsiq->r3.done_stat, scsiq->r3.scsi_stat);
scsiq8721drivers/scsi/advansys.cscsiq->r3.done_stat = QD_WITH_ERROR;
scsiq8725drivers/scsi/advansys.cif (scsiq->r3.done_stat != QD_IN_PROGRESS) {
scsiq8726drivers/scsi/advansys.cif ((scsiq->r3.done_stat == QD_WITH_ERROR) &&
scsiq8727drivers/scsi/advansys.c(scsiq->r3.scsi_stat == SS_TARGET_BUSY)) {
scsiq8978drivers/scsi/advansys.cASC_SCSI_REQ_Q dosfar * scsiq,
scsiq8982drivers/scsi/advansys.cif (AscScsiSetupCmdQ(asc_dvc, scsiq, buf,
scsiq8984drivers/scsi/advansys.creturn (scsiq->r3.done_stat = QD_WITH_ERROR);
scsiq8986drivers/scsi/advansys.cscsiq->cdb[0] = (uchar) SCSICMD_Inquiry;
scsiq8987drivers/scsi/advansys.cscsiq->cdb[1] = scsiq->r1.target_lun << 5;
scsiq8988drivers/scsi/advansys.cscsiq->cdb[2] = 0;
scsiq8989drivers/scsi/advansys.cscsiq->cdb[3] = 0;
scsiq8990drivers/scsi/advansys.cscsiq->cdb[4] = buf_len;
scsiq8991drivers/scsi/advansys.cscsiq->cdb[5] = 0;
scsiq8992drivers/scsi/advansys.cscsiq->r2.cdb_len = 6;
scsiq8999drivers/scsi/advansys.cASC_SCSI_REQ_Q dosfar * scsiq,
scsiq9003drivers/scsi/advansys.cif (AscScsiSetupCmdQ(asc_dvc, scsiq, info, 8L) == ERR) {
scsiq9004drivers/scsi/advansys.creturn (scsiq->r3.done_stat = QD_WITH_ERROR);
scsiq9006drivers/scsi/advansys.cscsiq->cdb[0] = (uchar) SCSICMD_ReadCapacity;
scsiq9007drivers/scsi/advansys.cscsiq->cdb[1] = scsiq->r1.target_lun << 5;
scsiq9008drivers/scsi/advansys.cscsiq->cdb[2] = 0;
scsiq9009drivers/scsi/advansys.cscsiq->cdb[3] = 0;
scsiq9010drivers/scsi/advansys.cscsiq->cdb[4] = 0;
scsiq9011drivers/scsi/advansys.cscsiq->cdb[5] = 0;
scsiq9012drivers/scsi/advansys.cscsiq->cdb[6] = 0;
scsiq9013drivers/scsi/advansys.cscsiq->cdb[7] = 0;
scsiq9014drivers/scsi/advansys.cscsiq->cdb[8] = 0;
scsiq9015drivers/scsi/advansys.cscsiq->cdb[9] = 0;
scsiq9016drivers/scsi/advansys.cscsiq->r2.cdb_len = 10;
scsiq9023drivers/scsi/advansys.cASC_SCSI_REQ_Q dosfar * scsiq
scsiq9026drivers/scsi/advansys.cif (AscScsiSetupCmdQ(asc_dvc, scsiq, FNULLPTR,
scsiq9028drivers/scsi/advansys.creturn (scsiq->r3.done_stat = QD_WITH_ERROR);
scsiq9030drivers/scsi/advansys.cscsiq->r1.cntl = (uchar) ASC_SCSIDIR_NODATA;
scsiq9031drivers/scsi/advansys.cscsiq->cdb[0] = (uchar) SCSICMD_TestUnitReady;
scsiq9032drivers/scsi/advansys.cscsiq->cdb[1] = scsiq->r1.target_lun << 5;
scsiq9033drivers/scsi/advansys.cscsiq->cdb[2] = 0;
scsiq9034drivers/scsi/advansys.cscsiq->cdb[3] = 0;
scsiq9035drivers/scsi/advansys.cscsiq->cdb[4] = 0;
scsiq9036drivers/scsi/advansys.cscsiq->cdb[5] = 0;
scsiq9037drivers/scsi/advansys.cscsiq->r2.cdb_len = 6;
scsiq9044drivers/scsi/advansys.cASC_SCSI_REQ_Q dosfar * scsiq,
scsiq9048drivers/scsi/advansys.cif (AscScsiSetupCmdQ(asc_dvc, scsiq, FNULLPTR, (ulong) 0L) == ERR) {
scsiq9049drivers/scsi/advansys.creturn (scsiq->r3.done_stat = QD_WITH_ERROR);
scsiq9051drivers/scsi/advansys.cscsiq->r1.cntl = (uchar) ASC_SCSIDIR_NODATA;
scsiq9052drivers/scsi/advansys.cscsiq->cdb[0] = (uchar) SCSICMD_StartStopUnit;
scsiq9053drivers/scsi/advansys.cscsiq->cdb[1] = scsiq->r1.target_lun << 5;
scsiq9054drivers/scsi/advansys.cscsiq->cdb[2] = 0;
scsiq9055drivers/scsi/advansys.cscsiq->cdb[3] = 0;
scsiq9056drivers/scsi/advansys.cscsiq->cdb[4] = op_mode;
scsiq9058drivers/scsi/advansys.cscsiq->cdb[5] = 0;
scsiq9059drivers/scsi/advansys.cscsiq->r2.cdb_len = 6;