Subject: pcmcia irq changes
To: None <current-users@netbsd.org>
From: Christian E. Hopps <chopps@merit.edu>
List: current-users
Date: 02/01/2000 18:01:37
I've just committed, (probably to my undoing :), code that probes for
available irqs for the pcmcia controller.

The code supports everything (to my knowledge) except the Cirrus
chipset.  This is too bad since the cirrus chips are pretty common.
The cirrus chips, however, do not implement the full i82365 register
set.  The important thing they leave out is the ability to cause
interrupts `soft-interrupts' (i.e., poke them and they interrupt).
This ability, btw, is a pc97 requirement so I guess they don't get to be 
pc97 compliant :)

In any case I would appreciate it if as many people as possible could
try this code out and let me know if they have any problems.

I'm paticularly interested in knowing the different chipsets that this
works on (or fails to).  I'm currently aware of the following chipsets
that work:

        Ricoh 5c47[58]  (cardbus in pcic mode)
        TI 1220         (cardbus in pcic mode)
        i82365 compat   (at isa no identification otherwise)

And of course any cirrus chipset doesn't.

So if you have

options PCIC_ISA_INTR_ALLOC_MASK=<somemask>

in your kernel config and you have some chipset other than the cirrus,
please remove this from your kernel config and see if everything is
found correctly.

If you don't remove it the probe will still occur but it will restrict
what it checks to the configured alloc mask which isn't goign to test
much. :)

Also, I have found that at least with the Ricoh cardbus chips the
initial reboot should be a cold one (i.e., power cycle).  I believe this
has something to do with the chip not reseting or being initialized
properly.

Thanks,
Chris.