You (Andrew Valencia) wrote:
> >From my reading of your diffs, it looks like your controller won't
> automatically advance to the next head.
Yes.
> I'm guessing that this is
> because you have to use a pseudo-geometry (did the readp or the cmos
> command work for you in boot/boot.lst?)
No. I didn't expect cmos to work (The cmos entries are for type 1 (10MB
disk), ands are obviously ignored by the BIOS), but readp didn't either.
The Minix driver takes info from the BIOS parameter tables (int 41 and
45, I think). Could wd do the same? We just needed to map the first 1MB
physical memory into the wd's memory somewhere. I don't think I have a
pseudo-geometry. 26 sectors, 8 heads sounds reasonable for an RLL drive.
> I'm puzzled by why your drive needed a recalibrate. Since we boot
> from DOS, it should've been recalibrated already? It's good to add
> such initialization, but I'd like to understand how the drive got into
> an uncalibrated state in the first place.
It isn't really uncalibrated. Just the step-rate is off (seeking from
the first to the last cylinder takes several seconds). I have no idea
why DOS (MS-DOS 6.0) or the BIOS (AMI BIOS, 4 years old) changes the
step rate, but it obviously does. There are two possibilities to set
the step rate, and I chose the more radical.
> Is it necessary that the drive be calibrated twice? I see a recal once
> during the scan for disks, and again on the first I/O setup.
No, calibrated [unit] is set in wd_calibrate, if calibrate succeeded,
so the firstI/O will normally not recalibrate the drive again.
> There's no place which clears the calibrated[] entry, so why
> does this flag (calibrated[unit]) need to be kept?
I reset the flag after a hard error to force recalibration before the
next I/O. It seems I deleted this together with a bunch of debugging
printfs :-(
I also noticed that I hadn't deleted the status variable (in line 164)
when I moved the check whether calibrate had succeeded into
wd_calibrate, and that the wd_specify function still exists, but isn't
called anymore.
hp
-- | _ | Peter J. Holzer | Think of it | | |_|_) | Technical University Vienna | as evolution | | | | | Computer Science/Real-Time Systems | in action! | | __/ | hp@vmars.tuwien.ac.at | Tony Rand |Received on Thu Sep 9 09:34:04 1993
This archive was generated by hypermail 2.1.8 : Wed Sep 21 2005 - 19:37:12 PDT