NetBSD-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: kern/51300
The following reply was made to PR kern/51300; it has been noted by GNATS.
From: Onno van der Linden <o.vd.linden%quicknet.nl@localhost>
To: gnats-bugs%netbsd.org@localhost
Cc:
Subject: Re: kern/51300
Date: Fri, 1 Jul 2016 17:44:14 +0200
I've been using this diff for a couple of years.
Fixes some non-detection for me most of the times.
It seems to me it's a bug anyway: according to
the docs I've seen there should be a delay/wait
after setting the drive and that delay is missing
(it's used after all the other cases of "drive setting"
in the code).
--- /usr/src/sys/dev/ic/wdc.c.orig 2013-09-16 17:30:49.000000000 +0200
+++ /usr/src/sys/dev/ic/wdc.c 2014-01-25 20:33:19.000000000 +0100
@@ -1453,6 +1453,7 @@
wdc->select(chp,drive);
bus_space_write_1(wdr->cmd_iot, wdr->cmd_iohs[wd_sdh], 0,
WDSD_IBM | (drive << 4));
+ delay(10);
switch(wdcwait(chp, ata_c->r_st_bmask | WDCS_DRQ,
ata_c->r_st_bmask, ata_c->timeout, wait_flags)) {
case WDCWAIT_OK:
Home |
Main Index |
Thread Index |
Old Index