Hi,
We have a dm368 based board which is exhibiting an intermittent problem with the H3A engine. Normally H3A works fine, writing stats into a set of buffers which our AEWB algorithm reads and sets sensor and IPIPE parameters accordingly. However after a number of application (not HW) restarts the H3A AEWB engine seems to get stuck. I've proven that it's still being clocked, and still DMAing data out into our buffers every cycle, however the data it writes out is fixed, and no longer changes with the image. I've also proven that the image is being captured by the sensor and I can display it on the screen (albeit with the wrong exposure settings, since the AEWB control loop isn't getting the right info). Note that the H3A AF still works normally when this happens.
It seems that something happens either during the quit process of the application, or it's startup sequence that causes the H3A AEWB to get stuck. Once the fault appears, only a hardware reset will clear it.
Explanations I've explored and rejected:
1) H3A not being clocked -> AF still working fine, can memset the application H3A AEWB buffer after reading it and it gets overwritten again with the stuck values. This also implies the DMA is OK.
2) H3A not enabled / reg values incorrect -> They are the same as for the working case
3) The VPSS reset errata -> We have the uboot workaround for this, and the problem occurs after application restarts, not HW restarts. DMA part seems to be working anyway.
4) CGAMMAWD incorrect -> Nope
5) Output of the image sensor is stuck -> I can see it on the display and it's definitely changing.
Can anyone suggest what might be the problem? Is there anything other than CGAMMAWD which can stop the H3A getting image data while the IPIPE still does get it?
Thanks,
Alex