We use ADV212 for decoding video stream in DMA 32bit dreq/dack mode. Sometimes when errors of input video stream occur, ADV212 hangs up. When it occurs we get assertion of flag SWIRQ2 and have 0x6001 in SWFLAG register. To restore device functionality we make reset by RESET input of chip with a duration 5ms then reinitialize (firmware uploading and setup of registers and parameters). After this output video stream restores but decoding defects (artifacts) appears and chip hangs up again soon and situation repeats. But if no errors in input stream exists at all it never hangs up. So it seems that reset with RESET pin is not full or something like that.
We use last version of firmware: decode_2_16_1.sea.
Please help to solve this. What can be the reasons of such chip behavior? Is there a way to prevent chip from hang up on errored data or at least a way to fully restart chip?