We are using a custom hardware that provides CSI output to interface with Jetson TX2 (in place of on-board camera) and we are planning to use gstreamer to be able to stream images from it. This hardware is configured using SPI and it contains its own power supplies, clocks etc. The only connection to Jetson board is that CSI video data enters through the Camera expansion header, SPI using different bus.
At the moment gstreamer fails to connect because video0 node is not coming up. I have not made any device tree changes and there is no driver for our hardware yet. I am planning to take OV5693 as example but it is an i2c client driver. Are there any example drivers that doesn’t require I2C? I understand I2C is used to configure sensor parameters but there can be configurations where the default configuration is good or it is configured by some other means in which case there is no need for i2c client.
With reference to V4L2 subsystem, are there any minimum set of functions that the driver need to support? eg for subdev_ops, we don’t really need all of them so if we provide them as NULL, would we be able to stream the images correctly (assuming ofcourse our hardware provides CSI compliant data at the expansion header)?
In summary what would be the minimum set of changes required to get a video node so that we can use gstreamer to stream images from the input source. please clarify.