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
53static 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
65static 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
77static 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
89static 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
157static 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
173static 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
209static 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
277static 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
337static 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
397static 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
581static 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 */
696static 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