We have a video input board where the ‘cameras’ i.e. video input streams
are not controlled directly by a single i2c controller (there are several
spi and i2c devices and intermediate circuitry). The video eventually
ends up at the csi input ports on the TX2 module. I am looking at the
“Sensor Driver Programming Guide” and the example ov4693.c driver and it
all seems very tightly tied to i2c devices. Many of the calls (i.e
v4l2_i2c_subdev_init() and camera_common_parse_ports()) expect a
struct i2c_client, but since our board is not a single i2c device this
doesn’t really exist. Even struct camera_common_data (camera_common.h) expects
a struct i2c_client.
I’m not sure if I need to search for other registration calls, or provide
a fake i2c client structure. If I have to create a dummy i2c client structure
it is unclear how many fields need to be filled in.