]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - include/media/cx2341x.h
Merge master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6 into next
[linux-2.6-omap-h63xx.git] / include / media / cx2341x.h
index d758a52cf55659b8b4fdb072f126622d52bd6435..9ec4d5889ef5a9e1981c5a903d1db8a61e30da35 100644 (file)
@@ -27,6 +27,7 @@ enum cx2341x_port {
 
 enum cx2341x_cap {
        CX2341X_CAP_HAS_SLICED_VBI = 1 << 0,
+       CX2341X_CAP_HAS_TS         = 1 << 1,
 };
 
 struct cx2341x_mpeg_params {
@@ -40,6 +41,7 @@ struct cx2341x_mpeg_params {
        /* stream */
        enum v4l2_mpeg_stream_type stream_type;
        enum v4l2_mpeg_stream_vbi_fmt stream_vbi_fmt;
+       u16 stream_insert_nav_packets;
 
        /* audio */
        enum v4l2_mpeg_audio_sampling_freq audio_sampling_freq;
@@ -50,6 +52,7 @@ struct cx2341x_mpeg_params {
        enum v4l2_mpeg_audio_emphasis audio_emphasis;
        enum v4l2_mpeg_audio_crc audio_crc;
        u16 audio_properties;
+       u16 audio_mute;
 
        /* video */
        enum v4l2_mpeg_video_encoding video_encoding;
@@ -61,6 +64,8 @@ struct cx2341x_mpeg_params {
        u32 video_bitrate;
        u32 video_bitrate_peak;
        u16 video_temporal_decimation;
+       u16 video_mute;
+       u32 video_mute_yuv;
 
        /* encoding filters */
        enum v4l2_mpeg_cx2341x_video_spatial_filter_mode video_spatial_filter_mode;
@@ -79,18 +84,18 @@ struct cx2341x_mpeg_params {
 #define CX2341X_MBOX_MAX_DATA 16
 
 extern const u32 cx2341x_mpeg_ctrls[];
-typedef int (*cx2341x_mbox_func)(void *priv, int cmd, int in, int out,
+typedef int (*cx2341x_mbox_func)(void *priv, u32 cmd, int in, int out,
                u32 data[CX2341X_MBOX_MAX_DATA]);
 int cx2341x_update(void *priv, cx2341x_mbox_func func,
                const struct cx2341x_mpeg_params *old,
                const struct cx2341x_mpeg_params *new);
-int cx2341x_ctrl_query(struct cx2341x_mpeg_params *params,
+int cx2341x_ctrl_query(const struct cx2341x_mpeg_params *params,
                struct v4l2_queryctrl *qctrl);
-const char **cx2341x_ctrl_get_menu(u32 id);
-int cx2341x_ext_ctrls(struct cx2341x_mpeg_params *params,
+const char **cx2341x_ctrl_get_menu(const struct cx2341x_mpeg_params *p, u32 id);
+int cx2341x_ext_ctrls(struct cx2341x_mpeg_params *params, int busy,
                struct v4l2_ext_controls *ctrls, unsigned int cmd);
 void cx2341x_fill_defaults(struct cx2341x_mpeg_params *p);
-void cx2341x_log_status(struct cx2341x_mpeg_params *p, const char *prefix);
+void cx2341x_log_status(const struct cx2341x_mpeg_params *p, const char *prefix);
 
 /* Firmware names */
 #define CX2341X_FIRM_ENC_FILENAME "v4l-cx2341x-enc.fw"
@@ -162,7 +167,7 @@ void cx2341x_log_status(struct cx2341x_mpeg_params *p, const char *prefix);
 #define CX2341X_ENC_SET_PLACEHOLDER            0xd7
 #define CX2341X_ENC_MUTE_VIDEO                         0xd9
 #define CX2341X_ENC_MUTE_AUDIO                         0xda
-#define CX2341X_ENC_UNKNOWN                    0xdb
+#define CX2341X_ENC_SET_VERT_CROP_LINE         0xdb
 #define CX2341X_ENC_MISC                       0xdc
 
 /* OSD API, specific to the cx23415 */