Commit 9f257f50 authored by Laurent Pinchart's avatar Laurent Pinchart Committed by Mauro Carvalho Chehab
Browse files

media: imx: Unstage the imx7-media-csi driver



The imx7-media-csi driver, currently in staging, is ready for
prime-time. The staging TODO file lists a few items specific to that
driver, that are already addressed (the "all of the above" part) or can
be addressed later:

- The frame interval monitoring support is a software mechanism to
  monitor the device for unexpected stalls, and should be part of the
  V4L2 core if desired.

- Restricting the support media bus formats based on the SoC integration
  only aims at reducing userspace confusion by not enumerating options
  that are known not to be possible, it won't cause regressions if
  handled later.

Move the description of the media bus format restriction TODO item to
the driver, drop the other TODO items, and move the driver out of
staging.

Signed-off-by: default avatarLaurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: default avatarPaul Elder <paul.elder@ideasonboard.com>
Acked-by: default avatarRui Miguel Silva <rmfrfs@gmail.com>
Tested-by: default avatarAlexander Stein <alexander.stein@ew.tq-group.com>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@kernel.org>
parent 65932226
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -12736,7 +12736,7 @@ F: Documentation/admin-guide/media/imx7.rst
F:	Documentation/devicetree/bindings/media/nxp,imx-mipi-csi2.yaml
F:	Documentation/devicetree/bindings/media/nxp,imx7-csi.yaml
F:	drivers/media/platform/nxp/imx-mipi-csis.c
F:	drivers/staging/media/imx/imx7-media-csi.c
F:	drivers/media/platform/nxp/imx7-media-csi.c
MEDIA DRIVERS FOR HELENE
M:	Abylay Ospan <aospan@netup.ru>
+13 −0
Original line number Diff line number Diff line
@@ -4,6 +4,19 @@

comment "NXP media platform drivers"

config VIDEO_IMX7_CSI
	tristate "NXP CSI Bridge driver"
	depends on ARCH_MXC || COMPILE_TEST
	depends on HAS_DMA
	depends on VIDEO_DEV
	select MEDIA_CONTROLLER
	select V4L2_FWNODE
	select VIDEOBUF2_DMA_CONTIG
	select VIDEO_V4L2_SUBDEV_API
	help
	  Driver for the NXP Camera Sensor Interface (CSI) Bridge. This device
	  is found in the i.MX6UL/L, i.MX7 and i.MX8M[MQ] SoCs.

config VIDEO_IMX_MIPI_CSIS
	tristate "NXP MIPI CSI-2 CSIS receiver found on i.MX7 and i.MX8 models"
	depends on ARCH_MXC || COMPILE_TEST
+1 −0
Original line number Diff line number Diff line
@@ -3,6 +3,7 @@
obj-y += dw100/
obj-y += imx-jpeg/

obj-$(CONFIG_VIDEO_IMX7_CSI) += imx7-media-csi.o
obj-$(CONFIG_VIDEO_IMX_MIPI_CSIS) += imx-mipi-csis.o
obj-$(CONFIG_VIDEO_IMX_PXP) += imx-pxp.o
obj-$(CONFIG_VIDEO_MX2_EMMAPRP) += mx2_emmaprp.o
+24 −0
Original line number Diff line number Diff line
@@ -806,6 +806,30 @@ static irqreturn_t imx7_csi_irq_handler(int irq, void *data)
 * List of supported pixel formats for the subdevs. Keep V4L2_PIX_FMT_UYVY and
 * MEDIA_BUS_FMT_UYVY8_2X8 first to match IMX7_CSI_DEF_PIX_FORMAT and
 * IMX7_CSI_DEF_MBUS_CODE.
 *
 * TODO: Restrict the supported formats list based on the SoC integration.
 *
 * The 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 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
 * misconfigurations 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.
 */
static const struct imx7_csi_pixfmt pixel_formats[] = {
	/*** YUV formats start here ***/
+0 −7
Original line number Diff line number Diff line
@@ -23,13 +23,6 @@ config VIDEO_IMX_CSI
	default y
	help
	  A video4linux camera sensor interface driver for i.MX5/6.

config VIDEO_IMX7_CSI
	tristate "i.MX6UL/L / i.MX7 / i.MX8M Camera Sensor Interface driver"
	default y
	help
	  Enable support for video4linux camera sensor interface driver for
	  i.MX6UL/L, i.MX7 or i.MX8M.
endmenu
endif

Loading