| From | Sent On | Attachments |
|---|---|---|
| Andreas Klemm | Jan 2, 1999 5:12 am | |
| Martin Husemann | Jan 2, 1999 7:42 am | |
| Ignatios Souvatzis | Jan 2, 1999 9:15 am | |
| Martin Husemann | Jan 2, 1999 1:42 pm | |
| Ignatios Souvatzis | Jan 2, 1999 2:06 pm |
| Subject: | Re: patch for layer1/i4b_isic.c (silence noisy debug message) | |
|---|---|---|
| From: | Ignatios Souvatzis (is...@jocelyn.rhein.de) | |
| Date: | Jan 2, 1999 9:15:58 am | |
| List: | org.freebsd.freebsd-isdn | |
On Sat, Jan 02, 1999 at 04:42:57PM +0100, Martin Husemann wrote:
This is supposed to happen: - on the Amiga (shared ISA interrupts) ZBUS, not ISA. - on PCI cards (level triggered interrupts might be shared) - on PCMCIA cards (all cards on one pcmcia controller share an interrupt)
It should never happen: - on ISA or ISAPNP cards on the i386
There realy are two problems mixed here, and the right solution is to extend the struct isic_softc by a new flag: interrupt might be shared. If this flag is set by the bus-specific attachment code the interrupt handler should not complain but return 0 (interrupt not for me).
If this flag is set and the interrupt was from this card we should also play the "mask all interrupts and reenable them" game, if the cards driver does not provide a special "clrirq" routine.
Uhm.... for the Amiga there was no fiddling needed, if I recall right. I suggest to separate the functions
- "private interupt" flag enabling that debug message - "clear interupt" routine, which might be NULL meaning "dont call it". [or maybe make it mandatory, and provide a null function... considering that we won't see any VAX port (with the hight-overhead calls) soon, maybe this is faster?)]
On i386 ISA, set "private interupt" to "1" and "clear interupt" to 0. For shared interupt cards that nead explicit clearing, put a function there that does the right thing.
The board-specific attach function probably knows best what to do.
Ignatios
-- * Progress (n.): The process through which Usenet has evolved from smart people in front of dumb terminals to dumb people in front of smart terminals. -- ob...@burnout.demon.co.uk (obscurity)
To Unsubscribe: send mail to majo...@FreeBSD.org with "unsubscribe freebsd-isdn" in the body of the message





