interrupt cells on mpc5200

Jon Smirl jonsmirl at gmail.com
Thu Sep 11 03:39:34 EST 2008


On Wed, Sep 10, 2008 at 12:54 PM, Wolfgang Grandegger <wg at grandegger.com> wrote:
> Jon Smirl wrote:
>> mpc5200 interrupts have three cells in the device tree. How are these
>> interpreted?
>> Middle one is the interrupt number. Last one seems to always be zero.
>> What does the first one do, edge/level?
>>
>> I searched through /Documentation and could find anything about three
>> cells for interrupts.
>>
>> I understand the first one for gpio_wkup on interrupt 8. How does a
>> gpio_wkup generate an interrupt on interrupt 3?
>>
>>               gpio_wkup: gpio-wkup at c00 {
>>                       compatible = "fsl,mpc5200b-gpio-wkup","fsl,mpc5200-gpio-wkup";
>>                       reg = <0xc00 0x40>;
>>                       interrupts = <0x1 0x8 0x0 0x0 0x3 0x0>;
>>                       interrupt-parent = <&mpc5200_pic>;
>>                       gpio-controller;
>>                       #gpio-cells = <2>;
>>               };
>
> See
> http://lxr.linux.no/linux+v2.6.26.5/Documentation/powerpc/mpc52xx-device-tree-bindings.txt#L263

Why was I too blind to see that file? So there must be someway to turn
a gpio_wkup into a critical interrupt which causes the interrupt 3
which is a feature I don't need.

Any hints on a good way to measure the length of pulses? They are
between 500us and 2ms long. I was thinking of using an interrupt on
the leading edge, starting a timer, and then flipping the gpio to
cause an interrupt on the trailing edge. I don't need extreme
accuracy.

-- 
Jon Smirl
jonsmirl at gmail.com



More information about the Linuxppc-dev mailing list