1
2
3
4
5#include "mt9t013.h"
6#include <linux/kernel.h>
7
8struct reg_struct const mt9t013_reg_pat[2] = {
9 {
10
11
12 8,
13
14
15
16 1,
17
18
19
20 2,
21
22
23
24
25 46,
26
27
28 8,
29
30
31 1,
32
33
34 16,
35
36
37 0x0111,
38
39
40 8,
41
42
43 2053,
44
45
46 8,
47
48
49 1541,
50
51
52 0x046C,
53
54
55 1024,
56
57
58 768,
59
60
61 2616,
62
63
64 916,
65
66
67 16,
68
69
70 1461
71 },
72 {
73
74
75 8,
76
77
78
79 1,
80
81
82
83 2,
84
85
86
87
88 46,
89
90
91 8,
92
93
94 1,
95
96
97 16,
98
99
100 0x0111,
101
102
103 8,
104
105
106 2071,
107
108
109 8,
110
111
112 1551,
113
114
115 0x0024,
116
117
118 2064,
119
120
121 1544,
122
123
124 2952,
125
126
127 1629,
128
129
130 16,
131
132
133 733
134 }
135};
136
137struct mt9t013_i2c_reg_conf mt9t013_test_tbl[] = {
138 { 0x3044, 0x0544 & 0xFBFF },
139 { 0x30CA, 0x0004 | 0x0001 },
140 { 0x30D4, 0x9020 & 0x7FFF },
141 { 0x31E0, 0x0003 & 0xFFFE },
142 { 0x3180, 0x91FF & 0x7FFF },
143 { 0x301A, (0x10CC | 0x8000) & 0xFFF7 },
144 { 0x301E, 0x0000 },
145 { 0x3780, 0x0000 },
146};
147
148
149struct mt9t013_i2c_reg_conf mt9t013_lc_tbl[] = {
150 { 0x360A, 0x0290 },
151 { 0x360C, 0xC92D },
152 { 0x360E, 0x0771 },
153 { 0x3610, 0xE38C },
154 { 0x3612, 0xD74F },
155 { 0x364A, 0x168C },
156 { 0x364C, 0xCACB },
157 { 0x364E, 0x8C4C },
158 { 0x3650, 0x0BEA },
159 { 0x3652, 0xDC0F },
160 { 0x368A, 0x70B0 },
161 { 0x368C, 0x200B },
162 { 0x368E, 0x30B2 },
163 { 0x3690, 0xD04F },
164 { 0x3692, 0xACF5 },
165 { 0x36CA, 0xF7C9 },
166 { 0x36CC, 0x2AED },
167 { 0x36CE, 0xA652 },
168 { 0x36D0, 0x8192 },
169 { 0x36D2, 0x3A15 },
170 { 0x370A, 0xDA30 },
171 { 0x370C, 0x2E2F },
172 { 0x370E, 0xBB56 },
173 { 0x3710, 0x8195 },
174 { 0x3712, 0x02F9 },
175 { 0x3600, 0x0230 },
176 { 0x3602, 0x58AD },
177 { 0x3604, 0x18D1 },
178 { 0x3606, 0x260D },
179 { 0x3608, 0xF530 },
180 { 0x3640, 0x17EB },
181 { 0x3642, 0x3CAB },
182 { 0x3644, 0x87CE },
183 { 0x3646, 0xC02E },
184 { 0x3648, 0xF48F },
185 { 0x3680, 0x5350 },
186 { 0x3682, 0x7EAF },
187 { 0x3684, 0x4312 },
188 { 0x3686, 0xC652 },
189 { 0x3688, 0xBC15 },
190 { 0x36C0, 0xB8AD },
191 { 0x36C2, 0xBDCD },
192 { 0x36C4, 0xE4B2 },
193 { 0x36C6, 0xB50F },
194 { 0x36C8, 0x5B95 },
195 { 0x3700, 0xFC90 },
196 { 0x3702, 0x8C51 },
197 { 0x3704, 0xCED6 },
198 { 0x3706, 0xB594 },
199 { 0x3708, 0x0A39 },
200 { 0x3614, 0x0230 },
201 { 0x3616, 0x160D },
202 { 0x3618, 0x08D1 },
203 { 0x361A, 0x98AB },
204 { 0x361C, 0xEA50 },
205 { 0x3654, 0xB4EA },
206 { 0x3656, 0xEA6C },
207 { 0x3658, 0xFE08 },
208 { 0x365A, 0x2C6E },
209 { 0x365C, 0xEB0E },
210 { 0x3694, 0x6DF0 },
211 { 0x3696, 0x3ACF },
212 { 0x3698, 0x3E0F },
213 { 0x369A, 0xB2B1 },
214 { 0x369C, 0xC374 },
215 { 0x36D4, 0xF2AA },
216 { 0x36D6, 0x8CCC },
217 { 0x36D8, 0xDEF2 },
218 { 0x36DA, 0xFA11 },
219 { 0x36DC, 0x42F5 },
220 { 0x3714, 0xF4F1 },
221 { 0x3716, 0xF6F0 },
222 { 0x3718, 0x8FD6 },
223 { 0x371A, 0xEA14 },
224 { 0x371C, 0x6338 },
225 { 0x361E, 0x0350 },
226 { 0x3620, 0x91AE },
227 { 0x3622, 0x0571 },
228 { 0x3624, 0x100D },
229 { 0x3626, 0xCA70 },
230 { 0x365E, 0xE6CB },
231 { 0x3660, 0x50ED },
232 { 0x3662, 0x3DAE },
233 { 0x3664, 0xAA4F },
234 { 0x3666, 0xDC50 },
235 { 0x369E, 0x5470 },
236 { 0x36A0, 0x1F6E },
237 { 0x36A2, 0x6671 },
238 { 0x36A4, 0xC010 },
239 { 0x36A6, 0x8DF5 },
240 { 0x36DE, 0x0B0C },
241 { 0x36E0, 0x84CE },
242 { 0x36E2, 0x8493 },
243 { 0x36E4, 0xA610 },
244 { 0x36E6, 0x50B5 },
245 { 0x371E, 0x9651 },
246 { 0x3720, 0x1EAB },
247 { 0x3722, 0xAF76 },
248 { 0x3724, 0xE4F4 },
249 { 0x3726, 0x79F8 },
250 { 0x3782, 0x0410 },
251 { 0x3784, 0x0320 },
252 { 0x3780, 0x8000 }
253};
254
255struct mt9t013_reg mt9t013_regs = {
256 .reg_pat = &mt9t013_reg_pat[0],
257 .reg_pat_size = ARRAY_SIZE(mt9t013_reg_pat),
258 .ttbl = &mt9t013_test_tbl[0],
259 .ttbl_size = ARRAY_SIZE(mt9t013_test_tbl),
260 .lctbl = &mt9t013_lc_tbl[0],
261 .lctbl_size = ARRAY_SIZE(mt9t013_lc_tbl),
262 .rftbl = &mt9t013_lc_tbl[0],
263 .rftbl_size = ARRAY_SIZE(mt9t013_lc_tbl)
264};
265
266
267