Commit | Line | Data |
---|---|---|
07b1747c VH |
1 | /* |
2 | * drivers/media/video/tvp514x.h | |
3 | * | |
4 | * Copyright (C) 2008 Texas Instruments Inc | |
5 | * Author: Vaibhav Hiremath <hvaibhav@ti.com> | |
6 | * | |
7 | * Contributors: | |
8 | * Sivaraj R <sivaraj@ti.com> | |
9 | * Brijesh R Jadav <brijesh.j@ti.com> | |
10 | * Hardik Shah <hardik.shah@ti.com> | |
11 | * Manjunath Hadli <mrh@ti.com> | |
12 | * Karicheri Muralidharan <m-karicheri2@ti.com> | |
13 | * | |
14 | * This package is free software; you can redistribute it and/or modify | |
15 | * it under the terms of the GNU General Public License version 2 as | |
16 | * published by the Free Software Foundation. | |
17 | * | |
18 | * This program is distributed in the hope that it will be useful, | |
19 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
20 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
21 | * GNU General Public License for more details. | |
22 | * | |
23 | * You should have received a copy of the GNU General Public License | |
24 | * along with this program; if not, write to the Free Software | |
25 | * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. | |
26 | * | |
27 | */ | |
28 | ||
29 | #ifndef _TVP514X_H | |
30 | #define _TVP514X_H | |
31 | ||
32 | /* | |
33 | * Other macros | |
34 | */ | |
35 | #define TVP514X_MODULE_NAME "tvp514x" | |
36 | ||
37 | #define TVP514X_XCLK_BT656 (27000000) | |
38 | ||
39 | /* Number of pixels and number of lines per frame for different standards */ | |
40 | #define NTSC_NUM_ACTIVE_PIXELS (720) | |
41 | #define NTSC_NUM_ACTIVE_LINES (480) | |
42 | #define PAL_NUM_ACTIVE_PIXELS (720) | |
43 | #define PAL_NUM_ACTIVE_LINES (576) | |
44 | ||
45 | /** | |
46 | * enum tvp514x_input - enum for different decoder input pin | |
47 | * configuration. | |
48 | */ | |
49 | enum tvp514x_input { | |
50 | /* | |
51 | * CVBS input selection | |
52 | */ | |
53 | INPUT_CVBS_VI1A = 0x0, | |
54 | INPUT_CVBS_VI1B, | |
55 | INPUT_CVBS_VI1C, | |
56 | INPUT_CVBS_VI2A = 0x04, | |
57 | INPUT_CVBS_VI2B, | |
58 | INPUT_CVBS_VI2C, | |
59 | INPUT_CVBS_VI3A = 0x08, | |
60 | INPUT_CVBS_VI3B, | |
61 | INPUT_CVBS_VI3C, | |
62 | INPUT_CVBS_VI4A = 0x0C, | |
63 | /* | |
64 | * S-Video input selection | |
65 | */ | |
66 | INPUT_SVIDEO_VI2A_VI1A = 0x44, | |
67 | INPUT_SVIDEO_VI2B_VI1B, | |
68 | INPUT_SVIDEO_VI2C_VI1C, | |
69 | INPUT_SVIDEO_VI2A_VI3A = 0x54, | |
70 | INPUT_SVIDEO_VI2B_VI3B, | |
71 | INPUT_SVIDEO_VI2C_VI3C, | |
72 | INPUT_SVIDEO_VI4A_VI1A = 0x4C, | |
73 | INPUT_SVIDEO_VI4A_VI1B, | |
74 | INPUT_SVIDEO_VI4A_VI1C, | |
75 | INPUT_SVIDEO_VI4A_VI3A = 0x5C, | |
76 | INPUT_SVIDEO_VI4A_VI3B, | |
77 | INPUT_SVIDEO_VI4A_VI3C, | |
78 | ||
79 | /* Need to add entries for | |
80 | * RGB, YPbPr and SCART. | |
81 | */ | |
82 | INPUT_INVALID | |
83 | }; | |
84 | ||
85 | /** | |
86 | * enum tvp514x_output - enum for output format | |
87 | * supported. | |
88 | * | |
89 | */ | |
90 | enum tvp514x_output { | |
91 | OUTPUT_10BIT_422_EMBEDDED_SYNC = 0, | |
92 | OUTPUT_20BIT_422_SEPERATE_SYNC, | |
93 | OUTPUT_10BIT_422_SEPERATE_SYNC = 3, | |
94 | OUTPUT_INVALID | |
95 | }; | |
96 | ||
97 | /** | |
98 | * struct tvp514x_platform_data - Platform data values and access functions. | |
07b1747c | 99 | * @clk_polarity: Clock polarity of the current interface. |
6a05d66b PL |
100 | * @hs_polarity: HSYNC Polarity configuration for current interface. |
101 | * @vs_polarity: VSYNC Polarity configuration for current interface. | |
07b1747c VH |
102 | */ |
103 | struct tvp514x_platform_data { | |
07b1747c VH |
104 | /* Interface control params */ |
105 | bool clk_polarity; | |
106 | bool hs_polarity; | |
107 | bool vs_polarity; | |
108 | }; | |
109 | ||
110 | ||
111 | #endif /* ifndef _TVP514X_H */ |