linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
* RE: request_irq () kills kernel
@ 2001-11-22  3:47 Rudolf Ladyzhenskii
  2001-11-22  3:59 ` Dan Malek
  0 siblings, 1 reply; 6+ messages in thread
From: Rudolf Ladyzhenskii @ 2001-11-22  3:47 UTC (permalink / raw)
  To: 'Dan Malek', Rudolf Ladyzhenskii; +Cc: Linuxppc-Embedded (E-mail)


Thanks, Dan,

This was mu suspicion too about request_irq().
I could not get to the request_8xxirq() from driver. I found that file
/arch/ppc/kernel/ppc_ksyms.c did not export it for 8260 processor, only for
8xx processor. After I changed that file I am able to use request_8xxirq()
and it does not crash anymore.

Rudolf

> -----Original Message-----
> From: Dan Malek [mailto:dan@embeddededge.com]
> Sent: Thursday, November 22, 2001 2:39 PM
> To: Rudolf Ladyzhenskii
> Cc: Linuxppc-Embedded (E-mail)
> Subject: Re: request_irq () kills kernel
>
>
>
> Rudolf Ladyzhenskii wrote:
>
>
> > I was looking through the kernel code and I discovered that
> other drivers
> > use request_8xxirq() instead of request_irq().
>
> Hmmm.....I didn't think request_irq() should exist.  The
> reason for the
> name change is to ensure people writing the drivers know a different
> integrated interrupt controller is in use and to catch any
> legacy drivers
> that would call request_irq() and mess up the interrupt controller.
> We are discussing other options, but I'm holding out for a
> more generic
> solution to all of the interrupt controller variants.
>
> > ..... Now, those things have been
> > defined to be same in /arch/ppc/kernel/irq.c, but both
> appear in System.map.
> > Which one should I use?
>
> You should only be using request_8xxirq() for all integrated
> peripherals.
>
> > Also, anyone have any ideas why kernel would die?
> > I am trying to hook to interrupt 0x0c (Timer0) and I
> checked SIMR_L register
> > to make sure Timer interrupts are masked.
>
> Installing an interrupt handler will automatically unmask
> that interrupt.
> If the hardware isn't properly initialized, like the timer is
> constantly
> generating interrupts, you will get stuck in an infinite
> interrupt loop.
>
>
> 	-- Dan
>
>

** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/

^ permalink raw reply	[flat|nested] 6+ messages in thread
* RE: request_irq () kills kernel
@ 2001-11-22  4:05 Rudolf Ladyzhenskii
  0 siblings, 0 replies; 6+ messages in thread
From: Rudolf Ladyzhenskii @ 2001-11-22  4:05 UTC (permalink / raw)
  To: 'Dan Malek'; +Cc: Linuxppc-Embedded (E-mail)


>
> > .... After I changed that file I am able to use request_8xxirq()
> > and it does not crash anymore.
>
> OK, but does it actually _work_ for you :-).
>
It installs the handler (I can see it in the /proc/interrupts) and does not
crash. I have not checked the interrupts themselves yet. Have to fix up some
other problems first.

Rudolf

** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/

^ permalink raw reply	[flat|nested] 6+ messages in thread
* request_irq () kills kernel
@ 2001-11-22  0:32 Rudolf Ladyzhenskii
  2001-11-22  3:38 ` Dan Malek
  2001-11-26 15:35 ` Peter Barada
  0 siblings, 2 replies; 6+ messages in thread
From: Rudolf Ladyzhenskii @ 2001-11-22  0:32 UTC (permalink / raw)
  To: Linuxppc-Embedded (E-mail)


Hi, all

I am writing a driver to support MPC8260 hardware timers.
The very moment I call request_irq(), kernel dies without a warning (I use
2.4.4 kernel).

I was looking through the kernel code and I discovered that other drivers
use request_8xxirq() instead of request_irq(). Now, those things have been
defined to be same in /arch/ppc/kernel/irq.c, but both appear in System.map.
Which one should I use?
Also, anyone have any ideas why kernel would die?
I am trying to hook to interrupt 0x0c (Timer0) and I checked SIMR_L register
to make sure Timer interrupts are masked.

Thanks,
Rudolf


** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2001-11-26 15:35 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2001-11-22  3:47 request_irq () kills kernel Rudolf Ladyzhenskii
2001-11-22  3:59 ` Dan Malek
  -- strict thread matches above, loose matches on Subject: below --
2001-11-22  4:05 Rudolf Ladyzhenskii
2001-11-22  0:32 Rudolf Ladyzhenskii
2001-11-22  3:38 ` Dan Malek
2001-11-26 15:35 ` Peter Barada

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).