aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media/video/s5p-tv/mixer.h
diff options
context:
space:
mode:
authorTomasz Stanislawski <t.stanislaws@samsung.com>2011-08-25 06:14:26 -0400
committerMauro Carvalho Chehab <mchehab@redhat.com>2012-01-10 20:19:23 -0500
commit0d066d3f6fdfd189bef5fe653477f5f9db2eb225 (patch)
tree34b4e8b099292ea346692141f330199f17a181d9 /drivers/media/video/s5p-tv/mixer.h
parent992efeff79fe8de44d4e8b7636bb2e5d9dcf698d (diff)
[media] v4l: s5p-tv: mixer: add support for selection API
This patch add support for V4L2 selection API to s5p-tv driver. Moreover it removes old API for cropping. Old applications would still work because the crop ioctls are emulated using the selection API. Signed-off-by: Tomasz Stanislawski <t.stanislaws@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/video/s5p-tv/mixer.h')
-rw-r--r--drivers/media/video/s5p-tv/mixer.h14
1 files changed, 13 insertions, 1 deletions
diff --git a/drivers/media/video/s5p-tv/mixer.h b/drivers/media/video/s5p-tv/mixer.h
index 51ad59b30358..1597078c4a50 100644
--- a/drivers/media/video/s5p-tv/mixer.h
+++ b/drivers/media/video/s5p-tv/mixer.h
@@ -86,6 +86,17 @@ struct mxr_crop {
86 unsigned int field; 86 unsigned int field;
87}; 87};
88 88
89/** stages of geometry operations */
90enum mxr_geometry_stage {
91 MXR_GEOMETRY_SINK,
92 MXR_GEOMETRY_COMPOSE,
93 MXR_GEOMETRY_CROP,
94 MXR_GEOMETRY_SOURCE,
95};
96
97/* flag indicating that offset should be 0 */
98#define MXR_NO_OFFSET 0x80000000
99
89/** description of transformation from source to destination image */ 100/** description of transformation from source to destination image */
90struct mxr_geometry { 101struct mxr_geometry {
91 /** cropping for source image */ 102 /** cropping for source image */
@@ -133,7 +144,8 @@ struct mxr_layer_ops {
133 /** streaming stop/start */ 144 /** streaming stop/start */
134 void (*stream_set)(struct mxr_layer *, int); 145 void (*stream_set)(struct mxr_layer *, int);
135 /** adjusting geometry */ 146 /** adjusting geometry */
136 void (*fix_geometry)(struct mxr_layer *); 147 void (*fix_geometry)(struct mxr_layer *,
148 enum mxr_geometry_stage, unsigned long);
137}; 149};
138 150
139/** layer instance, a single window and content displayed on output */ 151/** layer instance, a single window and content displayed on output */