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.