taglinefilesource code
scb136drivers/scsi/wd7000.cScb *scb;
scb147drivers/scsi/wd7000.cscb = scbfree;  scbfree = scb->next;
scb148drivers/scsi/wd7000.cmemset(scb, 0, sizeof(Scb));  scb->next = NULL;
scb152drivers/scsi/wd7000.creturn scb;
scb156drivers/scsi/wd7000.cstatic inline void free_scb( Scb *scb )
scb163drivers/scsi/wd7000.cmemset(scb, 0, sizeof(Scb));
scb164drivers/scsi/wd7000.cscb->next = scbfree;  scbfree = scb;
scb296drivers/scsi/wd7000.cScb *scb;             /* for SCSI commands */
scb318drivers/scsi/wd7000.cscb = (struct scb *) scsi2int(mb.icmb[icmb].scbptr);
scb324drivers/scsi/wd7000.cicmb, scb, icmb_status, scb->vue );
scb327drivers/scsi/wd7000.cif (!(scb->op & 0x80))  {   /* an SCB is done */
scb328drivers/scsi/wd7000.cSCpnt = scb->SCpnt;
scb330drivers/scsi/wd7000.chost_error = scb->vue | (icmb_status << 8);
scb331drivers/scsi/wd7000.cscsi_error = scb->status;
scb337drivers/scsi/wd7000.cfree_scb(scb);
scb342drivers/scsi/wd7000.cicb = (unchar *) scb;
scb355drivers/scsi/wd7000.cScb *scb;
scb366drivers/scsi/wd7000.cscb = alloc_scb();
scb367drivers/scsi/wd7000.cscb->idlun = idlun;
scb368drivers/scsi/wd7000.cmemcpy(scb->cdb, cdb, cdblen);
scb369drivers/scsi/wd7000.cscb->direc = 0x40;    /* Disable direction check */
scb370drivers/scsi/wd7000.cscb->SCpnt = SCpnt;         /* so we can find stuff later */
scb398drivers/scsi/wd7000.cscb->op = 1;
scb399drivers/scsi/wd7000.cany2scsi(scb->dataptr, sgb);
scb400drivers/scsi/wd7000.cany2scsi(scb->maxlen, SCpnt->use_sg * sizeof (Sgb) );
scb408drivers/scsi/wd7000.cscsi2int(scb->maxlen), SCpnt->use_sg);)
scb410drivers/scsi/wd7000.cscb->op = 0;
scb411drivers/scsi/wd7000.cany2scsi(scb->dataptr, SCpnt->request_buffer);
scb412drivers/scsi/wd7000.cany2scsi(scb->maxlen, SCpnt->request_bufflen);
scb415drivers/scsi/wd7000.creturn mail_out(scb);
scb499drivers/scsi/wd7000.cmail_out( (struct scb *) icb );
scb142drivers/scsi/wd7000.hstruct scb *next;             /* for lists of scbs */