diff options
author | Tomasz Stanislawski <t.stanislaws@samsung.com> | 2011-08-25 06:14:26 -0400 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2012-01-10 20:19:23 -0500 |
commit | 0d066d3f6fdfd189bef5fe653477f5f9db2eb225 (patch) | |
tree | 34b4e8b099292ea346692141f330199f17a181d9 /drivers/media/video/s5p-tv/mixer.h | |
parent | 992efeff79fe8de44d4e8b7636bb2e5d9dcf698d (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.h | 14 |
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 */ | ||
90 | enum 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 */ |
90 | struct mxr_geometry { | 101 | struct 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 */ |