taglinefilesource code
ecbno244kernel/blk_drv/scsi/aha1740.cint ecbno;
ecbno276kernel/blk_drv/scsi/aha1740.cecbno = aha1740_last_ecb_used + 1;    /* An optimization */
ecbno277kernel/blk_drv/scsi/aha1740.cif (ecbno >= AHA1740_ECBS) ecbno = 0;
ecbno280kernel/blk_drv/scsi/aha1740.cif( ! ecb[ecbno].cmdw )
ecbno282kernel/blk_drv/scsi/aha1740.cecbno++;
ecbno283kernel/blk_drv/scsi/aha1740.cif (ecbno >= AHA1740_ECBS ) ecbno = 0;
ecbno284kernel/blk_drv/scsi/aha1740.c} while (ecbno != aha1740_last_ecb_used);
ecbno286kernel/blk_drv/scsi/aha1740.cif( ecb[ecbno].cmdw )
ecbno289kernel/blk_drv/scsi/aha1740.cecb[ecbno].cmdw = AHA1740CMD_INIT;  /* SCSI Initiator Command doubles as reserved flag */
ecbno291kernel/blk_drv/scsi/aha1740.caha1740_last_ecb_used = ecbno;    
ecbno295kernel/blk_drv/scsi/aha1740.cprintk("Sending command (%d %x)...",ecbno, done);
ecbno298kernel/blk_drv/scsi/aha1740.cecb[ecbno].cdblen = COMMAND_SIZE(*cmd);  /* SCSI Command Descriptor Block Length */
ecbno306kernel/blk_drv/scsi/aha1740.cmemcpy(ecb[ecbno].cdb, cmd, ecb[ecbno].cdblen);
ecbno316kernel/blk_drv/scsi/aha1740.cecb[ecbno].sg = 1;    /* SCSI Initiator Command  w/scatter-gather*/
ecbno326kernel/blk_drv/scsi/aha1740.cecb[ecbno].datalen = SCpnt->use_sg * sizeof(struct aha1740_chain);
ecbno327kernel/blk_drv/scsi/aha1740.cecb[ecbno].dataptr = (long) cptr;
ecbno337kernel/blk_drv/scsi/aha1740.cecb[ecbno].datalen = bufflen;
ecbno338kernel/blk_drv/scsi/aha1740.cecb[ecbno].dataptr = (long) buff;
ecbno340kernel/blk_drv/scsi/aha1740.cecb[ecbno].lun = SCpnt->lun;
ecbno341kernel/blk_drv/scsi/aha1740.cecb[ecbno].ses = 1;  /* Suppress underrun errors */
ecbno342kernel/blk_drv/scsi/aha1740.cecb[ecbno].dir= direction;
ecbno343kernel/blk_drv/scsi/aha1740.cecb[ecbno].ars=1;  /* Yes, get the sense on an error */
ecbno344kernel/blk_drv/scsi/aha1740.cecb[ecbno].senselen = 12;
ecbno345kernel/blk_drv/scsi/aha1740.cecb[ecbno].senseptr = (long) ecb[ecbno].sense;
ecbno346kernel/blk_drv/scsi/aha1740.cecb[ecbno].statusptr = (long) ecb[ecbno].status;
ecbno347kernel/blk_drv/scsi/aha1740.cecb[ecbno].done = done;
ecbno348kernel/blk_drv/scsi/aha1740.cecb[ecbno].SCpnt = SCpnt;
ecbno353kernel/blk_drv/scsi/aha1740.cfor (i = 0; i < sizeof(ecb[ecbno])-10; i++)
ecbno354kernel/blk_drv/scsi/aha1740.cprintk("%02x ", ((unchar *)&ecb[ecbno])[i]);
ecbno370kernel/blk_drv/scsi/aha1740.cDEB(printk("aha1740[%d] critical section\n",ecbno));
ecbno374kernel/blk_drv/scsi/aha1740.cprintk("aha1740[%d]_mbxout wait!\n",ecbno);
ecbno378kernel/blk_drv/scsi/aha1740.cadrs = (ulong) &(ecb[ecbno]);      /* Spit the command */
ecbno385kernel/blk_drv/scsi/aha1740.cprintk("aha1740[%d]_attn wait!\n",ecbno);
ecbno391kernel/blk_drv/scsi/aha1740.cDEB(printk("aha1740[%d] request queued.\n",ecbno));