version 1.8, 1993/05/25 07:27:35 |
version 1.9, 1993/05/27 10:14:02 |
Line 131 scsi_probe(int masunit, struct scsi_swit |
|
Line 131 scsi_probe(int masunit, struct scsi_swit |
|
|
|
if( scsi_ready(masunit, targ, lun, sw, |
if( scsi_ready(masunit, targ, lun, sw, |
SCSI_NOSLEEP | SCSI_NOMASK) != COMPLETE) |
SCSI_NOSLEEP | SCSI_NOMASK) != COMPLETE) |
return (struct scsidevs *)0; |
return (struct scsidevs *)-1; |
|
|
if( scsi_inquire(masunit, targ, lun, sw, (u_char *)&inqbuf, |
if( scsi_inquire(masunit, targ, lun, sw, (u_char *)&inqbuf, |
SCSI_NOSLEEP | SCSI_NOMASK) != COMPLETE) |
SCSI_NOSLEEP | SCSI_NOMASK) != COMPLETE) |
|
|
printf("%s%d targ %d lun %d: qualifier %d(%s)\n", |
printf("%s%d targ %d lun %d: qualifier %d(%s)\n", |
sw->name, masunit, targ, lun, |
sw->name, masunit, targ, lun, |
inqbuf.device_qualifier, qtype); |
inqbuf.device_qualifier, qtype); |
|
sw->printed[targ] |= (1<<lun); |
return ret; |
return ret; |
} |
} |
|
|
Line 310 scsi_attach(int masunit, int mytarg, str |
|
Line 311 scsi_attach(int masunit, int mytarg, str |
|
return 0; |
return 0; |
} |
} |
|
|
sw->printed[targ] |= (1<<lun); |
|
if(!match) |
if(!match) |
return 0; |
return 0; |
|
|
Line 335 scsi_attach(int masunit, int mytarg, str |
|
Line 335 scsi_attach(int masunit, int mytarg, str |
|
match = (struct scsidevs *)0; |
match = (struct scsidevs *)0; |
continue; |
continue; |
} |
} |
if(!match) { |
if(!match) |
sw->printed[targ] |= (1<<lun); |
|
break; |
break; |
} |
|
ret = (*(match->attach_rtn))(masunit, sw, *physid, unit); |
ret = (*(match->attach_rtn))(masunit, sw, *physid, unit); |
if(ret) |
if(ret) |
goto success; |
goto success; |
Line 351 scsi_attach(int masunit, int mytarg, str |
|
Line 349 scsi_attach(int masunit, int mytarg, str |
|
success: |
success: |
targ = *physid >> 3; |
targ = *physid >> 3; |
lun = *physid & 7; |
lun = *physid & 7; |
if(match->flags & SC_MORE_LUS) { |
if(match->flags & SC_MORE_LUS) |
sw->used[targ] |= (1<<lun); |
sw->used[targ] |= (1<<lun); |
sw->printed[targ] |= (1<<lun); |
else |
} else { |
|
sw->used[targ] = 0xff; |
sw->used[targ] = 0xff; |
sw->printed[targ] = 0xff; |
|
} |
|
return ret; |
return ret; |
} |
} |
|
|