xref: /openbmc/linux/drivers/video/fbdev/sis/oem300.h (revision bef7a78d)
1 /* $XFree86$ */
2 /* $XdotOrg$ */
3 /*
4  * OEM Data for 300 series
5  *
6  * Copyright (C) 2001-2005 by Thomas Winischhofer, Vienna, Austria
7  *
8  * If distributed as part of the Linux kernel, the following license terms
9  * apply:
10  *
11  * * This program is free software; you can redistribute it and/or modify
12  * * it under the terms of the GNU General Public License as published by
13  * * the Free Software Foundation; either version 2 of the named License,
14  * * or any later version.
15  * *
16  * * This program is distributed in the hope that it will be useful,
17  * * but WITHOUT ANY WARRANTY; without even the implied warranty of
18  * * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19  * * GNU General Public License for more details.
20  * *
21  * * You should have received a copy of the GNU General Public License
22  * * along with this program; if not, write to the Free Software
23  * * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA
24  *
25  * Otherwise, the following license terms apply:
26  *
27  * * Redistribution and use in source and binary forms, with or without
28  * * modification, are permitted provided that the following conditions
29  * * are met:
30  * * 1) Redistributions of source code must retain the above copyright
31  * *    notice, this list of conditions and the following disclaimer.
32  * * 2) Redistributions in binary form must reproduce the above copyright
33  * *    notice, this list of conditions and the following disclaimer in the
34  * *    documentation and/or other materials provided with the distribution.
35  * * 3) The name of the author may not be used to endorse or promote products
36  * *    derived from this software without specific prior written permission.
37  * *
38  * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
39  * * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
40  * * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
41  * * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
42  * * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
43  * * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
44  * * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
45  * * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
46  * * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
47  * * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
48  *
49  * Author: 	Thomas Winischhofer <thomas@winischhofer.net>
50  *
51  */
52 
53 static const unsigned char SiS300_OEMTVDelay301[8][4] =
54 {
55 	{0x08,0x08,0x08,0x08},
56 	{0x08,0x08,0x08,0x08},
57 	{0x08,0x08,0x08,0x08},
58 	{0x2c,0x2c,0x2c,0x2c},
59 	{0x08,0x08,0x08,0x08},
60 	{0x08,0x08,0x08,0x08},
61 	{0x08,0x08,0x08,0x08},
62 	{0x20,0x20,0x20,0x20}
63 };
64 
65 static const unsigned char SiS300_OEMTVDelayLVDS[8][4] =
66 {
67 	{0x20,0x20,0x20,0x20},
68 	{0x20,0x20,0x20,0x20},
69 	{0x20,0x20,0x20,0x20},
70 	{0x20,0x20,0x20,0x20},
71 	{0x20,0x20,0x20,0x20},
72 	{0x20,0x20,0x20,0x20},
73 	{0x20,0x20,0x20,0x20},
74 	{0x20,0x20,0x20,0x20}
75 };
76 
77 static const unsigned char SiS300_OEMTVFlicker[8][4] =
78 {
79 	{0x00,0x00,0x00,0x00},
80 	{0x00,0x00,0x00,0x00},
81 	{0x00,0x00,0x00,0x00},
82 	{0x00,0x00,0x00,0x00},
83 	{0x00,0x00,0x00,0x00},
84 	{0x00,0x00,0x00,0x00},
85 	{0x00,0x00,0x00,0x00},
86 	{0x00,0x00,0x00,0x00}
87 };
88 
89 static const unsigned char SiS300_OEMLCDDelay2[64][4] =		 /* for 301/301b/302b/301LV/302LV */
90 {
91 	{0x20,0x20,0x20,0x20},
92 	{0x20,0x20,0x20,0x20},
93 	{0x20,0x20,0x20,0x20},
94 	{0x20,0x20,0x20,0x20},
95 	{0x20,0x20,0x20,0x20},
96 	{0x20,0x20,0x20,0x20},
97 	{0x20,0x20,0x20,0x20},
98 	{0x20,0x20,0x20,0x20},
99 	{0x20,0x20,0x20,0x20},
100 	{0x20,0x20,0x20,0x20},
101 	{0x20,0x20,0x20,0x20},
102 	{0x20,0x20,0x20,0x20},
103 	{0x20,0x20,0x20,0x20},
104 	{0x20,0x20,0x20,0x20},
105 	{0x20,0x20,0x20,0x20},
106 	{0x20,0x20,0x20,0x20},
107 	{0x20,0x20,0x20,0x20},
108 	{0x20,0x20,0x20,0x20},
109 	{0x20,0x20,0x20,0x20},
110 	{0x20,0x20,0x20,0x20},
111 	{0x20,0x20,0x20,0x20},
112 	{0x20,0x20,0x20,0x20},
113 	{0x20,0x20,0x20,0x20},
114 	{0x20,0x20,0x20,0x20},
115 	{0x20,0x20,0x20,0x20},
116 	{0x20,0x20,0x20,0x20},
117 	{0x20,0x20,0x20,0x20},
118 	{0x20,0x20,0x20,0x20},
119 	{0x20,0x20,0x20,0x20},
120 	{0x20,0x20,0x20,0x20},
121 	{0x20,0x20,0x20,0x20},
122 	{0x20,0x20,0x20,0x20},
123 	{0x20,0x20,0x20,0x20},
124 	{0x20,0x20,0x20,0x20},
125 	{0x20,0x20,0x20,0x20},
126 	{0x20,0x20,0x20,0x20},
127 	{0x20,0x20,0x20,0x20},
128 	{0x20,0x20,0x20,0x20},
129 	{0x20,0x20,0x20,0x20},
130 	{0x20,0x20,0x20,0x20},
131 	{0x20,0x20,0x20,0x20},
132 	{0x20,0x20,0x20,0x20},
133 	{0x20,0x20,0x20,0x20},
134 	{0x20,0x20,0x20,0x20},
135 	{0x20,0x20,0x20,0x20},
136 	{0x20,0x20,0x20,0x20},
137 	{0x20,0x20,0x20,0x20},
138 	{0x20,0x20,0x20,0x20},
139 	{0x20,0x20,0x20,0x20},
140 	{0x20,0x20,0x20,0x20},
141 	{0x20,0x20,0x20,0x20},
142 	{0x20,0x20,0x20,0x20},
143 	{0x20,0x20,0x20,0x20},
144 	{0x20,0x20,0x20,0x20},
145 	{0x20,0x20,0x20,0x20},
146 	{0x20,0x20,0x20,0x20},
147 	{0x20,0x20,0x20,0x20},
148 	{0x20,0x20,0x20,0x20},
149 	{0x20,0x20,0x20,0x20},
150 	{0x20,0x20,0x20,0x20},
151 	{0x20,0x20,0x20,0x20},
152 	{0x20,0x20,0x20,0x20},
153 	{0x20,0x20,0x20,0x20},
154 	{0x20,0x20,0x20,0x20}
155 };
156 
157 static const unsigned char SiS300_OEMLCDDelay4[12][4] =
158 {
159 	{0x2c,0x2c,0x2c,0x2c},
160 	{0x20,0x20,0x20,0x20},
161 	{0x20,0x20,0x20,0x20},
162 	{0x2c,0x2c,0x2c,0x2c},
163 	{0x2c,0x2c,0x2c,0x2c},
164 	{0x20,0x20,0x20,0x20},
165 	{0x20,0x20,0x20,0x20},
166 	{0x24,0x24,0x24,0x24},
167 	{0x24,0x24,0x24,0x24},
168 	{0x20,0x20,0x20,0x20},
169 	{0x20,0x20,0x20,0x20},
170 	{0x24,0x24,0x24,0x24}
171 };
172 
173 static const unsigned char SiS300_OEMLCDDelay5[32][4] =
174 {
175 	{0x20,0x20,0x20,0x20},
176 	{0x20,0x20,0x20,0x20},
177 	{0x20,0x20,0x20,0x20},
178 	{0x20,0x20,0x20,0x20},
179 	{0x20,0x20,0x20,0x20},
180 	{0x20,0x20,0x20,0x20},
181 	{0x20,0x20,0x20,0x20},
182 	{0x20,0x20,0x20,0x20},
183 	{0x20,0x20,0x20,0x20},
184 	{0x20,0x20,0x20,0x20},
185 	{0x20,0x20,0x20,0x20},
186 	{0x20,0x20,0x20,0x20},
187 	{0x20,0x20,0x20,0x20},
188 	{0x20,0x20,0x20,0x20},
189 	{0x20,0x20,0x20,0x20},
190 	{0x20,0x20,0x20,0x20},
191 	{0x20,0x20,0x20,0x20},
192 	{0x20,0x20,0x20,0x20},
193 	{0x20,0x20,0x20,0x20},
194 	{0x20,0x20,0x20,0x20},
195 	{0x20,0x20,0x20,0x20},
196 	{0x20,0x20,0x20,0x20},
197 	{0x20,0x20,0x20,0x20},
198 	{0x20,0x20,0x20,0x20},
199 	{0x20,0x20,0x20,0x20},
200 	{0x20,0x20,0x20,0x20},
201 	{0x20,0x20,0x20,0x20},
202 	{0x20,0x20,0x20,0x20},
203 	{0x20,0x20,0x20,0x20},
204 	{0x20,0x20,0x20,0x20},
205 	{0x20,0x20,0x20,0x20},
206 	{0x20,0x20,0x20,0x20},
207 };
208 
209 static const unsigned char SiS300_OEMLCDDelay3[64][4] =		/* For LVDS */
210 {
211 	{0x20,0x20,0x20,0x20},
212 	{0x20,0x20,0x20,0x20},
213 	{0x20,0x20,0x20,0x20},
214 	{0x20,0x20,0x20,0x20},
215 	{0x20,0x20,0x20,0x20},
216 	{0x20,0x20,0x20,0x20},
217 	{0x20,0x20,0x20,0x20},
218 	{0x20,0x20,0x20,0x20},
219 	{0x20,0x20,0x20,0x20},
220 	{0x20,0x20,0x20,0x20},
221 	{0x20,0x20,0x20,0x20},
222 	{0x20,0x20,0x20,0x20},
223 	{0x20,0x20,0x20,0x20},
224 	{0x20,0x20,0x20,0x20},
225 	{0x20,0x20,0x20,0x20},
226 	{0x20,0x20,0x20,0x20},
227 	{0x20,0x20,0x20,0x20},
228 	{0x20,0x20,0x20,0x20},
229 	{0x20,0x20,0x20,0x20},
230 	{0x20,0x20,0x20,0x20},
231 	{0x20,0x20,0x20,0x20},
232 	{0x20,0x20,0x20,0x20},
233 	{0x20,0x20,0x20,0x20},
234 	{0x20,0x20,0x20,0x20},
235 	{0x20,0x20,0x20,0x20},
236 	{0x20,0x20,0x20,0x20},
237 	{0x20,0x20,0x20,0x20},
238 	{0x20,0x20,0x20,0x20},
239 	{0x20,0x20,0x20,0x20},
240 	{0x20,0x20,0x20,0x20},
241 	{0x20,0x20,0x20,0x20},
242 	{0x20,0x20,0x20,0x20},
243 	{0x20,0x20,0x20,0x20},
244 	{0x20,0x20,0x20,0x20},
245 	{0x20,0x20,0x20,0x20},
246 	{0x20,0x20,0x20,0x20},
247 	{0x20,0x20,0x20,0x20},
248 	{0x20,0x20,0x20,0x20},
249 	{0x20,0x20,0x20,0x20},
250 	{0x20,0x20,0x20,0x20},
251 	{0x20,0x20,0x20,0x20},
252 	{0x20,0x20,0x20,0x20},
253 	{0x20,0x20,0x20,0x20},
254 	{0x20,0x20,0x20,0x20},
255 	{0x20,0x20,0x20,0x20},
256 	{0x20,0x20,0x20,0x20},
257 	{0x20,0x20,0x20,0x20},
258 	{0x20,0x20,0x20,0x20},
259 	{0x20,0x20,0x20,0x20},
260 	{0x20,0x20,0x20,0x20},
261 	{0x20,0x20,0x20,0x20},
262 	{0x20,0x20,0x20,0x20},
263 	{0x20,0x20,0x20,0x20},
264 	{0x20,0x20,0x20,0x20},
265 	{0x20,0x20,0x20,0x20},
266 	{0x20,0x20,0x20,0x20},
267 	{0x20,0x20,0x20,0x20},
268 	{0x20,0x20,0x20,0x20},
269 	{0x20,0x20,0x20,0x20},
270 	{0x20,0x20,0x20,0x20},
271 	{0x20,0x20,0x20,0x20},
272 	{0x20,0x20,0x20,0x20},
273 	{0x20,0x20,0x20,0x20},
274 	{0x20,0x20,0x20,0x20}
275 };
276 
277 static const unsigned char SiS300_Phase1[8][5][4] =
278 {
279     {
280 	{0x21,0xed,0x00,0x08},
281 	{0x21,0xed,0x8a,0x08},
282 	{0x21,0xed,0x8a,0x08},
283 	{0x21,0xed,0x8a,0x08},
284 	{0x21,0xed,0x8a,0x08}
285     },
286     {
287         {0x2a,0x05,0xd3,0x00},
288 	{0x2a,0x05,0xd3,0x00},
289 	{0x2a,0x05,0xd3,0x00},
290 	{0x2a,0x05,0xd3,0x00},
291 	{0x2a,0x05,0xd3,0x00}
292     },
293     {
294         {0x2a,0x05,0xd3,0x00},
295 	{0x2a,0x05,0xd3,0x00},
296 	{0x2a,0x05,0xd3,0x00},
297 	{0x2a,0x05,0xd3,0x00},
298 	{0x2a,0x05,0xd3,0x00}
299     },
300     {
301         {0x2a,0x05,0xd3,0x00},
302 	{0x2a,0x05,0xd3,0x00},
303 	{0x2a,0x05,0xd3,0x00},
304 	{0x2a,0x05,0xd3,0x00},
305 	{0x2a,0x05,0xd3,0x00}
306     },
307     {
308         {0x21,0xed,0x00,0x08},
309 	{0x21,0xed,0x8a,0x08},
310 	{0x21,0xed,0x8a,0x08},
311 	{0x21,0xed,0x8a,0x08},
312 	{0x21,0xed,0x8a,0x08}
313     },
314     {
315         {0x2a,0x05,0xd3,0x00},
316 	{0x2a,0x05,0xd3,0x00},
317 	{0x2a,0x05,0xd3,0x00},
318 	{0x2a,0x05,0xd3,0x00},
319 	{0x2a,0x05,0xd3,0x00}
320     },
321     {
322         {0x2a,0x05,0xd3,0x00},
323 	{0x2a,0x05,0xd3,0x00},
324 	{0x2a,0x05,0xd3,0x00},
325 	{0x2a,0x05,0xd3,0x00},
326 	{0x2a,0x05,0xd3,0x00}
327     },
328     {
329         {0x2a,0x05,0xd3,0x00},
330 	{0x2a,0x05,0xd3,0x00},
331 	{0x2a,0x05,0xd3,0x00},
332 	{0x2a,0x05,0xd3,0x00},
333 	{0x2a,0x05,0xd3,0x00}
334     }
335 };
336 
337 static const unsigned char SiS300_Phase2[8][5][4] =
338 {
339     {
340 	{0x21,0xed,0x00,0x08},
341 	{0x21,0xed,0x8a,0x08},
342 	{0x21,0xed,0x8a,0x08},
343 	{0x21,0xed,0x8a,0x08},
344 	{0x21,0xed,0x8a,0x08}
345     },
346     {
347 	{0x2a,0x05,0xd3,0x00},
348 	{0x2a,0x05,0xd3,0x00},
349 	{0x2a,0x05,0xd3,0x00},
350 	{0x2a,0x05,0xd3,0x00},
351 	{0x2a,0x05,0xd3,0x00}
352     },
353     {
354 	{0x2a,0x05,0xd3,0x00},
355 	{0x2a,0x05,0xd3,0x00},
356 	{0x2a,0x05,0xd3,0x00},
357 	{0x2a,0x05,0xd3,0x00},
358 	{0x2a,0x05,0xd3,0x00}
359     },
360     {
361 	{0x2a,0x05,0xd3,0x00},
362 	{0x2a,0x05,0xd3,0x00},
363 	{0x2a,0x05,0xd3,0x00},
364 	{0x2a,0x05,0xd3,0x00},
365 	{0x2a,0x05,0xd3,0x00}
366     },
367     {
368 	{0x21,0xed,0x00,0x08},
369 	{0x21,0xed,0x8a,0x08},
370 	{0x21,0xed,0x8a,0x08},
371 	{0x21,0xed,0x8a,0x08},
372 	{0x21,0xed,0x8a,0x08}
373     },
374     {
375 	{0x2a,0x05,0xd3,0x00},
376 	{0x2a,0x05,0xd3,0x00},
377 	{0x2a,0x05,0xd3,0x00},
378 	{0x2a,0x05,0xd3,0x00},
379 	{0x2a,0x05,0xd3,0x00}
380     },
381     {
382 	{0x2a,0x05,0xd3,0x00},
383 	{0x2a,0x05,0xd3,0x00},
384 	{0x2a,0x05,0xd3,0x00},
385 	{0x2a,0x05,0xd3,0x00},
386 	{0x2a,0x05,0xd3,0x00}
387     },
388     {
389 	{0x2a,0x05,0xd3,0x00},
390 	{0x2a,0x05,0xd3,0x00},
391 	{0x2a,0x05,0xd3,0x00},
392 	{0x2a,0x05,0xd3,0x00},
393 	{0x2a,0x05,0xd3,0x00}
394     }
395 };
396 
397 static const unsigned char SiS300_Filter1[10][16][4] =
398 {
399     {
400 	{0x00,0xf4,0x10,0x38},
401 	{0x00,0xf4,0x10,0x38},
402 	{0xeb,0x04,0x10,0x18},
403 	{0xf7,0x06,0x19,0x14},
404 	{0x00,0xf4,0x10,0x38},
405 	{0xeb,0x04,0x25,0x18},
406 	{0xeb,0x04,0x25,0x18},
407 	{0xeb,0x15,0x25,0xf6},
408 	{0xeb,0x04,0x25,0x18},
409 	{0xeb,0x04,0x25,0x18},
410 	{0xeb,0x04,0x25,0x18},
411 	{0xeb,0x04,0x25,0x18},
412 	{0xeb,0x04,0x25,0x18},
413 	{0xeb,0x04,0x25,0x18},
414 	{0xeb,0x04,0x25,0x18},
415 	{0xeb,0x04,0x25,0x18}
416     },
417     {
418 	{0x00,0xf4,0x10,0x38},
419 	{0x00,0xf4,0x10,0x38},
420 	{0xf1,0xf7,0x10,0x32},
421 	{0xf3,0x00,0x1d,0x20},
422 	{0x00,0xf4,0x10,0x38},
423 	{0xf1,0xf7,0x1f,0x32},
424 	{0xf1,0xf7,0x1f,0x32},
425 	{0xfc,0xfb,0x14,0x2a},
426 	{0xf1,0xf7,0x1f,0x32},
427 	{0xf1,0xf7,0x1f,0x32},
428 	{0xf1,0xf7,0x1f,0x32},
429 	{0xf1,0xf7,0x1f,0x32},
430 	{0xf1,0xf7,0x1f,0x32},
431 	{0xf1,0xf7,0x1f,0x32},
432 	{0xf1,0xf7,0x1f,0x32},
433 	{0xf1,0xf7,0x1f,0x32}
434     },
435     {
436 	{0x00,0xf4,0x10,0x38},
437 	{0x00,0xf4,0x10,0x38},
438 	{0xf1,0xf7,0x10,0x32},
439 	{0xf3,0x00,0x1d,0x20},
440 	{0x00,0xf4,0x10,0x38},
441 	{0xf1,0xf7,0x1f,0x32},
442 	{0xf1,0xf7,0x1f,0x32},
443 	{0xfc,0xfb,0x14,0x2a},
444 	{0xf1,0xf7,0x1f,0x32},
445 	{0xf1,0xf7,0x1f,0x32},
446 	{0xf1,0xf7,0x1f,0x32},
447 	{0xf1,0xf7,0x1f,0x32},
448 	{0xf1,0xf7,0x1f,0x32},
449 	{0xf1,0xf7,0x1f,0x32},
450 	{0xf1,0xf7,0x1f,0x32},
451 	{0xf1,0xf7,0x1f,0x32}
452     },
453     {
454 	{0x00,0xf4,0x10,0x38},
455 	{0x00,0xf4,0x10,0x38},
456 	{0xf1,0xf7,0x10,0x32},
457 	{0xf3,0x00,0x1d,0x20},
458 	{0x00,0xf4,0x10,0x38},
459 	{0xf1,0xf7,0x1f,0x32},
460 	{0xf1,0xf7,0x1f,0x32},
461 	{0xfc,0xfb,0x14,0x2a},
462 	{0xf1,0xf7,0x1f,0x32},
463 	{0xf1,0xf7,0x1f,0x32},
464 	{0xf1,0xf7,0x1f,0x32},
465 	{0xf1,0xf7,0x1f,0x32},
466 	{0xf1,0xf7,0x1f,0x32},
467 	{0xf1,0xf7,0x1f,0x32},
468 	{0xf1,0xf7,0x1f,0x32},
469 	{0xf1,0xf7,0x1f,0x32}
470     },
471     {
472 	{0x00,0xf4,0x10,0x38},
473 	{0x00,0xf4,0x10,0x38},
474 	{0xeb,0x04,0x10,0x18},
475 	{0xf7,0x06,0x19,0x14},
476 	{0x00,0xf4,0x10,0x38},
477 	{0xeb,0x04,0x25,0x18},
478 	{0xeb,0x04,0x25,0x18},
479 	{0xeb,0x15,0x25,0xf6},
480 	{0xeb,0x04,0x25,0x18},
481 	{0xeb,0x04,0x25,0x18},
482 	{0xeb,0x04,0x25,0x18},
483 	{0xeb,0x04,0x25,0x18},
484 	{0xeb,0x04,0x25,0x18},
485 	{0xeb,0x04,0x25,0x18},
486 	{0xeb,0x04,0x25,0x18},
487 	{0xeb,0x04,0x25,0x18}
488     },
489     {
490 	{0x00,0xf4,0x10,0x38},
491 	{0x00,0xf4,0x10,0x38},
492 	{0xf1,0xf7,0x10,0x32},
493 	{0xf3,0x00,0x1d,0x20},
494 	{0x00,0xf4,0x10,0x38},
495 	{0xf1,0xf7,0x1f,0x32},
496 	{0xf1,0xf7,0x1f,0x32},
497 	{0xfc,0xfb,0x14,0x2a},
498 	{0xf1,0xf7,0x1f,0x32},
499 	{0xf1,0xf7,0x1f,0x32},
500 	{0xf1,0xf7,0x1f,0x32},
501 	{0xf1,0xf7,0x1f,0x32},
502 	{0xf1,0xf7,0x1f,0x32},
503 	{0xf1,0xf7,0x1f,0x32},
504 	{0xf1,0xf7,0x1f,0x32},
505 	{0xf1,0xf7,0x1f,0x32}
506     },
507     {
508 	{0x00,0xf4,0x10,0x38},
509 	{0x00,0xf4,0x10,0x38},
510 	{0xf1,0xf7,0x10,0x32},
511 	{0xf3,0x00,0x1d,0x20},
512 	{0x00,0xf4,0x10,0x38},
513 	{0xf1,0xf7,0x1f,0x32},
514 	{0xf1,0xf7,0x1f,0x32},
515 	{0xfc,0xfb,0x14,0x2a},
516 	{0xf1,0xf7,0x1f,0x32},
517 	{0xf1,0xf7,0x1f,0x32},
518 	{0xf1,0xf7,0x1f,0x32},
519 	{0xf1,0xf7,0x1f,0x32},
520 	{0xf1,0xf7,0x1f,0x32},
521 	{0xf1,0xf7,0x1f,0x32},
522 	{0xf1,0xf7,0x1f,0x32},
523 	{0xf1,0xf7,0x1f,0x32}
524     },
525     {
526 	{0x00,0xf4,0x10,0x38},
527 	{0x00,0xf4,0x10,0x38},
528 	{0xf1,0xf7,0x10,0x32},
529 	{0xf3,0x00,0x1d,0x20},
530 	{0x00,0xf4,0x10,0x38},
531 	{0xf1,0xf7,0x1f,0x32},
532 	{0xf1,0xf7,0x1f,0x32},
533 	{0xfc,0xfb,0x14,0x2a},
534 	{0xf1,0xf7,0x1f,0x32},
535 	{0xf1,0xf7,0x1f,0x32},
536 	{0xf1,0xf7,0x1f,0x32},
537 	{0xf1,0xf7,0x1f,0x32},
538 	{0xf1,0xf7,0x1f,0x32},
539 	{0xf1,0xf7,0x1f,0x32},
540 	{0xf1,0xf7,0x1f,0x32},
541 	{0xf1,0xf7,0x1f,0x32}
542     },
543     {
544 	{0x00,0xf4,0x10,0x38},
545 	{0x00,0xf4,0x10,0x38},
546 	{0xeb,0x04,0x10,0x18},
547 	{0xf7,0x06,0x19,0x14},
548 	{0x00,0xf4,0x10,0x38},
549 	{0xeb,0x04,0x25,0x18},
550 	{0xeb,0x04,0x25,0x18},
551 	{0xeb,0x15,0x25,0xf6},
552 	{0xeb,0x04,0x25,0x18},
553 	{0xeb,0x04,0x25,0x18},
554 	{0xeb,0x04,0x25,0x18},
555 	{0xeb,0x04,0x25,0x18},
556 	{0xeb,0x04,0x25,0x18},
557 	{0xeb,0x04,0x25,0x18},
558 	{0xeb,0x04,0x25,0x18},
559 	{0xeb,0x04,0x25,0x18}
560     },
561     {
562 	{0x00,0xf4,0x10,0x38},
563 	{0x00,0xf4,0x10,0x38},
564 	{0xeb,0x04,0x10,0x18},
565 	{0xf7,0x06,0x19,0x14},
566 	{0x00,0xf4,0x10,0x38},
567 	{0xeb,0x04,0x25,0x18},
568 	{0xeb,0x04,0x25,0x18},
569 	{0xeb,0x15,0x25,0xf6},
570 	{0xeb,0x04,0x25,0x18},
571 	{0xeb,0x04,0x25,0x18},
572 	{0xeb,0x04,0x25,0x18},
573 	{0xeb,0x04,0x25,0x18},
574 	{0xeb,0x04,0x25,0x18},
575 	{0xeb,0x04,0x25,0x18},
576 	{0xeb,0x04,0x25,0x18},
577 	{0xeb,0x04,0x25,0x18}
578     },
579 };
580 
581 static const unsigned char SiS300_Filter2[10][9][7] =
582 {
583     {
584 	{0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46},
585 	{0x01,0x02,0xFE,0xF7,0x03,0x27,0x3C},
586 	{0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46},
587 	{0x01,0x02,0xFE,0xF7,0x03,0x27,0x3C},
588 	{0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46},
589 	{0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46},
590 	{0x01,0x02,0xFE,0xF7,0x03,0x27,0x3C},
591 	{0x01,0x01,0xFC,0xF8,0x08,0x26,0x38},
592 	{0xFF,0xFF,0xFC,0x00,0x0F,0x22,0x28}
593     },
594     {
595 	{0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46},
596 	{0x01,0x02,0xFE,0xF7,0x03,0x27,0x3C},
597 	{0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46},
598 	{0x01,0x02,0xFE,0xF7,0x03,0x27,0x3C},
599 	{0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46},
600 	{0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46},
601 	{0x01,0x02,0xFE,0xF7,0x03,0x27,0x3C},
602 	{0x01,0x01,0xFC,0xF8,0x08,0x26,0x38},
603 	{0xFF,0xFF,0xFC,0x00,0x0F,0x22,0x28}
604     },
605     {
606 	{0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46},
607 	{0x01,0x02,0xFE,0xF7,0x03,0x27,0x3C},
608 	{0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46},
609 	{0x01,0x02,0xFE,0xF7,0x03,0x27,0x3C},
610 	{0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46},
611 	{0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46},
612 	{0x01,0x02,0xFE,0xF7,0x03,0x27,0x3C},
613 	{0x01,0x01,0xFC,0xF8,0x08,0x26,0x38},
614 	{0xFF,0xFF,0xFC,0x00,0x0F,0x22,0x28}
615     },
616     {
617 	{0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46},
618 	{0x01,0x02,0xFE,0xF7,0x03,0x27,0x3C},
619 	{0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46},
620 	{0x01,0x02,0xFE,0xF7,0x03,0x27,0x3C},
621 	{0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46},
622 	{0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46},
623 	{0x01,0x02,0xFE,0xF7,0x03,0x27,0x3C},
624 	{0x01,0x01,0xFC,0xF8,0x08,0x26,0x38},
625 	{0xFF,0xFF,0xFC,0x00,0x0F,0x22,0x28}
626     },
627     {
628 	{0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46},
629 	{0x01,0x02,0xFE,0xF7,0x03,0x27,0x3C},
630 	{0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46},
631 	{0x01,0x02,0xFE,0xF7,0x03,0x27,0x3C},
632 	{0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46},
633 	{0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46},
634 	{0x01,0x02,0xFE,0xF7,0x03,0x27,0x3C},
635 	{0x01,0x01,0xFC,0xF8,0x08,0x26,0x38},
636 	{0xFF,0xFF,0xFC,0x00,0x0F,0x22,0x28}
637     },
638     {
639 	{0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46},
640 	{0x01,0x02,0xFE,0xF7,0x03,0x27,0x3C},
641 	{0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46},
642 	{0x01,0x02,0xFE,0xF7,0x03,0x27,0x3C},
643 	{0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46},
644 	{0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46},
645 	{0x01,0x02,0xFE,0xF7,0x03,0x27,0x3C},
646 	{0x01,0x01,0xFC,0xF8,0x08,0x26,0x38},
647 	{0xFF,0xFF,0xFC,0x00,0x0F,0x22,0x28}
648     },
649     {
650 	{0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46},
651 	{0x01,0x02,0xFE,0xF7,0x03,0x27,0x3C},
652 	{0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46},
653 	{0x01,0x02,0xFE,0xF7,0x03,0x27,0x3C},
654 	{0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46},
655 	{0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46},
656 	{0x01,0x02,0xFE,0xF7,0x03,0x27,0x3C},
657 	{0x01,0x01,0xFC,0xF8,0x08,0x26,0x38},
658 	{0xFF,0xFF,0xFC,0x00,0x0F,0x22,0x28}
659     },
660     {
661 	{0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46},
662 	{0x01,0x02,0xFE,0xF7,0x03,0x27,0x3C},
663 	{0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46},
664 	{0x01,0x02,0xFE,0xF7,0x03,0x27,0x3C},
665 	{0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46},
666 	{0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46},
667 	{0x01,0x02,0xFE,0xF7,0x03,0x27,0x3C},
668 	{0x01,0x01,0xFC,0xF8,0x08,0x26,0x38},
669 	{0xFF,0xFF,0xFC,0x00,0x0F,0x22,0x28}
670     },
671     {
672 	{0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46},
673 	{0x01,0x02,0xFE,0xF7,0x03,0x27,0x3C},
674 	{0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46},
675 	{0x01,0x02,0xFE,0xF7,0x03,0x27,0x3C},
676 	{0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46},
677 	{0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46},
678 	{0x01,0x02,0xFE,0xF7,0x03,0x27,0x3C},
679 	{0x01,0x01,0xFC,0xF8,0x08,0x26,0x38},
680 	{0xFF,0xFF,0xFC,0x00,0x0F,0x22,0x28}
681     },
682     {
683 	{0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46},
684 	{0x01,0x02,0xFE,0xF7,0x03,0x27,0x3C},
685 	{0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46},
686 	{0x01,0x02,0xFE,0xF7,0x03,0x27,0x3C},
687 	{0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46},
688 	{0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46},
689 	{0x01,0x02,0xFE,0xF7,0x03,0x27,0x3C},
690 	{0x01,0x01,0xFC,0xF8,0x08,0x26,0x38},
691 	{0xFF,0xFF,0xFC,0x00,0x0F,0x22,0x28}
692     }
693 };
694 
695 /* Custom data for Barco iQ Pro R300 */
696 static const unsigned char barco_p1[2][9][7][3] =
697 {
698   {
699      {
700 	{ 0x16, 0xcf, 0x00 },
701 	{ 0x18, 0x00, 0x00 },
702 	{ 0x1a, 0xe7, 0x00 },
703 	{ 0x1b, 0x26, 0x00 },
704 	{ 0x1c, 0xff, 0x00 },
705 	{ 0x1d, 0x1c, 0x00 },
706 	{ 0x1e, 0x19, 0x00 }
707      },
708      {
709 	{ 0x16, 0xcf, 0x00 },
710 	{ 0x18, 0x00, 0x00 },
711 	{ 0x1a, 0xe7, 0x00 },
712 	{ 0x1b, 0x1e, 0x00 },
713 	{ 0x1c, 0xff, 0x00 },
714 	{ 0x1d, 0x1c, 0x00 },
715 	{ 0x1e, 0x16, 0x00 }
716      },
717      {
718 	{ 0x16, 0xcf, 0x00 },
719 	{ 0x1a, 0xe7, 0x00 },
720 	{ 0x1b, 0x26, 0x00 },
721 	{ 0x1c, 0xff, 0x00 },
722 	{ 0x1d, 0x1c, 0x00 },
723 	{ 0x1e, 0x19, 0x00 },
724 	{    0,    0,    0 }
725      },
726      {
727 	{    0,    0,    0 }
728      },
729      {
730 	{ 0x16, 0xcf, 0x00 },
731 	{ 0x1a, 0xe7, 0x00 },
732 	{ 0x1b, 0x26, 0x00 },
733 	{ 0x1c, 0xff, 0x00 },
734 	{ 0x1d, 0x1c, 0x00 },
735 	{ 0x1e, 0x1e, 0x00 },
736 	{    0,    0,    0 }
737      },
738      {
739 	{ 0x16, 0xd1, 0x00 },
740 	{ 0x18, 0x00, 0x00 },
741 	{ 0x1a, 0xe7, 0x00 },
742 	{ 0x1b, 0x11, 0x00 },
743 	{ 0x1c, 0xff, 0x00 },
744 	{ 0x1d, 0x1c, 0x00 },
745 	{ 0x1e, 0x26, 0x00 }
746      },
747      {
748 	{ 0x16, 0xd1, 0x00 },
749 	{ 0x1a, 0xe7, 0x00 },
750 	{ 0x1b, 0x26, 0x00 },
751 	{ 0x1c, 0xff, 0x00 },
752 	{ 0x1d, 0x1c, 0x00 },
753 	{ 0x1e, 0x30, 0x00 },
754 	{    0,    0,    0 }
755      },
756      {
757 	{ 0x16, 0x00, 0x00 },
758 	{ 0x17, 0xa0, 0x00 },
759 	{ 0x1a, 0xa0, 0x00 },
760 	{ 0x1b, 0x2a, 0x00 },
761 	{ 0x1c, 0xff, 0x00 },
762 	{ 0x1d, 0x1c, 0x00 },
763 	{    0,    0,    0 }
764      },
765      {
766 	{ 0x16, 0x00, 0x00 },
767 	{ 0x17, 0xaa, 0x00 },
768 	{ 0x1a, 0xa0, 0x00 },
769 	{ 0x1b, 0x2a, 0x00 },
770 	{ 0x1c, 0xff, 0x00 },
771 	{ 0x1d, 0x1c, 0x00 },
772 	{    0,    0,    0 }
773      }
774   },
775   {
776      {
777 	{ 0x16, 0xcf, 0x00 },
778 	{ 0x18, 0x00, 0x00 },
779 	{ 0x1a, 0xe7, 0x00 },
780 	{ 0x1b, 0x26, 0x00 },
781 	{ 0x1c, 0xff, 0x00 },
782 	{ 0x1d, 0x1c, 0x00 },
783 	{ 0x1e, 0x19, 0x00 }
784      },
785      {
786 	{    0,    0,    0 }
787      },
788      {
789 	{ 0x16, 0xcf, 0x00 },
790 	{ 0x18, 0x00, 0x00 },
791 	{ 0x1a, 0xe7, 0x00 },
792 	{ 0x1b, 0x26, 0x00 },
793 	{ 0x1c, 0xff, 0x00 },
794 	{ 0x1d, 0x1c, 0x00 },
795 	{ 0x1e, 0x19, 0x00 },
796      },
797      {
798 	{    0,    0,    0 }
799      },
800      {
801 	{ 0x16, 0xcf, 0x00 },
802 	{ 0x18, 0x00, 0x00 },
803 	{ 0x1a, 0xe7, 0x00 },
804 	{ 0x1b, 0x26, 0x00 },
805 	{ 0x1c, 0xff, 0x00 },
806 	{ 0x1d, 0x1c, 0x00 },
807 	{ 0x1e, 0x1e, 0x00 }
808      },
809      {
810 	{ 0x16, 0xd1, 0x00 },
811 	{ 0x18, 0x00, 0x00 },
812 	{ 0x1a, 0xe6, 0x00 },
813 	{ 0x1b, 0x11, 0x00 },
814 	{ 0x1c, 0xff, 0x00 },
815 	{ 0x1d, 0x1c, 0x00 },
816 	{ 0x1e, 0x26, 0x00 }
817      },
818      {
819 	{ 0x18, 0x00, 0x00 },
820 	{ 0x1a, 0xe0, 0x00 },
821 	{ 0x1b, 0x26, 0x00 },
822 	{ 0x1c, 0xff, 0x00 },
823 	{ 0x1d, 0x1c, 0x00 },
824 	{ 0x1e, 0x30, 0x00 },
825 	{    0,    0,    0 }
826      },
827      {
828 	{    0,    0,    0 }
829      },
830      {
831 	{    0,    0,    0 }
832      }
833   }
834 };
835 
836 
837 
838 
839 
840 
841