Hi all,

I'm using the mpc8313erdb. I got two external interrupt sources which
are
handled by two UIO drivers. 
These interrupts shall be triggered on falling edge. 

Therefore I just added (Kernel version 2.6.24) in
arch/powerpc/sysdev/ipic.c in function ipic_set_irq_type
at line ~484 "flow_type = IRQ_TYPE_EDGE_FALLING;"

        /* only EXT IRQ senses are programmable on ipic
         * internal IRQ senses are LEVEL_LOW
         */
        flow_type = IRQ_TYPE_EDGE_FALLING;   // <---- added this line
        if (src == IPIC_IRQ_EXT0)
                edibit = 15;
        else
                if (src >= IPIC_IRQ_EXT1 && src <= IPIC_IRQ_EXT7)
                        edibit = (14 - (src - IPIC_IRQ_EXT1));
                else
                        return (flow_type & IRQ_TYPE_LEVEL_LOW) ? 0 :
-EINVAL;


and it seemed to work for me.

But when I'm adding this line in Kernel version 2.6.28.7
I'll get these messages on startup:

setting trigger mode 8 for irq 38 failed (0xc0017160)
setting trigger mode 8 for irq 37 failed (0xc0017160)
setting trigger mode 8 for irq 36 failed (0xc0017160)
setting trigger mode 8 for irq 35 failed (0xc0017160)
setting trigger mode 8 for irq 34 failed (0xc0017160)
setting trigger mode 8 for irq 33 failed (0xc0017160)
setting trigger mode 8 for irq 32 failed (0xc0017160)
...


It seems to me, that this is not the right place to configure the
external interrupts as "falling edge"


I guess that the dtb file might be the right place, please correct me if
I'm wrong. But I have no idea
how to add those both external interrupt sources into the dts file.

Any hints are appreciated! Thanks

regards
Frank
_______________________________________________
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev

Reply via email to