I'm having trouble getting PRU1 to recognize an event generated by PRU0.
The examples I have found appear to be contradictory, so I hope someone can
give me some help. I am using RemoteProc in a recent TI kernel on a
PocketBeagle, and I can load and execute firmware just fine. PRU1 uses
RPMSG, and I can generate and acknowledge events generated by the ARM to
PRU1. I try to generate events on PRU0, directed to PRU1, and PRU1 is
oblivious.
First of all, I have seen somewhere that PRU0-PRU1 is event 21, but I don't
understand where this is defined. On PRU0, my understanding is that I
write to r31 with bit 5 set and the event in the lower 4 bits, so "ldi r31,
21+32" is what I am using on PRU0.
On PRU1, I want to map this event to host interrupt 0, so I can test bit 30
of R31 to see if the interrupt has occurred. In my resource table:
/* Mapping sysevts to a channel. Each pair contains a sysevt, channel. */
struct ch_map pru_intc_map[] = { {18, 3},
{19, 1},
{21, 0}
};
and
/* Channel-to-host mapping, 255 for unused */
0, 1, HOST_UNUSED, 3, HOST_UNUSED,
HOST_UNUSED, HOST_UNUSED, HOST_UNUSED, HOST_UNUSED, HOST_UNUSED,
Is this right? I have found one project where generating the interrupt
involved subtracting 16 from the event written to R31.
--
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 [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/beagleboard/16644eee-b4d8-4be8-87d4-9184c005c52e%40googlegroups.com.