[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Compaq hardware (was: i386 mbr problem)



I'm pretty sure this has nothing to do with UltraDMA. UltraDMA is more
reliable than PIO and
should give errors before it trashes anything.

What's probably happening here is that there is some weird sector
translation scheme in place that
works under MSDOS but that OpenBSD doesn't know about.

-Costa

----- Original Message -----
From: "William Allen Simpson" <wsimpson@greendragon.com>
To: <tech@openbsd.org>
Sent: Tuesday, May 15, 2001 5:23 PM
Subject: Re: Compaq hardware (was: i386 mbr problem)


> > > assuming this was an corrupt
> > > mbr issue, i tried booting various dos utils and
> > > disk/formatting from there, then tried again. same problem.
> > > then a different hard drive. same problem. this is a crappy
> > > old piece of compaq hardware, but i have two others booting
> > > happily into OBSD elsewhere.
> >
> I've recently had some experience with older Compaq Deskpro 4000 that
> puzzled me for many hours.  Installing OBSD destroyed the mbr and
> partition table.
>
> After much fun booting back and forth from Windows 98 (as installed
> on the original disk), the Compaq diagnostics (also installed on the
> original disk, which I fortuitously had backed up on floppies before
> installing), an old copy of M$DOS 6.2, and OBSD 2.9-beta, I discovered
> that the controllers are being setup as UltraDMA by OBSD, but W98
> sets up the primary controller as UltraDMA and the secondary controller
> as "EDMA", while the Compaq diagnostics run the primary as UltraDMA and
> the secondary as PIO 4 (and M$DOS only knows about PIO 4).
>
> The temporary solution is to 'config' both controllers as PIO 4 only.
>
> I haven't been able to figure out how to get OBSD to set only the
> secondary controller, leaving the primary as UltraDMA.
>
> The long term solution would be to figure out why OBSD incorrectly
> assumes that both controllers will do UltraDMA, but W98 knows better?
> (I hate it when Windows seems smarter....)
>
> ====
>
> pcib0 at pci0 dev 20 function 0 "VIA VT82C586 PCI-ISA" rev 0x31
> pciide0 at pci0 dev 20 function 1 "VIA VT82C571 IDE" rev 0x06: DMA,
>    channel 0 configured to compatibility,
>    channel 1 configured to compatibility
> wd0 at pciide0 channel 0 drive 0: <WDC AC33200L>
> wd0: 16-sector PIO, LBA, 3098MB, 6296 cyl, 16 head, 63 sec, 6346368
sectors
> pciide0: channel 0 interrupting at irq 14
> wd0(pciide0:0:0): using PIO mode 4, Ultra-DMA mode 2
> wd1 at pciide0 channel 1 drive 0: <WDC AC33200L>
> wd1: 16-sector PIO, LBA, 3098MB, 6296 cyl, 16 head, 63 sec, 6346368
sectors
> pciide0: channel 1 interrupting at irq 15
> wd1(pciide0:1:0): using PIO mode 4, Ultra-DMA mode 2