Subject: NetBSD master CVS tree commits
To: None <source-changes@NetBSD.ORG>
From: The Source of All Evil <source@NetBSD.ORG>
List: source-changes
Date: 03/12/1998 15:40:02
cgd
Thu Mar 12 15:34:30 PST 1998
Update of /cvsroot/src/sys/dev/pci
In directory nb00:/tmp/cvs-serv16748
Modified Files:
pciide.c
Log Message:
when considering attaching compatibility-mode channels, try a quick reset
and see if anything responds. if nothing (that's attributable to the
PCI IDE controller) responds, then that channel either has no devices on
it or has been disabled (via a non-standard mechanism) by the BIOS. If nothing
responds, don't map the compat.-mode interrupt or attach the wdc to that
channel, because the BIOS is likely to assign that IRQ to a different PCI
device. If that happens, the kernel will panic because that device will
try to map the IRQ level-triggered, but the compat interrupt will have been
mapped edge-triggered. (One possible way around this is to map the compat
interrupt edge-triggered, but it's not clear reading the spec that this
is correct or desirable.)