Injecting software-defined test patterns through VI

Hello,
For camera driver testing, we would like to insert software defined test patterns through VI (or otherwise). One example could be a custom Bayer frame that we have collected or created manually in software. I found some information in the TRM under VI “Host1x Injection Path”, along with some register references VI_CSIMUX_INJECT_*.

Would that be an appropriate way to go about inserting Bayer frames into the pipeline for testing the camera pipeline with Bayer data that the sensor may produce? In a previous thread was described how to disable the NVCSI firewall – would that unlock these VI registers as well?

@ShaneCCC, @DaneLLL I wonder if you could offer some advice or pointers? Thank you

hello philipp12,

may I know what’s the actual use-case?
did you meant test the capture pipeline without physical camera sensor?
there’s VI test pattern generator (TPG), that kernel module should be built-in with default Jetpack release image.
you may insert it to linux kernel, for example, $ sudo insmod nvhost-vi-tpg-t19x.ko

TPG by default create 36 channels. you shall see video nodes, and you could initial v4l pipeline to access the stream for testing.
please have a try, thanks

Thanks, @JerryChang! As you say, the use case is testing the capture pipeline without a physical camera sensor. The use case is insertion of a specific RAW Bayer pattern (say, a fixed pre-recorded image or a custom designed test pattern in RAW) into the VI pipeline. That would exercise the capture pipeline (including camera driver) without the physical camera but with some pre-recorded test pattern. In the example you gave above, is that TPG configurable to allow insertion of custom patterns? Thanks!

hello philipp12,

you cannot modify the patterns, it’s sending color bar test-pattern to VI engine, you should insert the module and access to generated video nodes for checking.

Thanks, @JerryChang. Would the “Host1x Injection Path” (registers VI_CSIMUX_INJECT_*) permit custom patterns that we define? Curious if people have used this successfully.

hello philipp12,

TBH, I’ve only tested VI test pattern generator (TPG), i.e. nvhost-vi-tpg-t19x.ko before.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.