Subject: Re: kern/22869: Slave IDE drive not detected
To: Manuel Bouyer <bouyer@antioche.lip6.fr>
From: Charles M. Hannum <abuse@spamalicious.com>
List: tech-kern
Date: 10/07/2003 20:02:17
On Tuesday 23 September 2003 09:14 am, Manuel Bouyer wrote:
> On Tue, Sep 23, 2003 at 12:51:52AM +0000, Charles M. Hannum wrote:
> > > I added this to my tree (with my atabus changes), just after the return
> > > from __wdcprobe() (in the current tree, this would be in wdcattach()),
> > > which helps a lot. As with atabus kernel thread we do this in parallel
> > > for all busses, we're down to 3s to detect the ghosts, independant from
> > > the number of busses.
> >
> > But you can't do that.  You're assuming DRDY will be asserted within
> > 3s of BSY being deasserted, but that is NOT what the spec says.
>
> I didn't see any timings specified in the specs, maybe I missed something.
> 3s is what we do already, for ATA disks the IDENTIFY timeout is 3s (see
> ata.c:ata_get_params()), and we try it after a reset in wdcattach()

That's for the IDENTIFY, though.  For the reset, you may have to wait up to 
31s (the timeout for PDIAG, mainly).  This *is* in the spec.