tag | line | file | source code |
scb | 137 | kernel/blk_drv/scsi/wd7000.c | Scb *scb; |
scb | 148 | kernel/blk_drv/scsi/wd7000.c | scb = scbfree; scbfree = scb->next; |
scb | 149 | kernel/blk_drv/scsi/wd7000.c | memset(scb, 0, sizeof(Scb)); scb->next = NULL; |
scb | 153 | kernel/blk_drv/scsi/wd7000.c | return scb; |
scb | 157 | kernel/blk_drv/scsi/wd7000.c | static inline void free_scb( Scb *scb ) |
scb | 164 | kernel/blk_drv/scsi/wd7000.c | memset(scb, 0, sizeof(Scb)); |
scb | 165 | kernel/blk_drv/scsi/wd7000.c | scb->next = scbfree; scbfree = scb; |
scb | 296 | kernel/blk_drv/scsi/wd7000.c | Scb *scb, *scbn; /* for SCSI commands */ |
scb | 318 | kernel/blk_drv/scsi/wd7000.c | scb = (struct scb *) scsi2int(mb.icmb[icmb].scbptr); |
scb | 324 | kernel/blk_drv/scsi/wd7000.c | icmb, scb, icmb_status ); |
scb | 327 | kernel/blk_drv/scsi/wd7000.c | if (scb->op == 0) { /* an SCB is done */ |
scb | 328 | kernel/blk_drv/scsi/wd7000.c | SCpnt = scb->SCpnt; |
scb | 330 | kernel/blk_drv/scsi/wd7000.c | host_error = scb->vue | (icmb_status << 8); |
scb | 331 | kernel/blk_drv/scsi/wd7000.c | scsi_error = scb->status; |
scb | 335 | kernel/blk_drv/scsi/wd7000.c | scb = (Scb *) SCpnt->host_scribble; scbn = scb; |
scb | 336 | kernel/blk_drv/scsi/wd7000.c | while (scb != NULL) { |
scb | 337 | kernel/blk_drv/scsi/wd7000.c | scbn = scb->next; |
scb | 338 | kernel/blk_drv/scsi/wd7000.c | free_scb(scb); |
scb | 339 | kernel/blk_drv/scsi/wd7000.c | scb = scbn; |
scb | 345 | kernel/blk_drv/scsi/wd7000.c | icb = (unchar *) scb; |
scb | 358 | kernel/blk_drv/scsi/wd7000.c | Scb *scb; |
scb | 381 | kernel/blk_drv/scsi/wd7000.c | scb = alloc_scb(); scb->next = scbn; scbn = scb; |
scb | 383 | kernel/blk_drv/scsi/wd7000.c | SCpnt->host_scribble = (unchar *) scb; |
scb | 396 | kernel/blk_drv/scsi/wd7000.c | scb->op = 0; |
scb | 397 | kernel/blk_drv/scsi/wd7000.c | scb->idlun = idlun; |
scb | 398 | kernel/blk_drv/scsi/wd7000.c | memcpy(scb->cdb, cdb, cdblen); |
scb | 408 | kernel/blk_drv/scsi/wd7000.c | any2scsi(scb->dataptr, sg[i].address); |
scb | 409 | kernel/blk_drv/scsi/wd7000.c | any2scsi(scb->maxlen, sg[i].length); |
scb | 411 | kernel/blk_drv/scsi/wd7000.c | any2scsi(scb->linkptr, scb->next); /* set link */ |
scb | 412 | kernel/blk_drv/scsi/wd7000.c | scb->cdb[cdblen-1] |= 0x01; /* set link bit */ |
scb | 414 | kernel/blk_drv/scsi/wd7000.c | scb->direc = 0x40; /* Disable direction check */ |
scb | 415 | kernel/blk_drv/scsi/wd7000.c | scb->SCpnt = SCpnt; /* so we can find stuff later */ |
scb | 422 | kernel/blk_drv/scsi/wd7000.c | scb = alloc_scb(); |
scb | 423 | kernel/blk_drv/scsi/wd7000.c | SCpnt->host_scribble = (unchar *) scb; |
scb | 424 | kernel/blk_drv/scsi/wd7000.c | scb->op = 0; |
scb | 425 | kernel/blk_drv/scsi/wd7000.c | scb->idlun = idlun; |
scb | 426 | kernel/blk_drv/scsi/wd7000.c | memcpy(scb->cdb, cdb, cdblen); |
scb | 427 | kernel/blk_drv/scsi/wd7000.c | any2scsi(scb->dataptr, SCpnt->request_buffer); |
scb | 428 | kernel/blk_drv/scsi/wd7000.c | any2scsi(scb->maxlen, SCpnt->request_bufflen); |
scb | 429 | kernel/blk_drv/scsi/wd7000.c | scb->direc = 0x40; /* Disable direction check */ |
scb | 430 | kernel/blk_drv/scsi/wd7000.c | scb->SCpnt = SCpnt; /* so we can find stuff later */ |
scb | 433 | kernel/blk_drv/scsi/wd7000.c | return mail_out(scb); |
scb | 574 | kernel/blk_drv/scsi/wd7000.c | mail_out( (struct scb *) icb ); |
scb | 142 | kernel/blk_drv/scsi/wd7000.h | struct scb *next; /* for lists of scbs */ |