Merge branch 'master' of /home/shaggy/git/linus-clean/
[profile/ivi/kernel-x86-ivi.git] / include / linux / video_decoder.h
1 #ifndef _LINUX_VIDEO_DECODER_H
2 #define _LINUX_VIDEO_DECODER_H
3
4 #include <linux/types.h>
5
6 #define HAVE_VIDEO_DECODER 1
7
8 struct video_decoder_capability { /* this name is too long */
9         __u32   flags;
10 #define VIDEO_DECODER_PAL       1       /* can decode PAL signal */
11 #define VIDEO_DECODER_NTSC      2       /* can decode NTSC */
12 #define VIDEO_DECODER_SECAM     4       /* can decode SECAM */
13 #define VIDEO_DECODER_AUTO      8       /* can autosense norm */
14 #define VIDEO_DECODER_CCIR      16      /* CCIR-601 pixel rate (720 pixels per line) instead of square pixel rate */
15         int     inputs;                 /* number of inputs */
16         int     outputs;                /* number of outputs */
17 };
18
19 /*
20 DECODER_GET_STATUS returns the following flags.  The only one you need is
21 DECODER_STATUS_GOOD, the others are just nice things to know.
22 */
23 #define DECODER_STATUS_GOOD     1       /* receiving acceptable input */
24 #define DECODER_STATUS_COLOR    2       /* receiving color information */
25 #define DECODER_STATUS_PAL      4       /* auto detected */
26 #define DECODER_STATUS_NTSC     8       /* auto detected */
27 #define DECODER_STATUS_SECAM    16      /* auto detected */
28
29 struct video_decoder_init {
30         unsigned char len;
31         const unsigned char *data;
32 };
33
34 #define DECODER_GET_CAPABILITIES _IOR('d', 1, struct video_decoder_capability)
35 #define DECODER_GET_STATUS      _IOR('d', 2, int)
36 #define DECODER_SET_NORM        _IOW('d', 3, int)
37 #define DECODER_SET_INPUT       _IOW('d', 4, int)       /* 0 <= input < #inputs */
38 #define DECODER_SET_OUTPUT      _IOW('d', 5, int)       /* 0 <= output < #outputs */
39 #define DECODER_ENABLE_OUTPUT   _IOW('d', 6, int)       /* boolean output enable control */
40 #define DECODER_SET_PICTURE     _IOW('d', 7, struct video_picture)
41 #define DECODER_SET_GPIO        _IOW('d', 8, int)       /* switch general purpose pin */
42 #define DECODER_INIT            _IOW('d', 9, struct video_decoder_init) /* init internal registers at once */
43 #define DECODER_SET_VBI_BYPASS  _IOW('d', 10, int)      /* switch vbi bypass */
44
45 #define DECODER_DUMP            _IO('d', 192)           /* debug hook */
46
47
48 #endif