Hello,
I generated PRUSS code to control MDCTL15 register to put C674x mega module into disable state, but it is not working correctly.
Is it possible to control MDCTL15 via PRUSS ?
The power down scheme itself is followed by TRM (10.7.4.1 C674x Megamodule Clock OFF) .
PRUSS:
When PRUSS gets an event to power down DSP mega module, he does :
- PSC0.MDCTL15.NEXT = 0x2 (Disable command setup)
- PSC0.PTCMD.GO[1] = 0x1 (Apply command)
- Polling PSC0.PTSTAT.GOSTAT[1] == 0 (Awaiting the condition of power down completion)
DSP:
After the above (1) and (2) sequence applied, an interrupt (caused by event #118) should be expected at DSP side, actually, but it did not happen.
Please note , when I generated #118 interrupt manually (via CCS), then I saw the control came to #118 ISR. So, ISR itself had been being registered correctly in the system.
The problem is that #118 event does not signal during the above PRUSS sequence.
I confirmed PSC0.MDCTL15.NEXT had no change even though PRUSS actually applied the above (1) and (2) sequence.
Please note, "local reset" worked when PSC0.MDCTL15.LRST = 0 in PRUSS - I'm saying this because the emulator connection for DSP hang up by doing this.
So PRUSS control code looks like working correctly...
Backgound:
I generated McASP driver code by using PRUSS for OMAPL137 and OMAPL138 and now it is working correctly.
I want to add "automatic power control" to my PRUSS driver code, i.e., if no audio is detected for long time, PRUSS put DSP into disable state and if valid audio is coming,
then, wake up DSP.
Best Regards,
Kawada