We are trying to configure the adv7482 to detect a lost lock with an analog input. The use case is when the NTSC camera changes mode internally, the video is momentarily disrupted during the change causing a vertical sync issue on the end processor. In this use case we rely on the video chip to detect loss of signal so that the end processor can be notified and restart the stream to get vertical sync back.
The NTSC source is coming in via input "Differential positive on AIN1, differential negative on AIN2", transmitting through TXA 1-lane MIPI.
We've setup sd_unlock, sd_h_lock, sd_v_lock interrupts to be able to detect when the lock has been lost. However during the use case we never consistently see an sd_unlock interrupt or a v_lock_chng interrupt. Occasionally we see a v_lock interrupt and this allows us to successfully recover the stream. I have also tried polling LOST_LOCK in status 1 register, however LOST_LOCK is never set during the use case.
Interrupts are configured as below:
/* reg, mask, value */
IO, 0x40, 0xc0, 0xc0}, /* intrq_dur_sel */
IO, 0x75, 0x20, 0x20}, /* hdmi_encrpt_a_mb1 */
IO, 0x75, 0x01, 0x01}, /* de_regen_lck_mb1 */
IO, 0x47, 0x01, 0x01}, /* sd_int_mb1 */
SDP, 0x0e, 0x00, 0x20}, /* SDP Map 1 */
SDP, 0x44, 0x02, 0x02}, /* sd_unlock_mskb */
SDP, 0x4c, 0x00, 0x06}, /* sd_h_lock_chng_mskb, sd_v_lock_chng_mskb */
SDP, 0x0e, 0x00, 0x00}, /* ADI Required Write */
We have SDP Main Map 0x51 to defaults, however have tried:
Setting col to 0 (1 line of video before system switches into unlock state)
Enable/Disable fast locking
Switching between TIME_WIN and FREE_WIN
However with the above we have never been able to consistently get an lost_lock value or sd_unlock interrupt during the use case.
Is there any configuration settings or recommendations for improving the unlock notification so that we can detect disrupted signal.