diff options
Diffstat (limited to 'meta/recipes-kernel/linux/linux-omap-2.6.29/isp/v4l')
5 files changed, 223 insertions, 0 deletions
diff --git a/meta/recipes-kernel/linux/linux-omap-2.6.29/isp/v4l/0001-V4L2-Add-COLORFX-user-control.patch b/meta/recipes-kernel/linux/linux-omap-2.6.29/isp/v4l/0001-V4L2-Add-COLORFX-user-control.patch new file mode 100644 index 0000000000..d9e4243b4a --- /dev/null +++ b/meta/recipes-kernel/linux/linux-omap-2.6.29/isp/v4l/0001-V4L2-Add-COLORFX-user-control.patch | |||
@@ -0,0 +1,44 @@ | |||
1 | From ad422f476ce04636f911557bbfd066c516e9b472 Mon Sep 17 00:00:00 2001 | ||
2 | From: Aguirre Rodriguez, Sergio Alberto <saaguirre@ti.com> | ||
3 | Date: Tue, 20 Jan 2009 16:29:26 -0600 | ||
4 | Subject: [PATCH] V4L2: Add COLORFX user control | ||
5 | |||
6 | From 07396d67b39bf7bcc81440d3e72d253ad6c54f11 Mon Sep 17 00:00:00 2001 | ||
7 | From: Sergio Aguirre <saaguirre@ti.com> | ||
8 | Date: Tue, 20 Jan 2009 15:34:43 -0600 | ||
9 | Subject: [PATCH v2] V4L2: Add COLORFX user control | ||
10 | |||
11 | This is a common feature on many cameras. the options are: | ||
12 | Default colors, | ||
13 | B & W, | ||
14 | Sepia | ||
15 | |||
16 | Signed-off-by: Sergio Aguirre <saaguirre@ti.com> | ||
17 | --- | ||
18 | include/linux/videodev2.h | 9 ++++++++- | ||
19 | 1 files changed, 8 insertions(+), 1 deletions(-) | ||
20 | |||
21 | diff --git a/include/linux/videodev2.h b/include/linux/videodev2.h | ||
22 | index 5571dbe..8e4e25e 100644 | ||
23 | --- a/include/linux/videodev2.h | ||
24 | +++ b/include/linux/videodev2.h | ||
25 | @@ -879,8 +879,15 @@ enum v4l2_power_line_frequency { | ||
26 | #define V4L2_CID_BACKLIGHT_COMPENSATION (V4L2_CID_BASE+28) | ||
27 | #define V4L2_CID_CHROMA_AGC (V4L2_CID_BASE+29) | ||
28 | #define V4L2_CID_COLOR_KILLER (V4L2_CID_BASE+30) | ||
29 | +#define V4L2_CID_COLORFX (V4L2_CID_BASE+31) | ||
30 | +enum v4l2_colorfx { | ||
31 | + V4L2_COLORFX_NONE = 0, | ||
32 | + V4L2_COLORFX_BW = 1, | ||
33 | + V4L2_COLORFX_SEPIA = 2, | ||
34 | +}; | ||
35 | + | ||
36 | /* last CID + 1 */ | ||
37 | -#define V4L2_CID_LASTP1 (V4L2_CID_BASE+31) | ||
38 | +#define V4L2_CID_LASTP1 (V4L2_CID_BASE+32) | ||
39 | |||
40 | /* MPEG-class control IDs defined by V4L2 */ | ||
41 | #define V4L2_CID_MPEG_BASE (V4L2_CTRL_CLASS_MPEG | 0x900) | ||
42 | -- | ||
43 | 1.5.6.5 | ||
44 | |||
diff --git a/meta/recipes-kernel/linux/linux-omap-2.6.29/isp/v4l/0002-V4L-Int-if-v4l2_int_device_try_attach_all-requires.patch b/meta/recipes-kernel/linux/linux-omap-2.6.29/isp/v4l/0002-V4L-Int-if-v4l2_int_device_try_attach_all-requires.patch new file mode 100644 index 0000000000..45e27a2fda --- /dev/null +++ b/meta/recipes-kernel/linux/linux-omap-2.6.29/isp/v4l/0002-V4L-Int-if-v4l2_int_device_try_attach_all-requires.patch | |||
@@ -0,0 +1,50 @@ | |||
1 | From 5b007183d51543624bc9f582966f245a64157b57 Mon Sep 17 00:00:00 2001 | ||
2 | From: Sakari Ailus <sakari.ailus@nokia.com> | ||
3 | Date: Fri, 31 Oct 2008 11:51:30 +0200 | ||
4 | Subject: [PATCH] V4L: Int if: v4l2_int_device_try_attach_all requires mutex | ||
5 | |||
6 | Signed-off-by: Sakari Ailus <sakari.ailus@nokia.com> | ||
7 | --- | ||
8 | drivers/media/video/v4l2-int-device.c | 12 ++++++++++-- | ||
9 | 1 files changed, 10 insertions(+), 2 deletions(-) | ||
10 | |||
11 | diff --git a/drivers/media/video/v4l2-int-device.c b/drivers/media/video/v4l2-int-device.c | ||
12 | index a935bae..eb8dc84 100644 | ||
13 | --- a/drivers/media/video/v4l2-int-device.c | ||
14 | +++ b/drivers/media/video/v4l2-int-device.c | ||
15 | @@ -32,7 +32,7 @@ | ||
16 | static DEFINE_MUTEX(mutex); | ||
17 | static LIST_HEAD(int_list); | ||
18 | |||
19 | -void v4l2_int_device_try_attach_all(void) | ||
20 | +static void __v4l2_int_device_try_attach_all(void) | ||
21 | { | ||
22 | struct v4l2_int_device *m, *s; | ||
23 | |||
24 | @@ -66,6 +66,14 @@ void v4l2_int_device_try_attach_all(void) | ||
25 | } | ||
26 | } | ||
27 | } | ||
28 | + | ||
29 | +void v4l2_int_device_try_attach_all(void) | ||
30 | +{ | ||
31 | + mutex_lock(&mutex); | ||
32 | + __v4l2_int_device_try_attach_all(); | ||
33 | + mutex_unlock(&mutex); | ||
34 | +} | ||
35 | + | ||
36 | EXPORT_SYMBOL_GPL(v4l2_int_device_try_attach_all); | ||
37 | |||
38 | static int ioctl_sort_cmp(const void *a, const void *b) | ||
39 | @@ -89,7 +97,7 @@ int v4l2_int_device_register(struct v4l2_int_device *d) | ||
40 | &ioctl_sort_cmp, NULL); | ||
41 | mutex_lock(&mutex); | ||
42 | list_add(&d->head, &int_list); | ||
43 | - v4l2_int_device_try_attach_all(); | ||
44 | + __v4l2_int_device_try_attach_all(); | ||
45 | mutex_unlock(&mutex); | ||
46 | |||
47 | return 0; | ||
48 | -- | ||
49 | 1.5.6.5 | ||
50 | |||
diff --git a/meta/recipes-kernel/linux/linux-omap-2.6.29/isp/v4l/0003-V4L-Int-if-Dummy-slave.patch b/meta/recipes-kernel/linux/linux-omap-2.6.29/isp/v4l/0003-V4L-Int-if-Dummy-slave.patch new file mode 100644 index 0000000000..829810fab0 --- /dev/null +++ b/meta/recipes-kernel/linux/linux-omap-2.6.29/isp/v4l/0003-V4L-Int-if-Dummy-slave.patch | |||
@@ -0,0 +1,61 @@ | |||
1 | From cc1d76e0f50321e80f7f50e9e214de2c9a45628a Mon Sep 17 00:00:00 2001 | ||
2 | From: Sakari Ailus <sakari.ailus@nokia.com> | ||
3 | Date: Wed, 22 Oct 2008 18:41:20 +0300 | ||
4 | Subject: [PATCH] V4L: Int if: Dummy slave | ||
5 | |||
6 | This patch implements a dummy slave that has no functionality. Helps | ||
7 | managing slaves in the OMAP 3 camera driver; no need to check for NULL | ||
8 | pointers. | ||
9 | |||
10 | Signed-off-by: Sakari Ailus <sakari.ailus@nokia.com> | ||
11 | --- | ||
12 | drivers/media/video/v4l2-int-device.c | 19 +++++++++++++++++++ | ||
13 | include/media/v4l2-int-device.h | 2 ++ | ||
14 | 2 files changed, 21 insertions(+), 0 deletions(-) | ||
15 | |||
16 | diff --git a/drivers/media/video/v4l2-int-device.c b/drivers/media/video/v4l2-int-device.c | ||
17 | index eb8dc84..483ee2e 100644 | ||
18 | --- a/drivers/media/video/v4l2-int-device.c | ||
19 | +++ b/drivers/media/video/v4l2-int-device.c | ||
20 | @@ -67,6 +67,25 @@ static void __v4l2_int_device_try_attach_all(void) | ||
21 | } | ||
22 | } | ||
23 | |||
24 | +static struct v4l2_int_slave dummy_slave = { | ||
25 | + /* Dummy pointer to avoid underflow in find_ioctl. */ | ||
26 | + .ioctls = (void *)sizeof(struct v4l2_int_ioctl_desc), | ||
27 | + .num_ioctls = 0, | ||
28 | +}; | ||
29 | + | ||
30 | +static struct v4l2_int_device dummy = { | ||
31 | + .type = v4l2_int_type_slave, | ||
32 | + .u = { | ||
33 | + .slave = &dummy_slave, | ||
34 | + }, | ||
35 | +}; | ||
36 | + | ||
37 | +struct v4l2_int_device *v4l2_int_device_dummy() | ||
38 | +{ | ||
39 | + return &dummy; | ||
40 | +} | ||
41 | +EXPORT_SYMBOL_GPL(v4l2_int_device_dummy); | ||
42 | + | ||
43 | void v4l2_int_device_try_attach_all(void) | ||
44 | { | ||
45 | mutex_lock(&mutex); | ||
46 | diff --git a/include/media/v4l2-int-device.h b/include/media/v4l2-int-device.h | ||
47 | index fbf5855..5d254c4 100644 | ||
48 | --- a/include/media/v4l2-int-device.h | ||
49 | +++ b/include/media/v4l2-int-device.h | ||
50 | @@ -84,6 +84,8 @@ struct v4l2_int_device { | ||
51 | void *priv; | ||
52 | }; | ||
53 | |||
54 | +struct v4l2_int_device *v4l2_int_device_dummy(void); | ||
55 | + | ||
56 | void v4l2_int_device_try_attach_all(void); | ||
57 | |||
58 | int v4l2_int_device_register(struct v4l2_int_device *d); | ||
59 | -- | ||
60 | 1.5.6.5 | ||
61 | |||
diff --git a/meta/recipes-kernel/linux/linux-omap-2.6.29/isp/v4l/0004-V4L-int-device-add-support-for-VIDIOC_QUERYMENU.patch b/meta/recipes-kernel/linux/linux-omap-2.6.29/isp/v4l/0004-V4L-int-device-add-support-for-VIDIOC_QUERYMENU.patch new file mode 100644 index 0000000000..b81b20419e --- /dev/null +++ b/meta/recipes-kernel/linux/linux-omap-2.6.29/isp/v4l/0004-V4L-int-device-add-support-for-VIDIOC_QUERYMENU.patch | |||
@@ -0,0 +1,33 @@ | |||
1 | From e041e57cafca24cf92430cdf3cc091060a271e19 Mon Sep 17 00:00:00 2001 | ||
2 | From: Sakari Ailus <sakari.ailus@nokia.com> | ||
3 | Date: Fri, 31 Oct 2008 10:20:31 +0200 | ||
4 | Subject: [PATCH] V4L: int device: add support for VIDIOC_QUERYMENU | ||
5 | |||
6 | Signed-off-by: Tuukka Toivonen <tuukka.o.toivonen@nokia.com> | ||
7 | --- | ||
8 | include/media/v4l2-int-device.h | 2 ++ | ||
9 | 1 files changed, 2 insertions(+), 0 deletions(-) | ||
10 | |||
11 | diff --git a/include/media/v4l2-int-device.h b/include/media/v4l2-int-device.h | ||
12 | index 5d254c4..81f4863 100644 | ||
13 | --- a/include/media/v4l2-int-device.h | ||
14 | +++ b/include/media/v4l2-int-device.h | ||
15 | @@ -178,6 +178,7 @@ enum v4l2_int_ioctl_num { | ||
16 | vidioc_int_s_fmt_cap_num, | ||
17 | vidioc_int_try_fmt_cap_num, | ||
18 | vidioc_int_queryctrl_num, | ||
19 | + vidioc_int_querymenu_num, | ||
20 | vidioc_int_g_ctrl_num, | ||
21 | vidioc_int_s_ctrl_num, | ||
22 | vidioc_int_cropcap_num, | ||
23 | @@ -282,6 +283,7 @@ V4L2_INT_WRAPPER_1(g_fmt_cap, struct v4l2_format, *); | ||
24 | V4L2_INT_WRAPPER_1(s_fmt_cap, struct v4l2_format, *); | ||
25 | V4L2_INT_WRAPPER_1(try_fmt_cap, struct v4l2_format, *); | ||
26 | V4L2_INT_WRAPPER_1(queryctrl, struct v4l2_queryctrl, *); | ||
27 | +V4L2_INT_WRAPPER_1(querymenu, struct v4l2_querymenu, *); | ||
28 | V4L2_INT_WRAPPER_1(g_ctrl, struct v4l2_control, *); | ||
29 | V4L2_INT_WRAPPER_1(s_ctrl, struct v4l2_control, *); | ||
30 | V4L2_INT_WRAPPER_1(cropcap, struct v4l2_cropcap, *); | ||
31 | -- | ||
32 | 1.5.6.5 | ||
33 | |||
diff --git a/meta/recipes-kernel/linux/linux-omap-2.6.29/isp/v4l/0005-V4L-Int-if-Add-vidioc_int_querycap.patch b/meta/recipes-kernel/linux/linux-omap-2.6.29/isp/v4l/0005-V4L-Int-if-Add-vidioc_int_querycap.patch new file mode 100644 index 0000000000..a9e06290fa --- /dev/null +++ b/meta/recipes-kernel/linux/linux-omap-2.6.29/isp/v4l/0005-V4L-Int-if-Add-vidioc_int_querycap.patch | |||
@@ -0,0 +1,35 @@ | |||
1 | From dc05ee10583dca44e0f8d4109bd1397ee3c5ffae Mon Sep 17 00:00:00 2001 | ||
2 | From: Sakari Ailus <sakari.ailus@nokia.com> | ||
3 | Date: Thu, 2 Oct 2008 11:55:07 +0300 | ||
4 | Subject: [PATCH] V4L: Int if: Add vidioc_int_querycap | ||
5 | |||
6 | Signed-off-by: Sakari Ailus <sakari.ailus@nokia.com> | ||
7 | --- | ||
8 | include/media/v4l2-int-device.h | 4 +++- | ||
9 | 1 files changed, 3 insertions(+), 1 deletions(-) | ||
10 | |||
11 | diff --git a/include/media/v4l2-int-device.h b/include/media/v4l2-int-device.h | ||
12 | index 81f4863..2830ae1 100644 | ||
13 | --- a/include/media/v4l2-int-device.h | ||
14 | +++ b/include/media/v4l2-int-device.h | ||
15 | @@ -173,7 +173,8 @@ enum v4l2_int_ioctl_num { | ||
16 | * "Proper" V4L ioctls, as in struct video_device. | ||
17 | * | ||
18 | */ | ||
19 | - vidioc_int_enum_fmt_cap_num = 1, | ||
20 | + vidioc_int_querycap_num = 1, | ||
21 | + vidioc_int_enum_fmt_cap_num, | ||
22 | vidioc_int_g_fmt_cap_num, | ||
23 | vidioc_int_s_fmt_cap_num, | ||
24 | vidioc_int_try_fmt_cap_num, | ||
25 | @@ -278,6 +279,7 @@ enum v4l2_int_ioctl_num { | ||
26 | return desc; \ | ||
27 | } | ||
28 | |||
29 | +V4L2_INT_WRAPPER_1(querycap, struct v4l2_capability, *); | ||
30 | V4L2_INT_WRAPPER_1(enum_fmt_cap, struct v4l2_fmtdesc, *); | ||
31 | V4L2_INT_WRAPPER_1(g_fmt_cap, struct v4l2_format, *); | ||
32 | V4L2_INT_WRAPPER_1(s_fmt_cap, struct v4l2_format, *); | ||
33 | -- | ||
34 | 1.5.6.5 | ||
35 | |||