| |
| - 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. |