Is there any way to force the reset of the MJCP on the DM36x? I have an issue where I think it locks up and would like to try and reset it to recover at runtime.
Thanks,
Randy Scheifele
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Is there any way to force the reset of the MJCP on the DM36x? I have an issue where I think it locks up and would like to try and reset it to recover at runtime.
Thanks,
Randy Scheifele
Randy, From a device standpoint, there is a way to force a reset of the entire MJCP module using the power sleep controller (PSC). This is documented in section 3.4 of the Arm subsystem users guide SPRUFG5A. Looking at table 39, the MJCP module number is 51. This means you need to sequence the reset using the MDCTL51 register. The procedure is described in section 7.4.2 Module State Transitions. I'm pretty sure you would initiate the SyncReset command and it will pulse reset on the module. You may need to check corresponding MDSTAT register to make sure it's still enabled after reset.
Here's the caveat, I don't know how you would go about doing this from Linux or what side effects it would have on Linux drivers in a running system.
Do you have any clues on why you suspect a lockup or what the problem is related to?
Brad,
Thanks for the reply. Yeah I wasn't sure if I would be able to successfully reset the MJCP in a running system. I can try what you suggested.
We are running gstreamer and both a jpeg encoder and h264 encoder at the same time. Most of the time it works, but after starting/stopping our gstreamer pipeline many times (in the hundreds) we get into a situation where the process function never returns when trying to encode an image. I can CTRL-C our application and run a very simple gstreamer pipeline that uses the jpeg encoder and it is still in a hung state. Resetting the system always "fixes" the problem. I have also been able to get the jpeg encoder to start encoding frames again without rebooting but I haven't figured out a sequence of steps necessary in order to recover the jpeg encoder from the hung state.
Is there something I can do with my JTAG device to poke into why the jpeg encoder just hangs? Do you have any other advice?
Thanks,
Randy