[PATCH 26/28] [OMAPZOOM] OMAP: CAM: Add CSI2 changes to Camera driver

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



From: Sergio Aguirre <saaguirre@xxxxxx>

OMAP: CAM: Add CSI2 changes to Camera driver

This adds CSI2 related changes to the main OMAP34xx camera driver.

Signed-off-by: Sergio Aguirre <saaguirre@xxxxxx>
---
 drivers/media/video/omap34xxcam.c |    4 +++-
 drivers/media/video/omap34xxcam.h |   27 +++++++++++++++++++++++++++
 2 files changed, 30 insertions(+), 1 deletion(-)

Index: omapkernel/drivers/media/video/omap34xxcam.c
===================================================================
--- omapkernel.orig/drivers/media/video/omap34xxcam.c	2008-10-14 18:51:51.000000000 -0500
+++ omapkernel/drivers/media/video/omap34xxcam.c	2008-10-14 18:52:19.000000000 -0500
@@ -37,6 +37,7 @@
 #include "omap34xxcam.h"
 #include "isp/isph3a.h"
 #include "isp/isp_af.h"
+#include "isp/ispcsi2.h"
 
 #define OMAP34XXCAM_VERSION KERNEL_VERSION(0, 0, 0)
 
@@ -478,7 +479,8 @@
 		 best_pix_in->width, best_pix_in->height,
 		 best_pix_out.width, best_pix_out.height);
 
-	return isp_try_fmt_cap(best_pix_in, wanted_pix_out); }
+	return isp_try_fmt_cap(best_pix_in, wanted_pix_out);
+}
 
 static int s_pix_parm(struct omap34xxcam_videodev *vdev,
 		      struct v4l2_pix_format *best_pix,
Index: omapkernel/drivers/media/video/omap34xxcam.h
===================================================================
--- omapkernel.orig/drivers/media/video/omap34xxcam.h	2008-10-14 18:48:38.000000000 -0500
+++ omapkernel/drivers/media/video/omap34xxcam.h	2008-10-14 18:52:19.000000000 -0500
@@ -45,6 +45,29 @@
 struct omap34xxcam_device;
 struct omap34xxcam_videodev;
 
+struct omap34xxcam_hw_csi2_lanes_data {
+	unsigned polarity:1;
+	unsigned position:3;
+};
+
+struct omap34xxcam_hw_csi2_lanes {
+	struct omap34xxcam_hw_csi2_lanes_data data[4];
+	struct omap34xxcam_hw_csi2_lanes_data clock;
+};
+
+struct omap34xxcam_hw_csi2_phy {
+	u8 ths_term;
+	u8 ths_settle;
+	u8 tclk_term;
+	unsigned tclk_miss:1;
+	u8 tclk_settle;
+};
+
+struct omap34xxcam_hw_csi2 {
+	struct omap34xxcam_hw_csi2_lanes lanes;
+	struct omap34xxcam_hw_csi2_phy phy;
+};
+
 struct omap34xxcam_sensor_config {
 	int xclk;
 	int sensor_isp;
@@ -68,11 +91,15 @@
 	int dev_index; /* Index in omap34xxcam_sensors */
 	int dev_minor; /* Video device minor number */
 	int dev_type; /* OMAP34XXCAM_SLAVE_* */
+	int interface_type; /* Interface type */
 	union {
 		struct omap34xxcam_sensor_config sensor;
 		struct omap34xxcam_lens_config lens;
 		struct omap34xxcam_flash_config flash;
 	} u;
+	union {
+		struct omap34xxcam_hw_csi2 hw_csi2;
+	} csi2;
 };
 
 /**
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux