I work with a i.MX6Q and connected an quad video encoder chip over CSI-0 interface. The encoder chip streams the data via BT656 and has a I2C control bus.
On software side I use the mxc_v4l2_capture.c drive and a modified ov5640.c driver.
In basic it works. I can display a stream via Gstreamer.
But I want to add a control for switching between the 4 input lines of my encoder chip.
My first thought was to add new control on base of V4L2_CID_USER_IMX_BASE.
So I call a IOCTL function with VIDIOC_S_CTRL and a parameter maybe V4L2_CID_USER_IMX_BASE.
But in that case I had to modify the mxc_v4l2_capture.c and my driver.
It's a way, but is it the right way? If I do that in that way, is there a possibility to control the capture input of my encoder chip by a standard application like v4l2-ctl?
Are ther other, better, ways to do that?