Subject: Re: port-alpha/21472 and kern/16379 (ohci/USB problems on Alpha)
To: NetBSD/alpha Discussion List <port-alpha@NetBSD.ORG>
From: Greg A. Woods <woods@weird.com>
List: port-alpha
Date: 10/01/2004 15:48:50
[ On Thursday, September 23, 2004 at 16:16:27 (-0400), Greg A. Woods wrote: ]
> Subject: Re: port-alpha/21472 and kern/16379 (ohci/USB problems on Alpha)
>
> Re: kern/16379: Serious problems with the ohci driver on a DEC PWS 500au (Alpha)
> Re: port-alpha/21472: USB device interferes with IDE device; interrupt lossage
>
> OK, so removing the USB devices from the kernel doesn't solve the
> problem well enough, at least not for 1.6.x on the ES40.
The work-around so far seem to be both removing the USB devices from the
kernel and being very careful to avoid ever accessing the CD-ROM or
anything else related to ISA IRQs. (I installed a SCSI CD-ROM in order
to do the install from CD.)
Now as far as I can tell Tru64 UNIX identifies the exact same IRQs for
these devices, so the interrrupt lines appear to be routed correctly
when NetBSD starts. Tru64 doesn't show the IRQ numbers when it boots
(and I can't figure out how to make the kernel more verbose on boot),
but from what I can tell from the header files
If anybody can point me to anything more specific about IRQ mapping in
Tru64 UNIX, let me know -- I've got a full test system at my disposal,
complete with the compiler and everything so far as I can tell.
One thing that's interesting though is that the ISA bus devices are not
reported by NetBSD as having an "isa irq", and neither are they
identified as "dec 6600 irq", but rather just a plain "irq":
isa0 at sio0
com0 at isa0 port 0x3f8-0x3ff irq 4: ns16550a, working fifo
com0: console
com1 at isa0 port 0x2f8-0x2ff irq 3: ns16550a, working fifo
pckbc0 at isa0 port 0x60-0x64
pcppi0 at isa0 port 0x61
midi0 at pcppi0: PC speaker
spkr0 at pcppi0
isabeep0 at pcppi0
fdc0 at isa0 port 0x3f0-0x3f7 irq 6 drq 2
fd0 at fdc0 drive 0: 1.44MB, 80 cyl, 2 head, 18 sec
Of course maybe these devices really are (also?) mapped to the same PCI IRQs?
At this point, given the "stray isa irq" messages it seems to me as if
the device drivers identify the right interrupt lines for themselves but
that these interrupts are never passed to the drivers when they happen
(or the drivers ignore them?) and thus they fall out as "stray".
I.e. they're happening, and we know the right numbers, but nobody's
listening. Could it be so simple?
--
Greg A. Woods
+1 416 218-0098 VE3TCP RoboHack <woods@robohack.ca>
Planix, Inc. <woods@planix.com> Secrets of the Weird <woods@weird.com>