taglinefilesource code
scb137kernel/blk_drv/scsi/wd7000.cScb *scb;
scb148kernel/blk_drv/scsi/wd7000.cscb = scbfree;  scbfree = scb->next;
scb149kernel/blk_drv/scsi/wd7000.cmemset(scb, 0, sizeof(Scb));  scb->next = NULL;
scb153kernel/blk_drv/scsi/wd7000.creturn scb;
scb157kernel/blk_drv/scsi/wd7000.cstatic inline void free_scb( Scb *scb )
scb164kernel/blk_drv/scsi/wd7000.cmemset(scb, 0, sizeof(Scb));
scb165kernel/blk_drv/scsi/wd7000.cscb->next = scbfree;  scbfree = scb;
scb296kernel/blk_drv/scsi/wd7000.cScb *scb, *scbn;      /* for SCSI commands */
scb318kernel/blk_drv/scsi/wd7000.cscb = (struct scb *) scsi2int(mb.icmb[icmb].scbptr);
scb324kernel/blk_drv/scsi/wd7000.cicmb, scb, icmb_status );
scb327kernel/blk_drv/scsi/wd7000.cif (scb->op == 0)  {   /* an SCB is done */
scb328kernel/blk_drv/scsi/wd7000.cSCpnt = scb->SCpnt;
scb330kernel/blk_drv/scsi/wd7000.chost_error = scb->vue | (icmb_status << 8);
scb331kernel/blk_drv/scsi/wd7000.cscsi_error = scb->status;
scb335kernel/blk_drv/scsi/wd7000.cscb = (Scb *) SCpnt->host_scribble;  scbn = scb;
scb336kernel/blk_drv/scsi/wd7000.cwhile (scb != NULL)  {
scb337kernel/blk_drv/scsi/wd7000.cscbn = scb->next;
scb338kernel/blk_drv/scsi/wd7000.cfree_scb(scb);
scb339kernel/blk_drv/scsi/wd7000.cscb = scbn;
scb345kernel/blk_drv/scsi/wd7000.cicb = (unchar *) scb;
scb358kernel/blk_drv/scsi/wd7000.cScb *scb;
scb381kernel/blk_drv/scsi/wd7000.cscb = alloc_scb();  scb->next = scbn;  scbn = scb;
scb383kernel/blk_drv/scsi/wd7000.cSCpnt->host_scribble = (unchar *) scb;
scb396kernel/blk_drv/scsi/wd7000.cscb->op = 0;
scb397kernel/blk_drv/scsi/wd7000.cscb->idlun = idlun;
scb398kernel/blk_drv/scsi/wd7000.cmemcpy(scb->cdb, cdb, cdblen);
scb408kernel/blk_drv/scsi/wd7000.cany2scsi(scb->dataptr, sg[i].address);
scb409kernel/blk_drv/scsi/wd7000.cany2scsi(scb->maxlen, sg[i].length);
scb411kernel/blk_drv/scsi/wd7000.cany2scsi(scb->linkptr, scb->next);        /* set link */
scb412kernel/blk_drv/scsi/wd7000.cscb->cdb[cdblen-1] |= 0x01;               /* set link bit */
scb414kernel/blk_drv/scsi/wd7000.cscb->direc = 0x40;        /* Disable direction check */
scb415kernel/blk_drv/scsi/wd7000.cscb->SCpnt = SCpnt;       /* so we can find stuff later */
scb422kernel/blk_drv/scsi/wd7000.cscb = alloc_scb();
scb423kernel/blk_drv/scsi/wd7000.cSCpnt->host_scribble = (unchar *) scb;
scb424kernel/blk_drv/scsi/wd7000.cscb->op = 0;
scb425kernel/blk_drv/scsi/wd7000.cscb->idlun = idlun;
scb426kernel/blk_drv/scsi/wd7000.cmemcpy(scb->cdb, cdb, cdblen);
scb427kernel/blk_drv/scsi/wd7000.cany2scsi(scb->dataptr, SCpnt->request_buffer);
scb428kernel/blk_drv/scsi/wd7000.cany2scsi(scb->maxlen, SCpnt->request_bufflen);
scb429kernel/blk_drv/scsi/wd7000.cscb->direc = 0x40;    /* Disable direction check */
scb430kernel/blk_drv/scsi/wd7000.cscb->SCpnt = SCpnt;             /* so we can find stuff later */
scb433kernel/blk_drv/scsi/wd7000.creturn mail_out(scb);
scb574kernel/blk_drv/scsi/wd7000.cmail_out( (struct scb *) icb );
scb142kernel/blk_drv/scsi/wd7000.hstruct scb *next;             /* for lists of scbs */