media: sun6i-csi: Add dimensions and format helpers to capture
authorPaul Kocialkowski <paul.kocialkowski@bootlin.com>
Thu, 3 Nov 2022 16:30:50 +0000 (16:30 +0000)
committerMauro Carvalho Chehab <mchehab@kernel.org>
Fri, 25 Nov 2022 07:04:18 +0000 (07:04 +0000)
Define and export useful helpers to access dimensions and pixel format.

Signed-off-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
Acked-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
drivers/media/platform/sunxi/sun6i-csi/sun6i_csi_capture.c
drivers/media/platform/sunxi/sun6i-csi/sun6i_csi_capture.h

index b3d19d850e8b9814b9108ba4665c55d3580ac30f..9a20b9fc25770e629c782054bc3902a868931587 100644 (file)
 
 /* Helpers */
 
+void sun6i_csi_capture_dimensions(struct sun6i_csi_device *csi_dev,
+                                 unsigned int *width, unsigned int *height)
+{
+       if (width)
+               *width = csi_dev->capture.format.fmt.pix.width;
+       if (height)
+               *height = csi_dev->capture.format.fmt.pix.height;
+}
+
+void sun6i_csi_capture_format(struct sun6i_csi_device *csi_dev,
+                             u32 *pixelformat, u32 *field)
+{
+       if (pixelformat)
+               *pixelformat = csi_dev->capture.format.fmt.pix.pixelformat;
+
+       if (field)
+               *field = csi_dev->capture.format.fmt.pix.field;
+}
+
 static struct v4l2_subdev *
 sun6i_csi_capture_remote_subdev(struct sun6i_csi_capture *capture, u32 *pad)
 {
index 7fa66a2af5ec4db2834ecfd1c91fba7a7a480db1..935f35b7049a52b98a168c653038580d68a5365d 100644 (file)
@@ -37,6 +37,11 @@ struct sun6i_csi_capture {
        u32                             mbus_code;
 };
 
+void sun6i_csi_capture_dimensions(struct sun6i_csi_device *csi_dev,
+                                 unsigned int *width, unsigned int *height);
+void sun6i_csi_capture_format(struct sun6i_csi_device *csi_dev,
+                             u32 *pixelformat, u32 *field);
+
 void sun6i_csi_capture_sync(struct sun6i_csi_device *csi_dev);
 void sun6i_csi_capture_frame_done(struct sun6i_csi_device *csi_dev);