summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorAndrzej Hajda <a.hajda@samsung.com>2013-05-10 15:44:15 +0200
committerChanho Park <chanho61.park@samsung.com>2014-11-18 11:43:06 +0900
commit9cd195edeb0939df5494c4b160a35f41e4f8b196 (patch)
treedd1c4856d2a481d75f1c38ddfda39e355f913929 /include
parent0c3806f58d86a7cc17d146b3e78e7e0b367cacc9 (diff)
downloadlinux-3.10-9cd195edeb0939df5494c4b160a35f41e4f8b196.tar.gz
linux-3.10-9cd195edeb0939df5494c4b160a35f41e4f8b196.tar.bz2
linux-3.10-9cd195edeb0939df5494c4b160a35f41e4f8b196.zip
s5k5baf: add camera sensor driver
Driver for Samsung S5K5BAF UXGA 1/5" 2M CMOS Image Sensor with embedded SoC ISP. The driver exposes the sensor as two V4L2 subdevices: - S5K5BAF-CIS - pure CMOS Image Sensor, fixed 1600x1200 format, no controls. - S5K5BAF-ISP - Image Signal Processor, formats up to 1600x1200, pre/post ISP cropping, downscaling via selection API, controls. The private V4L2_CID_{RED/GREEN/BLUE}_GAIN controls will be replaced with V4L2_CID_{RED/BLUE}_BALANCE controls in subsequent patch. Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com> Signed-off-by: Andrzej Hajda <a.hajda@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> --- v3: - narrowed state->error usage to i2c and power errors v2: - lower-cased driver name, - removed underscore from regulator names, - removed platform data code, - v4l controls grouped in anonymous structs, - added s5k5baf_clear_error function, - private controls definitions moved to uapi header file, - added v4l2-controls.h reservation for private controls, - corrected subdev registered/unregistered code, - .log_status sudbev op set to v4l2 helper, - moved entity link creation to probe routines, - added cleanup on error to probe function.
Diffstat (limited to 'include')
-rw-r--r--include/uapi/linux/s5k5baf.h19
-rw-r--r--include/uapi/linux/v4l2-controls.h5
2 files changed, 24 insertions, 0 deletions
diff --git a/include/uapi/linux/s5k5baf.h b/include/uapi/linux/s5k5baf.h
new file mode 100644
index 00000000000..e1fcb56f469
--- /dev/null
+++ b/include/uapi/linux/s5k5baf.h
@@ -0,0 +1,19 @@
+/*
+ * S5K5BAF camera sensor driver header
+ *
+ * Copyright (C) 2013 Samsung Electronics Co., Ltd.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ */
+
+#ifndef _UAPI_LINUX_S5K5BAF_H
+#define _UAPI_LINUX_S5K5BAF_H
+
+#define V4L2_CID_RED_GAIN (V4L2_CID_CAMERA_S5K5BAF_BASE + 0)
+#define V4L2_CID_GREEN_GAIN (V4L2_CID_CAMERA_S5K5BAF_BASE + 1)
+#define V4L2_CID_BLUE_GAIN (V4L2_CID_CAMERA_S5K5BAF_BASE + 2)
+
+#endif /* _UAPI_LINUX_S5K5BAF_H */
diff --git a/include/uapi/linux/v4l2-controls.h b/include/uapi/linux/v4l2-controls.h
index 69bd5bb0d5a..305d098c30b 100644
--- a/include/uapi/linux/v4l2-controls.h
+++ b/include/uapi/linux/v4l2-controls.h
@@ -700,6 +700,11 @@ enum v4l2_auto_focus_range {
V4L2_AUTO_FOCUS_RANGE_INFINITY = 3,
};
+/* Camera class private control IDs */
+
+/* The base for the s5k5baf driver controls. See linux/s5k5baf.h for the list
+ * of controls. We reserve 16 controls for this driver. */
+#define V4L2_CID_CAMERA_S5K5BAF_BASE (V4L2_CID_CAMERA_CLASS_BASE + 0x1000)
/* FM Modulator class control IDs */