SPRUIE9D May 2017 – May 2024 DRA74P , DRA75P , DRA76P , DRA77P
NSF3V module has a shadow copy of all the configuration registers, to allow changing the registers for the next frame, either for next single-frame or next frame in the video mode. A ready-to-reprogram interrupt (nsf3v_int_reprgm) is sent to indicate such time frame, and this shortly is after vertical start (VPin_VS) in input video port is received, and before the current frame is completed, indicated by nsf3v_int_outcmpl.
When hardware completes one frame of processing in the video mode, it clears NSF3V_CTRL[0] EN in the shadow copy only, so that software can indicate "this is the last frame" in the middle of the last frame processing, and the last frame would be processed to completion.
When hardware completes one frame of processing in one-shot mode, it clears NSF3V_CTRL[0] EN in both the config bus accessible copy and the shadow copy. This is to keep one-shot mode simple and truly one-shot; next frame should not be queued-up while the current frame is being processed
The configuration reprogramming time window from nsf3v_int_reprgm to nsf3v_int_outcmpl applies to all register fields except NSF3V_CTRL[0] EN in one-shot mode. Re-enabling NSF3V in one-shot mode (by writing 1 to NSF3V_CTRL[0] EN) should be performed AFTER nsf3v_int_outcmpl.