[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20090909182857.GB8215@b07421-ec1.am.freescale.net>
Date: Wed, 9 Sep 2009 13:28:57 -0500
From: Scott Wood <scottwood@...escale.com>
To: Sebastian Andrzej Siewior <sebastian@...akpoint.cc>
Cc: Alemao <xcarandiru@...il.com>, linuxppc-dev@...abs.org,
linux-kernel@...r.kernel.org
Subject: Re: MPC85xx External/Internal Interrupts
On Sun, Sep 06, 2009 at 01:06:41PM +0200, Sebastian Andrzej Siewior wrote:
> irq_of_parse_and_map() creates a mapping between the hardware irq number
> as specified in the device tree and the linux number (virq) which is
> used within the linux api in request_irq() for instance.
> irq_of_parse_and_map() is essential to create a mapping between those
> two. The interrupt controller on the MPC8555 (mpic) specifies the first
> few interrupt numbers as external sources followed by internal sources.
> Now, during the init sequenze of the mpic every interrupt source
> (internal and external) becomes its uniqe vector number which identifies
> the source by a number. This number is the hardware interrupt number
> i.e. that thing in the device tree. The init sequence is a for loop
> which starts at 0 for the first interrupt source which happens to be
> external interrupt 0, 1 for external interrupt 1 and so on. At the time
> it reaches the first internal interrupt source the vector number is 16.
> That's why you always have an offset of 16 between every internal
> interupt source number in the MPC855ERM document and those weired
> numbers in the device tree :)
This seems to be a common point of confusion -- we should probably put
something in the dts bindings that explains it. Am I correct in assuming
that this particular internal/external split is Freescale-specific and
not a general OpenPIC thing?
-Scott
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists