diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2012-01-15 15:49:56 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2012-01-15 15:49:56 -0500 |
commit | 122804ecb59493fbb4d31b3ba9ac59faaf45276f (patch) | |
tree | cff4d8a158c412e4a8d3abc8d91bb0eb52b01c9a /include/media/davinci | |
parent | 16008d641670571ff4cd750b416c7caf2d89f467 (diff) | |
parent | 126400033940afb658123517a2e80eb68259fbd7 (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.h | 16 | ||||
-rw-r--r-- | include/media/davinci/vpbe_venc.h | 4 |
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 */ | ||
79 | struct 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 */ |
78 | struct vpbe_config { | 88 | struct 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 | ||
30 | struct venc_platform_data { | 30 | struct 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 | ||
38 | enum venc_ioctls { | 42 | enum venc_ioctls { |