lkml.org 
[lkml]   [2011]   [Jun]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    SubjectRe: chained irq handler problems
    From
    On Tue, Jun 14, 2011 at 12:05 PM, Thomas Gleixner <tglx@linutronix.de> wrote:
    > On Sun, 12 Jun 2011, Manuel Lauss wrote:
    >> My question is: what are the differences in interrupt handling between the
    >> "traditional" handler and the cascade handler case?
    >> I also noticed that the cascade irq (the muxer irq line to the cpu) is not
    >> disabled when the interrupt is serviced. Is this by design?
    >
    > The normal handler, which should btw never ever be setup from an
    > startup callback, deals with the irq chip functions (mask, ack, eoi)
    > which are assigned to that irq line. The chained handler is called
    > directly from the low level entry code and bypasses the standard
    > handling mechanism. That means no chip functions are called. If your
    > irq chip of the primary line requires e.g. an ack, then this needs to
    > be done explicitely in the chained handler itself.

    I added calls to disable/enable the cascade around the call
    to generic_handle_irq() and now it works (no ack necessary since
    the cascade is set up as level-triggered).

    Thanks!
    Manuel Lauss


    \
     
     \ /
      Last update: 2011-06-14 13:19    [W:3.173 / U:0.000 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site