taglinefilesource code
icb460drivers/scsi/wd7000.cIcbAny icb;                   /* generic format */
icb813drivers/scsi/wd7000.cregister IcbAny *icb;          /* for host commands */
icb883drivers/scsi/wd7000.cicb = (IcbAny *) scb;
icb884drivers/scsi/wd7000.cicb->status = icmb_status;
icb885drivers/scsi/wd7000.cicb->phase  = 0;
icb960drivers/scsi/wd7000.cstatic IcbDiag icb = {ICB_OP_DIAGNOSTICS};
icb964drivers/scsi/wd7000.cicb.type = code;
icb965drivers/scsi/wd7000.cany2scsi(icb.len, sizeof(buf));
icb966drivers/scsi/wd7000.cany2scsi(icb.ptr, (int) &buf);
icb967drivers/scsi/wd7000.cicb.phase = 1;
icb973drivers/scsi/wd7000.cmail_out(host, (struct scb *) &icb);
icb975drivers/scsi/wd7000.cwhile (icb.phase && jiffies < timeout) /* wait for completion */;
icb977drivers/scsi/wd7000.cif (icb.phase)  {
icb981drivers/scsi/wd7000.cif (make_code(icb.vue|(icb.status << 8),0))  {
icb983drivers/scsi/wd7000.cicb.vue, icb.status);
icb1076drivers/scsi/wd7000.cstatic IcbRevLvl icb = {ICB_OP_GET_REVISION};
icb1078drivers/scsi/wd7000.cicb.phase = 1;
icb1085drivers/scsi/wd7000.cmail_out(host, (struct scb *) &icb);
icb1086drivers/scsi/wd7000.cwhile (icb.phase) /* wait for completion */;
icb1087drivers/scsi/wd7000.chost->rev1 = icb.primary;
icb1088drivers/scsi/wd7000.chost->rev2 = icb.secondary;