How to using Raven timer interrupt on MVME2600?

Gabriel Paubert paubert at iram.es
Thu Aug 3 07:33:25 EST 2000


On Wed, 2 Aug 2000, Gong Zhuo wrote:

>
> Hi:
>    I want to using the timer of RAVEN to get cycle interrupt.
>    I have done sth. like this:
>
>    1. 0x1092f107 ==> timer base count 0 (0xfc001110) ( the cycle is 16s and
> value is 0x07f19210 on pci bus)
>    2. 0x80000700 ==> timer 0 vector/priority reg.(0xfc001120) ( vector 80,
> priority 7)
>    3. 0x01000000 ==> timer 0 destination reg. (0xfc001130) ( interrupt to
> processor 0)
>    4. 0x06000000 ==> interrupt task priority reg. (0xfc020080) (task
> priority is 6)
>
>    I can see the value of timer 0 current count reg. is changing and the 'T'
> bit of timer 0 current count reg. changing between 0 and 1.
>    The 'ACT' bit of timer0 vector/priority reg. is 1 (the whole value is
> 0x80000740) after interrupt enabled.
>
>    In my interrupt processing:
>    1. read interrupt ack reg.
>    2. judge the vector to see if it is 0x80 (the timer 0 vector)
>    3. do the interrupte processing
>    4. write a value to EOI register
>
>    But it seems that the interrupt has never happened. After I read the
> interrupt ack reg. under PPCbug , the 'ACT' bit of vector/priority reg. will
> not change. Is that right? Something else I should do?

Yes, write 0 to the processor EOI register. I donn't understand why you
want to do it BTW, but have a look at the OpenPIC code to see how it's
done (although I don't like the code nor generally the whole PPC interrupt
mangement which was too messy last time I looked at it).

	Regards,
	Gabriel.


** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/





More information about the Linuxppc-embedded mailing list