Configure CPM2 PORTC pin (PC9) for external interrupt?
Guillaume Knispel
gknispel at proformatique.com
Sat Aug 15 08:39:04 EST 2009
On Fri, 14 Aug 2009 22:27:39 +0800
Baojun Wang <wangbj.ml at gmail.com> wrote:
> I need to configure CPM2 PORTC pin (PC9) for external interrupt, when I
> read the MPC8555ERM.pdf and cpm2-pic.c, I find that PC9 interrupt number is
> 56, and I request the IRQ in this way:
>
> hw_irq = 56;
> virq = irq_create_mapping(cpm2_host, hw_irq);
>
> reqeust_irq(virq, ...);
>
> I can request the irq successfully, but the interrupt is never generated
> (ISR is not called) to the PC9 pins, even though the hardware said an
> interrupt was raised. (the hardware have a register with a special bit)
>
> Should I configure the cpm2 io port first to allow PORTC interrupt? I have
> read the cpm2 io port documentation, and I initialize the PC9 as:
>
> PPARC[pc9_bit] = 0; /* for general purpose IO, not dedicated */
> PSORC[pc9_bit] = 0; /* no special option */
> PDIRC[pc9_bit] = 0; /* for both input/output */
>
> Am I missing some thing? Any suggestion will be greatly appreciated.
Hi,
Have a look on commit 7f3ea17f316577e31db868f720ac575c74d20163, which
fixes a linux bug about Port C interrupts
Also note that the 8555 have the same issue that the 8272 about
PC2 / PC3 missing which shifts other vectors, but I don't know if 56
for PC9 take that into account.
PS: in the future make sure to include your Linux version number, so we
know if an issue apply or not.
--
Guillaume KNISPEL
More information about the Linuxppc-dev
mailing list