Part Number: AM6548
Hello,
we are trying to preemptively interrupt one PRU from another ICSSG module by using the new task manager.
We set up an interrupt (e.g. host 2 or host 12), which can be received as event 128 or 136 on the task manager.
This received interrupt is shown in the GLOBAL_STATUS register of the task manager in the receiving PRU module just fine.
The GLOBAL_CFG register has the subtasks enabled and the mode set to 2 (general purpose).
But the PC (program counter) of the PRU does not change. The Global_STATUS shows that Task 1 or Task 2 was activated, but the program counter does not reflect this.
I tried all 4 task managers on the ICSSG module (PRU0/RTU0/PRU1/RTU1 to be sure that the addresses were not wrong in the manual), none had any other effect.
Neither XIN 252 or XCHG 253 (should actually be done by hardware) has any effect either.
The TS_ENABLE (Task Swapping) bit in the control register of the PRU is 0. As it is read only, task swapping cannot be activated with this register.
I found no working example code for the task manager. Can you help?
Best regards,
Sebastian