Use tsleep instead od DELAY in probe when not in boot.
This fixes the uptil 30s hangs on PCCARD ata device probes.
This commit is contained in:
parent
d65b25bf44
commit
25ff832d72
@ -1244,7 +1244,10 @@ ata_reset(struct ata_softc *scp, int32_t *mask)
|
||||
if (*mask == 0x03) /* wait for both master & slave */
|
||||
if (!(status0 & ATA_S_BUSY) && !(status1 & ATA_S_BUSY))
|
||||
break;
|
||||
DELAY(100);
|
||||
if (ata_delayed_attach)
|
||||
DELAY(100);
|
||||
else
|
||||
tsleep(ata_delayed_attach, PRIBIO, "atarst", 1);
|
||||
}
|
||||
DELAY(1);
|
||||
outb(scp->altioaddr, ATA_A_4BIT);
|
||||
|
Loading…
x
Reference in New Issue
Block a user