aboutsummaryrefslogtreecommitdiffstats
path: root/include/media/davinci
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2012-01-15 15:49:56 -0500
committerLinus Torvalds <torvalds@linux-foundation.org>2012-01-15 15:49:56 -0500
commit122804ecb59493fbb4d31b3ba9ac59faaf45276f (patch)
treecff4d8a158c412e4a8d3abc8d91bb0eb52b01c9a /include/media/davinci
parent16008d641670571ff4cd750b416c7caf2d89f467 (diff)
parent126400033940afb658123517a2e80eb68259fbd7 (diff)
Merge branch 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media
* 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (655 commits) [media] revert patch: HDIC HD29L2 DMB-TH USB2.0 reference design driver mb86a20s: Add a few more register settings at the init seq mb86a20s: Group registers into the same line [media] [PATCH] don't reset the delivery system on DTV_CLEAR [media] [BUG] it913x-fe fix typo error making SNR levels unstable [media] cx23885: Query the CX25840 during enum_input for status [media] cx25840: Add support for g_input_status [media] rc-videomate-m1f.c Rename to match remote controler name [media] drivers: media: au0828: Fix dependency for VIDEO_AU0828 [media] convert drivers/media/* to use module_platform_driver() [media] drivers: video: cx231xx: Fix dependency for VIDEO_CX231XX_DVB [media] Exynos4 JPEG codec v4l2 driver [media] doc: v4l: selection: choose pixels as units for selection rectangles [media] v4l: s5p-tv: mixer: fix setup of VP scaling [media] v4l: s5p-tv: mixer: add support for selection API [media] v4l: emulate old crop API using extended crop/compose API [media] doc: v4l: add documentation for selection API [media] doc: v4l: add binary images for selection API [media] v4l: add support for selection api [media] hd29l2: fix review findings ...
Diffstat (limited to 'include/media/davinci')
-rw-r--r--include/media/davinci/vpbe.h16
-rw-r--r--include/media/davinci/vpbe_venc.h4
2 files changed, 20 insertions, 0 deletions
diff --git a/include/media/davinci/vpbe.h b/include/media/davinci/vpbe.h
index 8b11fb037980..8bc1b3c0e679 100644
--- a/include/media/davinci/vpbe.h
+++ b/include/media/davinci/vpbe.h
@@ -63,6 +63,7 @@ struct vpbe_output {
63 * output basis. If per mode is needed, we may have to move this to 63 * output basis. If per mode is needed, we may have to move this to
64 * mode_info structure 64 * mode_info structure
65 */ 65 */
66 enum v4l2_mbus_pixelcode if_params;
66}; 67};
67 68
68/* encoder configuration info */ 69/* encoder configuration info */
@@ -74,6 +75,15 @@ struct encoder_config_info {
74 struct i2c_board_info board_info; 75 struct i2c_board_info board_info;
75}; 76};
76 77
78/*amplifier configuration info */
79struct amp_config_info {
80 char module_name[32];
81 /* Is this an i2c device ? */
82 unsigned int is_i2c:1;
83 /* i2c subdevice board info */
84 struct i2c_board_info board_info;
85};
86
77/* structure for defining vpbe display subsystem components */ 87/* structure for defining vpbe display subsystem components */
78struct vpbe_config { 88struct vpbe_config {
79 char module_name[32]; 89 char module_name[32];
@@ -84,6 +94,8 @@ struct vpbe_config {
84 /* external encoder information goes here */ 94 /* external encoder information goes here */
85 int num_ext_encoders; 95 int num_ext_encoders;
86 struct encoder_config_info *ext_encoders; 96 struct encoder_config_info *ext_encoders;
97 /* amplifier information goes here */
98 struct amp_config_info *amp;
87 int num_outputs; 99 int num_outputs;
88 /* Order is venc outputs followed by LCD and then external encoders */ 100 /* Order is venc outputs followed by LCD and then external encoders */
89 struct vpbe_output *outputs; 101 struct vpbe_output *outputs;
@@ -158,6 +170,8 @@ struct vpbe_device {
158 struct v4l2_subdev **encoders; 170 struct v4l2_subdev **encoders;
159 /* current encoder index */ 171 /* current encoder index */
160 int current_sd_index; 172 int current_sd_index;
173 /* external amplifier v4l2 subdevice */
174 struct v4l2_subdev *amp;
161 struct mutex lock; 175 struct mutex lock;
162 /* device initialized */ 176 /* device initialized */
163 int initialized; 177 int initialized;
@@ -165,6 +179,8 @@ struct vpbe_device {
165 struct clk *dac_clk; 179 struct clk *dac_clk;
166 /* osd_device pointer */ 180 /* osd_device pointer */
167 struct osd_state *osd_device; 181 struct osd_state *osd_device;
182 /* venc device pointer */
183 struct venc_platform_data *venc_device;
168 /* 184 /*
169 * fields below are accessed by users of vpbe_device. Not the 185 * fields below are accessed by users of vpbe_device. Not the
170 * ones above 186 * ones above
diff --git a/include/media/davinci/vpbe_venc.h b/include/media/davinci/vpbe_venc.h
index 426c205831a2..6b57334f4029 100644
--- a/include/media/davinci/vpbe_venc.h
+++ b/include/media/davinci/vpbe_venc.h
@@ -29,10 +29,14 @@
29 29
30struct venc_platform_data { 30struct venc_platform_data {
31 enum vpbe_version venc_type; 31 enum vpbe_version venc_type;
32 int (*setup_pinmux)(enum v4l2_mbus_pixelcode if_type,
33 int field);
32 int (*setup_clock)(enum vpbe_enc_timings_type type, 34 int (*setup_clock)(enum vpbe_enc_timings_type type,
33 unsigned int mode); 35 unsigned int mode);
36 int (*setup_if_config)(enum v4l2_mbus_pixelcode pixcode);
34 /* Number of LCD outputs supported */ 37 /* Number of LCD outputs supported */
35 int num_lcd_outputs; 38 int num_lcd_outputs;
39 struct vpbe_if_params *lcd_if_params;
36}; 40};
37 41
38enum venc_ioctls { 42enum venc_ioctls {