Subject: New PCI IDE attachment code.
To: None <current-users@NetBSD.ORG>
From: Chris G. Demetriou <cgd@pa.dec.com>
List: current-users
Date: 03/04/1998 09:32:11
FYI, i've checked in some new code which understands PCI IDE
controllers, and knows how to attach 'wdc's to them.  (I believe it
was 'shipped' in last night's FTP server update, but that croaked
towards the end, so i don't know if you can get the bits easily right
now.)

Right now, the code only works on the i386 (because handling of
compatibility IRQ setup requires MD bits), but it should be pretty
easy to make it work on other architectures.  Depending on how IDE
compatibility-mode IRQs are glued into those systems, it may make
sense to change the interfaces a bit; i'm flexible.  "Somebody
implement the right bits for other platforms."  8-)

It doesn't do anything particularly interesting (e.g. DMA support)
yet, but it's a place for people interested in working on PCI IDE DMA
support to start.  It does imply support for Native-PCI mode PCI IDE
controllers, which weren't previously supported (or were only
supported by people doing gross hacks in their kernel config files, to
hard-code the addresses of the Native-PCI mode IDE channels).


Anyway, if you want to enable support for it in your kernel, add lines
like:

pciide*	at pci? dev ? function ?
wdc*	at pciide? channel ?

(Note that if you've hard-wired your 'wd' units to specific 'wdc'
devices in your config file, the wdc unit numbers will change!)

If you're using a system that reports a PCI IDE controller at boot
time, i'd appreciate it if you could try this out and send me 'dmesg'
output.  (If you've got a CMD Tech. PCI IDE controller, that
appreciation is at least doubled.)

Please test this; unless people run into problems, it's going into the
GENERIC and INSTALL kernel configs "soon-ish" (where that's probably
"the next time I remember to do it, after at least one week has
passed" 8-).


chris