Question regarding IRQF_SHARED and pcmcia driver

Peter Stuge stuge-linux-pcmcia at cdy.org
Thu Jan 10 23:44:56 EST 2008


On Fri, Jan 11, 2008 at 01:20:58AM -0800, Kristoffer Ericson wrote:
> > > 2) Best way to reserve pccard irq interrupt? And does the
> > > handler get replaced by the proper driver handler?
> > 
> > Again, do you mean cardbus or pcmcia? And what exactly is the
> > hd64461 - card host or card?
> 
> pcmcia (16bit). hd64461 is a companion chip that provides features
> like pcmcia, lcd,...

Ok. Is it actually a PCI device? If not, the driver for it should
probably be a platform driver, like ISA hardware drivers.

I had to do some digging to find an example of this in the kernel,
there aren't that many simple ISA drivers left.


> > > From what I can tell the socket interrupt is working fine
> > > (detecting changes properly) but everytime it pushes IRQ_NONE
> > > (interrupt ment for pccard interrupt) it oopses with "nobody
> > > cared..".
> > 
> > Because there is no driver that requested the irq I guess?
> 
> Haven't thought about it like that, but you are correct. I always
> suspected the driver simply had issues getting the irq, but it
> could also mean that no driver is loaded (and thus no irq request).

So then you should be taking care of the interrupt, right?

Also in this case you would already have identified the source as
being the socket rather than a card - which is actually a stronger
indication that your driver needs to take action.


> This driver is based on an old one which used port-translations,
> you know the crappy PORT 0xblablabla = (real adress) 0xblobloblo,

Hm - no?


> so I might have gotten an adress wrong and in there
> caused the driver to fail its probing. Thoughts?

I guess you'll have to add gobs of printk() to find out what is
actually happening.


//Peter



More information about the linux-pcmcia mailing list