summaryrefslogtreecommitdiff
path: root/linux/include/media
diff options
context:
space:
mode:
authorGuennadi Liakhovetski <g.liakhovetski@gmx.de>2009-03-13 10:08:20 +0100
committerGuennadi Liakhovetski <g.liakhovetski@gmx.de>2009-03-13 10:08:20 +0100
commita6c90657443144be8ea43b5491205d4d72bd03a6 (patch)
tree3ae4eaa68c8fe53b4ac2d0616ab8dd6cccddea32 /linux/include/media
parent9fd188a1ab044c7613e040e38da6a990e3a5a416 (diff)
downloadmediapointer-dvb-s2-a6c90657443144be8ea43b5491205d4d72bd03a6.tar.gz
mediapointer-dvb-s2-a6c90657443144be8ea43b5491205d4d72bd03a6.tar.bz2
soc-camera: add board hook to specify the buswidth for camera sensors
From: Sascha Hauer <s.hauer@pengutronix.de> Camera sensors have a native bus width say support, but on some boards not all sensor data lines are connected to the image interface and thus support a different bus width than the sensors native one. Some boards even have a bus driver which dynamically switches between different bus widths with a GPIO. This patch adds a hook which board code can use to support different bus widths. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de> Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> --- include/media/soc_camera.h | 7 +++++++ 1 files changed, 7 insertions(+), 0 deletions(-)
Diffstat (limited to 'linux/include/media')
-rw-r--r--linux/include/media/soc_camera.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/linux/include/media/soc_camera.h b/linux/include/media/soc_camera.h
index 013c81875..b44fa0952 100644
--- a/linux/include/media/soc_camera.h
+++ b/linux/include/media/soc_camera.h
@@ -102,6 +102,13 @@ struct soc_camera_link {
/* Optional callbacks to power on or off and reset the sensor */
int (*power)(struct device *, int);
int (*reset)(struct device *);
+ /*
+ * some platforms may support different data widths than the sensors
+ * native ones due to different data line routing. Let the board code
+ * overwrite the width flags.
+ */
+ int (*set_bus_param)(struct soc_camera_link *, unsigned long flags);
+ unsigned long (*query_bus_param)(struct soc_camera_link *);
};
static inline struct soc_camera_device *to_soc_camera_dev(struct device *dev)