But according to the this link 
<http://processors.wiki.ti.com/index.php/PRU_Interrupt_Controller#ARM_and_DSP_Interrupt_Controller_Mapping>
 
eight interrupts should be working right?

On Wednesday, 16 September 2015 20:16:17 UTC+5:30, Luiz Chamon wrote:
>
> I don't remember exactly, but I don't think there are more than 2 PRU-ARM 
> interrupts on the PRUs. I believe the other interrupts can be mapped to 
> system interrupts using the interrupt map that you pass to 
> prussdrv_pruintc_init() (you'd have to write your own instead of using 
> PRUSS_INTC_INITDATA). It's been a while since I saw this, so maybe someone 
> else should confirm this.
>
> An alternative solution to your problem is use something like a interrupt 
> vector, i.e., use part of the PRU RAM (maybe the first byte) to identify 
> which interrupt happened. You'd send the interrupt as
>
> ; Set c24 and c25 (data RAM in PRU1 and PRU0)
>     LDI32      r0, 0x24020
>     LDI          r1, 0
>     SBBO     &r1, r0, 0, 4
>
>     MOV       &r28, INTERRUPT_NUMBER
>     SBCO     r28, c24, 0, 4                          ; Not sure about this 
> line, you should check
>     MOV       r31.b0, 32 | PRU_EVTOUT_0
>
> and read it as
>
> prussdrv_map_prumem(PRUSS0_PRU1_DATARAM, &pru1_mem);         /* You might 
> need to cast this to uint32_t */
>
> prussdrv_pru_wait_event (PRU_EVTOUT_1);
> prussdrv_pru_clear_event (PRU_EVTOUT_1, PRU1_ARM_INTERRUPT);
>
> if(pru_mem1 == 0){
> } else if (pru_mem1 == 1){
> } ...
>
> This is sort of a sketch, no guarantees it will work out of the box! 
> Still, hope it helps...
>
>

-- 
For more options, visit http://beagleboard.org/discuss
--- 
You received this message because you are subscribed to the Google Groups 
"BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to beagleboard+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to