blob: 5d3a337c870273fcb140c31c3de573213aae38b4 [file] [log] [blame]
- The Frame Interval Monitor could be exported to v4l2-core for
general use.
- The CSI subdevice parses its nearest upstream neighbor's device-tree
bus config in order to setup the CSI. Laurent Pinchart argues that
instead the CSI subdev should call its neighbor's g_mbus_config op
(which should be propagated if necessary) to get this info. However
Hans Verkuil is planning to remove the g_mbus_config op. For now this
driver uses the parsed DT bus config method until this issue is
resolved.
2020-06: g_mbus has been removed in favour of the get_mbus_config pad
operation which should be used to avoid parsing the remote endpoint
configuration.
- This media driver supports inheriting V4L2 controls to the
video capture devices, from the subdevices in the capture device's
pipeline. The controls for each capture device are updated in the
link_notify callback when the pipeline is modified. This feature should be
removed, userspace should use the subdev-based userspace API instead.
- Similarly to the legacy control handling, legacy format handling where
formats on the video nodes are influenced by the active format of the
connected subdev should be removed.
- i.MX7: all of the above, since it uses the imx media core
- i.MX7: use Frame Interval Monitor
- imx7-media-csi: Restrict the supported formats list to the SoC version.
The imx7 CSI bridge can be configured to sample pixel components from the Rx
queue in single (8bpp) or double (16bpp) component modes. Image format
variants with different sample sizes (ie YUYV_2X8 vs YUYV_1X16) determine the
pixel components sampling size per each clock cycle and their packing mode
(see imx7_csi_configure() for details).
As the imx7 CSI bridge can be interfaced with different IP blocks depending on
the SoC model it is integrated on, the Rx queue sampling size should match
the size of the samples transferred by the transmitting IP block.
To avoid mis-configurations of the capture pipeline, the enumeration of the
supported formats should be restricted to match the pixel source transmitting
mode.
Example: i.MX8MM SoC integrates the CSI bridge with the Samsung CSIS CSI-2
receiver which operates in dual pixel sampling mode. The CSI bridge should
only expose the 1X16 formats variant which instructs it to operate in dual
pixel sampling mode. When the CSI bridge is instead integrated on an i.MX7,
which supports both serial and parallel input, it should expose both variants.
This currently only applies to YUYV formats, but other formats might need
to be handled in the same way.