aboutsummaryrefslogtreecommitdiffstats
path: root/include/media
diff options
context:
space:
mode:
Diffstat (limited to 'include/media')
-rw-r--r--include/media/soc_camera.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/include/media/soc_camera.h b/include/media/soc_camera.h
index da57ffdaec4d..e6ed0d94ac1b 100644
--- a/include/media/soc_camera.h
+++ b/include/media/soc_camera.h
@@ -81,11 +81,19 @@ struct soc_camera_host_ops {
81 unsigned int (*poll)(struct file *, poll_table *); 81 unsigned int (*poll)(struct file *, poll_table *);
82}; 82};
83 83
84#define SOCAM_SENSOR_INVERT_PCLK (1 << 0)
85#define SOCAM_SENSOR_INVERT_MCLK (1 << 1)
86#define SOCAM_SENSOR_INVERT_HSYNC (1 << 2)
87#define SOCAM_SENSOR_INVERT_VSYNC (1 << 3)
88#define SOCAM_SENSOR_INVERT_DATA (1 << 4)
89
84struct soc_camera_link { 90struct soc_camera_link {
85 /* Camera bus id, used to match a camera and a bus */ 91 /* Camera bus id, used to match a camera and a bus */
86 int bus_id; 92 int bus_id;
87 /* GPIO number to switch between 8 and 10 bit modes */ 93 /* GPIO number to switch between 8 and 10 bit modes */
88 unsigned int gpio; 94 unsigned int gpio;
95 /* Per camera SOCAM_SENSOR_* bus flags */
96 unsigned long flags;
89 /* Optional callbacks to power on or off and reset the sensor */ 97 /* Optional callbacks to power on or off and reset the sensor */
90 int (*power)(struct device *, int); 98 int (*power)(struct device *, int);
91 int (*reset)(struct device *); 99 int (*reset)(struct device *);
@@ -206,4 +214,7 @@ static inline unsigned long soc_camera_bus_param_compatible(
206 return (!hsync || !vsync || !pclk) ? 0 : common_flags; 214 return (!hsync || !vsync || !pclk) ? 0 : common_flags;
207} 215}
208 216
217extern unsigned long soc_camera_apply_sensor_flags(struct soc_camera_link *icl,
218 unsigned long flags);
219
209#endif 220#endif