1 /* saa7121.h - saa7121 initializations
2 Copyright (C) 1999 Nathan Laredo (laredo@gnu.org)
4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by
6 the Free Software Foundation; either version 2 of the License, or
7 (at your option) any later version.
9 This program is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 GNU General Public License for more details.
14 You should have received a copy of the GNU General Public License
15 along with this program; if not, write to the Free Software
16 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
22 #define NTSC_BURST_START 0x19 /* 28 */
23 #define NTSC_BURST_END 0x1d /* 29 */
24 #define NTSC_CHROMA_PHASE 0x67 /* 5a */
25 #define NTSC_GAINU 0x76 /* 5b */
26 #define NTSC_GAINV 0xa5 /* 5c */
27 #define NTSC_BLACK_LEVEL 0x2a /* 5d */
28 #define NTSC_BLANKING_LEVEL 0x2e /* 5e */
29 #define NTSC_VBI_BLANKING 0x2e /* 5f */
30 #define NTSC_DAC_CONTROL 0x11 /* 61 */
31 #define NTSC_BURST_AMP 0x3f /* 62 */
32 #define NTSC_SUBC3 0x1f /* 63 */
33 #define NTSC_SUBC2 0x7c /* 64 */
34 #define NTSC_SUBC1 0xf0 /* 65 */
35 #define NTSC_SUBC0 0x21 /* 66 */
36 #define NTSC_HTRIG 0x72 /* 6c */
37 #define NTSC_VTRIG 0x00 /* 6c */
38 #define NTSC_MULTI 0x30 /* 6e */
39 #define NTSC_CCTTX 0x11 /* 6f */
40 #define NTSC_FIRST_ACTIVE 0x12 /* 7a */
41 #define NTSC_LAST_ACTIVE 0x02 /* 7b */
42 #define NTSC_MSB_VERTICAL 0x40 /* 7c */
44 #define PAL_BURST_START 0x21 /* 28 */
45 #define PAL_BURST_END 0x1d /* 29 */
46 #define PAL_CHROMA_PHASE 0x3f /* 5a */
47 #define PAL_GAINU 0x7d /* 5b */
48 #define PAL_GAINV 0xaf /* 5c */
49 #define PAL_BLACK_LEVEL 0x23 /* 5d */
50 #define PAL_BLANKING_LEVEL 0x35 /* 5e */
51 #define PAL_VBI_BLANKING 0x35 /* 5f */
52 #define PAL_DAC_CONTROL 0x02 /* 61 */
53 #define PAL_BURST_AMP 0x2f /* 62 */
54 #define PAL_SUBC3 0xcb /* 63 */
55 #define PAL_SUBC2 0x8a /* 64 */
56 #define PAL_SUBC1 0x09 /* 65 */
57 #define PAL_SUBC0 0x2a /* 66 */
58 #define PAL_HTRIG 0x86 /* 6c */
59 #define PAL_VTRIG 0x04 /* 6d */
60 #define PAL_MULTI 0x20 /* 6e */
61 #define PAL_CCTTX 0x15 /* 6f */
62 #define PAL_FIRST_ACTIVE 0x16 /* 7a */
63 #define PAL_LAST_ACTIVE 0x36 /* 7b */
64 #define PAL_MSB_VERTICAL 0x40 /* 7c */
66 /* Initialization Sequence */
68 static __u8 init7121ntsc[] = {
70 0x28, NTSC_BURST_START, 0x29, NTSC_BURST_END,
71 0x2a, 0x0, 0x2b, 0x0, 0x2c, 0x0, 0x2d, 0x0,
72 0x2e, 0x0, 0x2f, 0x0, 0x30, 0x0, 0x31, 0x0,
73 0x32, 0x0, 0x33, 0x0, 0x34, 0x0, 0x35, 0x0,
74 0x36, 0x0, 0x37, 0x0, 0x38, 0x0, 0x39, 0x0,
75 0x3a, 0x03, 0x3b, 0x0, 0x3c, 0x0, 0x3d, 0x0,
76 0x3e, 0x0, 0x3f, 0x0, 0x40, 0x0, 0x41, 0x0,
77 0x42, 0x0, 0x43, 0x0, 0x44, 0x0, 0x45, 0x0,
78 0x46, 0x0, 0x47, 0x0, 0x48, 0x0, 0x49, 0x0,
79 0x4a, 0x0, 0x4b, 0x0, 0x4c, 0x0, 0x4d, 0x0,
80 0x4e, 0x0, 0x4f, 0x0, 0x50, 0x0, 0x51, 0x0,
81 0x52, 0x0, 0x53, 0x0, 0x54, 0x0, 0x55, 0x0,
82 0x56, 0x0, 0x57, 0x0, 0x58, 0x0, 0x59, 0x0,
83 0x5a, NTSC_CHROMA_PHASE, 0x5b, NTSC_GAINU,
84 0x5c, NTSC_GAINV, 0x5d, NTSC_BLACK_LEVEL,
85 0x5e, NTSC_BLANKING_LEVEL, 0x5f, NTSC_VBI_BLANKING,
86 0x60, 0x0, 0x61, NTSC_DAC_CONTROL,
87 0x62, NTSC_BURST_AMP, 0x63, NTSC_SUBC3,
88 0x64, NTSC_SUBC2, 0x65, NTSC_SUBC1,
89 0x66, NTSC_SUBC0, 0x67, 0x80, 0x68, 0x80,
90 0x69, 0x80, 0x6a, 0x80, 0x6b, 0x29,
91 0x6c, NTSC_HTRIG, 0x6d, NTSC_VTRIG,
92 0x6e, NTSC_MULTI, 0x6f, NTSC_CCTTX,
93 0x70, 0xc9, 0x71, 0x68, 0x72, 0x60, 0x73, 0x0,
94 0x74, 0x0, 0x75, 0x0, 0x76, 0x0, 0x77, 0x0,
95 0x78, 0x0, 0x79, 0x0, 0x7a, NTSC_FIRST_ACTIVE,
96 0x7b, NTSC_LAST_ACTIVE, 0x7c, NTSC_MSB_VERTICAL,
97 0x7d, 0x0, 0x7e, 0x0, 0x7f, 0x0
99 #define INIT7121LEN (sizeof(init7121ntsc)/2)
101 static __u8 init7121pal[] = {
102 0x26, 0x0, 0x27, 0x0,
103 0x28, PAL_BURST_START, 0x29, PAL_BURST_END,
104 0x2a, 0x0, 0x2b, 0x0, 0x2c, 0x0, 0x2d, 0x0,
105 0x2e, 0x0, 0x2f, 0x0, 0x30, 0x0, 0x31, 0x0,
106 0x32, 0x0, 0x33, 0x0, 0x34, 0x0, 0x35, 0x0,
107 0x36, 0x0, 0x37, 0x0, 0x38, 0x0, 0x39, 0x0,
108 0x3a, 0x03, 0x3b, 0x0, 0x3c, 0x0, 0x3d, 0x0,
109 0x3e, 0x0, 0x3f, 0x0, 0x40, 0x0, 0x41, 0x0,
110 0x42, 0x0, 0x43, 0x0, 0x44, 0x0, 0x45, 0x0,
111 0x46, 0x0, 0x47, 0x0, 0x48, 0x0, 0x49, 0x0,
112 0x4a, 0x0, 0x4b, 0x0, 0x4c, 0x0, 0x4d, 0x0,
113 0x4e, 0x0, 0x4f, 0x0, 0x50, 0x0, 0x51, 0x0,
114 0x52, 0x0, 0x53, 0x0, 0x54, 0x0, 0x55, 0x0,
115 0x56, 0x0, 0x57, 0x0, 0x58, 0x0, 0x59, 0x0,
116 0x5a, PAL_CHROMA_PHASE, 0x5b, PAL_GAINU,
117 0x5c, PAL_GAINV, 0x5d, PAL_BLACK_LEVEL,
118 0x5e, PAL_BLANKING_LEVEL, 0x5f, PAL_VBI_BLANKING,
119 0x60, 0x0, 0x61, PAL_DAC_CONTROL,
120 0x62, PAL_BURST_AMP, 0x63, PAL_SUBC3,
121 0x64, PAL_SUBC2, 0x65, PAL_SUBC1,
122 0x66, PAL_SUBC0, 0x67, 0x80, 0x68, 0x80,
123 0x69, 0x80, 0x6a, 0x80, 0x6b, 0x29,
124 0x6c, PAL_HTRIG, 0x6d, PAL_VTRIG,
125 0x6e, PAL_MULTI, 0x6f, PAL_CCTTX,
126 0x70, 0xc9, 0x71, 0x68, 0x72, 0x60, 0x73, 0x0,
127 0x74, 0x0, 0x75, 0x0, 0x76, 0x0, 0x77, 0x0,
128 0x78, 0x0, 0x79, 0x0, 0x7a, PAL_FIRST_ACTIVE,
129 0x7b, PAL_LAST_ACTIVE, 0x7c, PAL_MSB_VERTICAL,
130 0x7d, 0x0, 0x7e, 0x0, 0x7f, 0x0