Port-alpha archive

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

Re: Possible IDE corruption bug?



I used to use a PWS 433a with NetBSD 2.0 and earlier, where the Pyxis
chip set was buggy for the particular cmd ata controller. It seems I
have scsi in the box too, at least that is what my kernel config
suggests.

I had some config lines in my kernel config to nail down the ata
controller. I don't have a dmesg around from 25 years ago but I do have
the kernel config.

From what I remember, first I just added some flags to the ata
controller (disabling dma). To be sure you're getting the right one you
basically "nail down" everything between it and the root. Later I added
a PCI ata controller which wasn't buggy, and I extended the config to
allow that one without the limiting flag option.

I think these lines from my configuration for 2.0 are the relevant ones:

# PCI host bus adapter support
cia0    at      mainbus0                        # for nailing down pciide0
cia*    at      mainbus?                        # just in case there are more

 PCI bus support
pci0    at      cia0                            # for nailing down pciide0
pci*    at      cia?                            # just in case there are more

# PCI devices
pciide0 at      pci0 dev 4 function 0           # built-in PCI IDE controller
pciide* at      pci? dev ? function ?           # PCI IDE controllers

# ST506/ESDI/IDE devices
pciide* at      pci? dev ? function ?           # GENERIC pciide driver
cmdide0 at      pci? dev ? function ?           # CMD tech IDE controllers
pdcide* at      pci? dev ? function ?           # Promise IDE controllers

# ATA (IDE) bus support
atabus0 at cmdide0 channel 0
atabus1 at cmdide0 channel 1
atabus* at ata?

# IDE drives
wd*     at      atabus0 drive ? flags 0xffc     # Use PIO mode 4, no DMA
wd*     at      atabus1 drive ? flags 0xffc     # Use PIO mode 4, no DMA
wd*     at      atabus? drive ?                 # Allow DMA on IDE cards

Since you have a cd0 at atapibus0 at atabus1 at cmdide0, you'd need to
nail that down too, in a similar way, to supply the flags argument.

(I think I left pciide0 in only as a fallback driver, "just in case".
You can probably remove it completely)

On Tue 27 Oct 2026 at 15:25:16 -0500, John Goerzen wrote:

> [     1.000000] mainbus0 (root)
> [     1.000000] cia0 at mainbus0: DECchip 2117x Core Logic Chipset (Pyxis), pass 2
> [     1.000000] cia0: extended capabilities: 0x1<BWEN>
> [     1.000000] cia0: using BWX for PCI config access

There is the Pyxis.

> [     1.000000] cmdide0 at pci0 dev 11 function 0: CMD Technology PCI0646 (rev. 0x01)
> [     1.000000] cmdide0: bus-master DMA support present
> [     1.000000] cmdide0: primary channel wired to compatibility mode, channel non-independent
> [     1.000000] cmdide0: primary channel interrupting at isa irq 14
> [     1.000000] atabus0 at cmdide0 channel 0
> [     1.000000] cmdide0: secondary channel wired to compatibility mode, channel non-independent
> [     1.000000] cmdide0: secondary channel interrupting at isa irq 15
> [     1.000000] atabus1 at cmdide0 channel 1

> [     1.000260] scsibus0: waiting 2 seconds for devices to settle...
> [     4.179905] wd0 at atabus0 drive 0
> [     4.219946] wd0: <IBM-DTLA-305040>
> [     4.259527] wd0: drive supports 16-sector PIO transfers, LBA addressing
> [     4.259527] wd0: 39266 MB, 79780 cyl, 16 head, 63 sec, 512 bytes/sect x 80418240 sectors
> [     4.357637] wd0: 32-bit data port
> [     4.358614] wd0: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 5 (Ultra/100)
> [     4.358614] wd0(cmdide0:0:0): using PIO mode 4, DMA mode 2 (using DMA)

> [     4.358614] atapibus0 at atabu#s1: 2 targets
> [     4.413303] cd0 at atapibus0 drive 0: <TOSHIBA CD-ROM XM-6302B, , 1012> cdrom removable
> [     4.507093] cd0: 32-bit data port
> [     4.508029] cd0: drive supports PIO mode 4, DMA mode 2
> [     4.508029] cd0(cmdide0:1:0): using PIO mode 4, DMA mode 2 (using DMA)

-Olaf.
-- 
___ Olaf 'Rhialto' Seibert                            <rhialto/at/falu.nl>
\X/ There is no AI. There is just someone else's work.           --I. Rose

Attachment: signature.asc
Description: PGP signature



Home | Main Index | Thread Index | Old Index