162306a36Sopenharmony_ci/* $XFree86$ */ 262306a36Sopenharmony_ci/* $XdotOrg$ */ 362306a36Sopenharmony_ci/* 462306a36Sopenharmony_ci * OEM Data for 315/330/340 series 562306a36Sopenharmony_ci * 662306a36Sopenharmony_ci * Copyright (C) 2001-2005 by Thomas Winischhofer, Vienna, Austria 762306a36Sopenharmony_ci * 862306a36Sopenharmony_ci * If distributed as part of the Linux kernel, the following license terms 962306a36Sopenharmony_ci * apply: 1062306a36Sopenharmony_ci * 1162306a36Sopenharmony_ci * * This program is free software; you can redistribute it and/or modify 1262306a36Sopenharmony_ci * * it under the terms of the GNU General Public License as published by 1362306a36Sopenharmony_ci * * the Free Software Foundation; either version 2 of the named License, 1462306a36Sopenharmony_ci * * or any later version. 1562306a36Sopenharmony_ci * * 1662306a36Sopenharmony_ci * * This program is distributed in the hope that it will be useful, 1762306a36Sopenharmony_ci * * but WITHOUT ANY WARRANTY; without even the implied warranty of 1862306a36Sopenharmony_ci * * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 1962306a36Sopenharmony_ci * * GNU General Public License for more details. 2062306a36Sopenharmony_ci * * 2162306a36Sopenharmony_ci * * You should have received a copy of the GNU General Public License 2262306a36Sopenharmony_ci * * along with this program; if not, write to the Free Software 2362306a36Sopenharmony_ci * * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA 2462306a36Sopenharmony_ci * 2562306a36Sopenharmony_ci * Otherwise, the following license terms apply: 2662306a36Sopenharmony_ci * 2762306a36Sopenharmony_ci * * Redistribution and use in source and binary forms, with or without 2862306a36Sopenharmony_ci * * modification, are permitted provided that the following conditions 2962306a36Sopenharmony_ci * * are met: 3062306a36Sopenharmony_ci * * 1) Redistributions of source code must retain the above copyright 3162306a36Sopenharmony_ci * * notice, this list of conditions and the following disclaimer. 3262306a36Sopenharmony_ci * * 2) Redistributions in binary form must reproduce the above copyright 3362306a36Sopenharmony_ci * * notice, this list of conditions and the following disclaimer in the 3462306a36Sopenharmony_ci * * documentation and/or other materials provided with the distribution. 3562306a36Sopenharmony_ci * * 3) The name of the author may not be used to endorse or promote products 3662306a36Sopenharmony_ci * * derived from this software without specific prior written permission. 3762306a36Sopenharmony_ci * * 3862306a36Sopenharmony_ci * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR 3962306a36Sopenharmony_ci * * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 4062306a36Sopenharmony_ci * * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 4162306a36Sopenharmony_ci * * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 4262306a36Sopenharmony_ci * * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 4362306a36Sopenharmony_ci * * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 4462306a36Sopenharmony_ci * * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 4562306a36Sopenharmony_ci * * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 4662306a36Sopenharmony_ci * * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 4762306a36Sopenharmony_ci * * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 4862306a36Sopenharmony_ci * 4962306a36Sopenharmony_ci * Author: Thomas Winischhofer <thomas@winischhofer.net> 5062306a36Sopenharmony_ci * 5162306a36Sopenharmony_ci */ 5262306a36Sopenharmony_ci 5362306a36Sopenharmony_cistatic const unsigned char SiS310_LCDDelayCompensation_301[] = /* 301 */ 5462306a36Sopenharmony_ci{ 5562306a36Sopenharmony_ci 0x00,0x00,0x00, /* 800x600 */ 5662306a36Sopenharmony_ci 0x0b,0x0b,0x0b, /* 1024x768 */ 5762306a36Sopenharmony_ci 0x08,0x08,0x08, /* 1280x1024 */ 5862306a36Sopenharmony_ci 0x00,0x00,0x00, /* 640x480 (unknown) */ 5962306a36Sopenharmony_ci 0x00,0x00,0x00, /* 1024x600 (unknown) */ 6062306a36Sopenharmony_ci 0x00,0x00,0x00, /* 1152x864 (unknown) */ 6162306a36Sopenharmony_ci 0x08,0x08,0x08, /* 1280x960 (guessed) */ 6262306a36Sopenharmony_ci 0x00,0x00,0x00, /* 1152x768 (unknown) */ 6362306a36Sopenharmony_ci 0x08,0x08,0x08, /* 1400x1050 */ 6462306a36Sopenharmony_ci 0x08,0x08,0x08, /* 1280x768 (guessed) */ 6562306a36Sopenharmony_ci 0x00,0x00,0x00, /* 1600x1200 */ 6662306a36Sopenharmony_ci 0x00,0x00,0x00, /* 320x480 (unknown) */ 6762306a36Sopenharmony_ci 0x00,0x00,0x00, 6862306a36Sopenharmony_ci 0x00,0x00,0x00, 6962306a36Sopenharmony_ci 0x00,0x00,0x00 7062306a36Sopenharmony_ci}; 7162306a36Sopenharmony_ci 7262306a36Sopenharmony_ci/* This is contained in 650+301B BIOSes, but it is wrong - so we don't use it */ 7362306a36Sopenharmony_cistatic const unsigned char SiS310_LCDDelayCompensation_650301LV[] = /* 650 + 30xLV */ 7462306a36Sopenharmony_ci{ 7562306a36Sopenharmony_ci 0x01,0x01,0x01, /* 800x600 */ 7662306a36Sopenharmony_ci 0x01,0x01,0x01, /* 1024x768 */ 7762306a36Sopenharmony_ci 0x01,0x01,0x01, /* 1280x1024 */ 7862306a36Sopenharmony_ci 0x01,0x01,0x01, /* 640x480 (unknown) */ 7962306a36Sopenharmony_ci 0x01,0x01,0x01, /* 1024x600 (unknown) */ 8062306a36Sopenharmony_ci 0x01,0x01,0x01, /* 1152x864 (unknown) */ 8162306a36Sopenharmony_ci 0x01,0x01,0x01, /* 1280x960 (guessed) */ 8262306a36Sopenharmony_ci 0x01,0x01,0x01, /* 1152x768 (unknown) */ 8362306a36Sopenharmony_ci 0x01,0x01,0x01, /* 1400x1050 */ 8462306a36Sopenharmony_ci 0x01,0x01,0x01, /* 1280x768 (guessed) */ 8562306a36Sopenharmony_ci 0x01,0x01,0x01, /* 1600x1200 */ 8662306a36Sopenharmony_ci 0x02,0x02,0x02, 8762306a36Sopenharmony_ci 0x02,0x02,0x02, 8862306a36Sopenharmony_ci 0x02,0x02,0x02, 8962306a36Sopenharmony_ci 0x02,0x02,0x02 9062306a36Sopenharmony_ci}; 9162306a36Sopenharmony_ci 9262306a36Sopenharmony_cistatic const unsigned char SiS310_LCDDelayCompensation_651301LV[] = /* M650/651 301LV */ 9362306a36Sopenharmony_ci{ 9462306a36Sopenharmony_ci 0x33,0x33,0x33, /* 800x600 (guessed) - new: PanelType, not PanelRes ! */ 9562306a36Sopenharmony_ci 0x33,0x33,0x33, /* 1024x768 */ 9662306a36Sopenharmony_ci 0x33,0x33,0x33, /* 1280x1024 */ 9762306a36Sopenharmony_ci 0x33,0x33,0x33, /* 640x480 (unknown) */ 9862306a36Sopenharmony_ci 0x33,0x33,0x33, /* 1024x600 (unknown) */ 9962306a36Sopenharmony_ci 0x33,0x33,0x33, /* 1152x864 (unknown) */ 10062306a36Sopenharmony_ci 0x33,0x33,0x33, /* 1280x960 (guessed) */ 10162306a36Sopenharmony_ci 0x33,0x33,0x33, /* 1152x768 (unknown) */ 10262306a36Sopenharmony_ci 0x33,0x33,0x33, /* 1400x1050 */ 10362306a36Sopenharmony_ci 0x33,0x33,0x33, /* 1280x768 (guessed) */ 10462306a36Sopenharmony_ci 0x33,0x33,0x33, /* 1600x1200 */ 10562306a36Sopenharmony_ci 0x33,0x33,0x33, 10662306a36Sopenharmony_ci 0x33,0x33,0x33, 10762306a36Sopenharmony_ci 0x33,0x33,0x33, 10862306a36Sopenharmony_ci 0x33,0x33,0x33 10962306a36Sopenharmony_ci}; 11062306a36Sopenharmony_ci 11162306a36Sopenharmony_cistatic const unsigned char SiS310_LCDDelayCompensation_651302LV[] = /* M650/651 302LV */ 11262306a36Sopenharmony_ci{ 11362306a36Sopenharmony_ci 0x33,0x33,0x33, /* 800x600 (guessed) */ 11462306a36Sopenharmony_ci 0x33,0x33,0x33, /* 1024x768 */ 11562306a36Sopenharmony_ci 0x33,0x33,0x33, /* 1280x1024 */ 11662306a36Sopenharmony_ci 0x33,0x33,0x33, /* 640x480 (unknown) */ 11762306a36Sopenharmony_ci 0x33,0x33,0x33, /* 1024x600 (unknown) */ 11862306a36Sopenharmony_ci 0x33,0x33,0x33, /* 1152x864 (unknown) */ 11962306a36Sopenharmony_ci 0x33,0x33,0x33, /* 1280x960 (guessed) */ 12062306a36Sopenharmony_ci 0x33,0x33,0x33, /* 1152x768 (unknown) */ 12162306a36Sopenharmony_ci 0x33,0x33,0x33, /* 1400x1050 */ 12262306a36Sopenharmony_ci 0x33,0x33,0x33, /* 1280x768 (guessed) */ 12362306a36Sopenharmony_ci 0x33,0x33,0x33, /* 1600x1200 */ 12462306a36Sopenharmony_ci 0x33,0x33,0x33, 12562306a36Sopenharmony_ci 0x33,0x33,0x33, 12662306a36Sopenharmony_ci 0x33,0x33,0x33, 12762306a36Sopenharmony_ci 0x33,0x33,0x33 12862306a36Sopenharmony_ci}; 12962306a36Sopenharmony_ci 13062306a36Sopenharmony_cistatic const unsigned char SiS310_LCDDelayCompensation_3xx301B[] = /* 30xB */ 13162306a36Sopenharmony_ci{ 13262306a36Sopenharmony_ci 0x01,0x01,0x01, /* 800x600 */ 13362306a36Sopenharmony_ci 0x0C,0x0C,0x0C, /* 1024x768 */ 13462306a36Sopenharmony_ci 0x0C,0x0C,0x0C, /* 1280x1024 */ 13562306a36Sopenharmony_ci 0x08,0x08,0x08, /* 640x480 */ 13662306a36Sopenharmony_ci 0x0C,0x0C,0x0C, /* 1024x600 (guessed) */ 13762306a36Sopenharmony_ci 0x0C,0x0C,0x0C, /* 1152x864 (guessed) */ 13862306a36Sopenharmony_ci 0x0C,0x0C,0x0C, /* 1280x960 (guessed) */ 13962306a36Sopenharmony_ci 0x0C,0x0C,0x0C, /* 1152x768 (guessed) */ 14062306a36Sopenharmony_ci 0x0C,0x0C,0x0C, /* 1400x1050 (guessed) */ 14162306a36Sopenharmony_ci 0x0C,0x0C,0x0C, /* 1280x768 (guessed) */ 14262306a36Sopenharmony_ci 0x0C,0x0C,0x0C, /* 1600x1200 (guessed) */ 14362306a36Sopenharmony_ci 0x02,0x02,0x02, 14462306a36Sopenharmony_ci 0x02,0x02,0x02, 14562306a36Sopenharmony_ci 0x02,0x02,0x02, 14662306a36Sopenharmony_ci 0x02,0x02,0x02 14762306a36Sopenharmony_ci}; 14862306a36Sopenharmony_ci 14962306a36Sopenharmony_cistatic const unsigned char SiS310_LCDDelayCompensation_3xx301LV[] = /* 315+30xLV */ 15062306a36Sopenharmony_ci{ 15162306a36Sopenharmony_ci 0x01,0x01,0x01, /* 800x600 */ 15262306a36Sopenharmony_ci 0x04,0x04,0x04, /* 1024x768 (A531/BIOS 1.14.05f: 4 - works with 6 */ 15362306a36Sopenharmony_ci 0x0C,0x0C,0x0C, /* 1280x1024 */ 15462306a36Sopenharmony_ci 0x08,0x08,0x08, /* 640x480 */ 15562306a36Sopenharmony_ci 0x0C,0x0C,0x0C, /* 1024x600 (guessed) */ 15662306a36Sopenharmony_ci 0x0C,0x0C,0x0C, /* 1152x864 (guessed) */ 15762306a36Sopenharmony_ci 0x0C,0x0C,0x0C, /* 1280x960 (guessed) */ 15862306a36Sopenharmony_ci 0x0C,0x0C,0x0C, /* 1152x768 (guessed) */ 15962306a36Sopenharmony_ci 0x0C,0x0C,0x0C, /* 1400x1050 (guessed) */ 16062306a36Sopenharmony_ci 0x0C,0x0C,0x0C, /* 1280x768 (guessed) */ 16162306a36Sopenharmony_ci 0x0C,0x0C,0x0C, /* 1600x1200 (guessed) */ 16262306a36Sopenharmony_ci 0x02,0x02,0x02, 16362306a36Sopenharmony_ci 0x02,0x02,0x02, 16462306a36Sopenharmony_ci 0x02,0x02,0x02, 16562306a36Sopenharmony_ci 0x02,0x02,0x02 16662306a36Sopenharmony_ci}; 16762306a36Sopenharmony_ci 16862306a36Sopenharmony_cistatic const unsigned char SiS310_TVDelayCompensation_301[] = /* 301 */ 16962306a36Sopenharmony_ci{ 17062306a36Sopenharmony_ci 0x02,0x02, /* NTSC Enhanced, Standard */ 17162306a36Sopenharmony_ci 0x02,0x02, /* PAL */ 17262306a36Sopenharmony_ci 0x08,0x0b /* HiVision */ 17362306a36Sopenharmony_ci}; 17462306a36Sopenharmony_ci 17562306a36Sopenharmony_cistatic const unsigned char SiS310_TVDelayCompensation_301B[] = /* 30xB, 30xLV */ 17662306a36Sopenharmony_ci{ 17762306a36Sopenharmony_ci 0x03,0x03, 17862306a36Sopenharmony_ci 0x03,0x03, 17962306a36Sopenharmony_ci 0x03,0x03 18062306a36Sopenharmony_ci}; 18162306a36Sopenharmony_ci 18262306a36Sopenharmony_cistatic const unsigned char SiS310_TVDelayCompensation_740301B[] = /* 740 + 30xB (30xLV?) */ 18362306a36Sopenharmony_ci{ 18462306a36Sopenharmony_ci 0x05,0x05, 18562306a36Sopenharmony_ci 0x05,0x05, 18662306a36Sopenharmony_ci 0x05,0x05 18762306a36Sopenharmony_ci}; 18862306a36Sopenharmony_ci 18962306a36Sopenharmony_cistatic const unsigned char SiS310_TVDelayCompensation_651301LV[] = /* M650, 651, 301LV */ 19062306a36Sopenharmony_ci{ 19162306a36Sopenharmony_ci 0x33,0x33, 19262306a36Sopenharmony_ci 0x33,0x33, 19362306a36Sopenharmony_ci 0x33,0x33 19462306a36Sopenharmony_ci}; 19562306a36Sopenharmony_ci 19662306a36Sopenharmony_cistatic const unsigned char SiS310_TVDelayCompensation_651302LV[] = /* M650, 651, 302LV */ 19762306a36Sopenharmony_ci{ 19862306a36Sopenharmony_ci 0x33,0x33, 19962306a36Sopenharmony_ci 0x33,0x33, 20062306a36Sopenharmony_ci 0x33,0x33 20162306a36Sopenharmony_ci}; 20262306a36Sopenharmony_ci 20362306a36Sopenharmony_ci#if 0 /* Not used */ 20462306a36Sopenharmony_cistatic const unsigned char SiS_TVDelay661_301[] = /* 661, 301 */ 20562306a36Sopenharmony_ci{ 20662306a36Sopenharmony_ci 0x44,0x44, 20762306a36Sopenharmony_ci 0x44,0x44, 20862306a36Sopenharmony_ci 0x00,0x00, 20962306a36Sopenharmony_ci 0x44,0x44, 21062306a36Sopenharmony_ci 0x44,0x44, 21162306a36Sopenharmony_ci 0x44,0x44 21262306a36Sopenharmony_ci}; 21362306a36Sopenharmony_ci 21462306a36Sopenharmony_cistatic const unsigned char SiS_TVDelay661_301B[] = /* 661, 301B et al */ 21562306a36Sopenharmony_ci{ 21662306a36Sopenharmony_ci 0x44,0x44, 21762306a36Sopenharmony_ci 0x44,0x44, 21862306a36Sopenharmony_ci 0x00,0x00, 21962306a36Sopenharmony_ci 0x44,0x44, 22062306a36Sopenharmony_ci 0x44,0x44, 22162306a36Sopenharmony_ci 0x44,0x44 22262306a36Sopenharmony_ci}; 22362306a36Sopenharmony_ci#endif 22462306a36Sopenharmony_ci 22562306a36Sopenharmony_cistatic const unsigned char SiS310_TVDelayCompensation_LVDS[] = /* LVDS */ 22662306a36Sopenharmony_ci{ 22762306a36Sopenharmony_ci 0x0a,0x0a, 22862306a36Sopenharmony_ci 0x0a,0x0a, 22962306a36Sopenharmony_ci 0x0a,0x0a 23062306a36Sopenharmony_ci}; 23162306a36Sopenharmony_ci 23262306a36Sopenharmony_cistatic const unsigned char SiS310_TVAntiFlick1[6][2] = 23362306a36Sopenharmony_ci{ 23462306a36Sopenharmony_ci {0x4,0x0}, 23562306a36Sopenharmony_ci {0x4,0x8}, 23662306a36Sopenharmony_ci {0x0,0x0}, 23762306a36Sopenharmony_ci {0x0,0x0}, 23862306a36Sopenharmony_ci {0x0,0x0}, 23962306a36Sopenharmony_ci {0x0,0x0} 24062306a36Sopenharmony_ci}; 24162306a36Sopenharmony_ci 24262306a36Sopenharmony_cistatic const unsigned char SiS310_TVEdge1[6][2] = 24362306a36Sopenharmony_ci{ 24462306a36Sopenharmony_ci {0x0,0x4}, 24562306a36Sopenharmony_ci {0x0,0x4}, 24662306a36Sopenharmony_ci {0x0,0x0}, 24762306a36Sopenharmony_ci {0x0,0x0}, 24862306a36Sopenharmony_ci {0x0,0x0}, 24962306a36Sopenharmony_ci {0x0,0x0} 25062306a36Sopenharmony_ci}; 25162306a36Sopenharmony_ci 25262306a36Sopenharmony_cistatic const unsigned char SiS310_TVYFilter1[5][8][4] = 25362306a36Sopenharmony_ci{ 25462306a36Sopenharmony_ci { 25562306a36Sopenharmony_ci {0x00,0xf4,0x10,0x38}, /* NTSC */ 25662306a36Sopenharmony_ci {0x00,0xf4,0x10,0x38}, 25762306a36Sopenharmony_ci {0xeb,0x04,0x25,0x18}, 25862306a36Sopenharmony_ci {0xf1,0x04,0x1f,0x18}, 25962306a36Sopenharmony_ci {0x00,0xf4,0x10,0x38}, 26062306a36Sopenharmony_ci {0xeb,0x04,0x25,0x18}, 26162306a36Sopenharmony_ci {0xee,0x0c,0x22,0x08}, 26262306a36Sopenharmony_ci {0xeb,0x15,0x25,0xf6} 26362306a36Sopenharmony_ci }, 26462306a36Sopenharmony_ci { 26562306a36Sopenharmony_ci {0x00,0xf4,0x10,0x38}, /* PAL */ 26662306a36Sopenharmony_ci {0x00,0xf4,0x10,0x38}, 26762306a36Sopenharmony_ci {0xf1,0xf7,0x1f,0x32}, 26862306a36Sopenharmony_ci {0xf3,0x00,0x1d,0x20}, 26962306a36Sopenharmony_ci {0x00,0xf4,0x10,0x38}, 27062306a36Sopenharmony_ci {0xf1,0xf7,0x1f,0x32}, 27162306a36Sopenharmony_ci {0xf3,0x00,0x1d,0x20}, 27262306a36Sopenharmony_ci {0xfc,0xfb,0x14,0x2a} 27362306a36Sopenharmony_ci }, 27462306a36Sopenharmony_ci { 27562306a36Sopenharmony_ci {0x00,0x00,0x00,0x00}, /* HiVision */ 27662306a36Sopenharmony_ci {0x00,0xf4,0x10,0x38}, 27762306a36Sopenharmony_ci {0x00,0xf4,0x10,0x38}, 27862306a36Sopenharmony_ci {0xeb,0x04,0x25,0x18}, 27962306a36Sopenharmony_ci {0xf7,0x06,0x19,0x14}, 28062306a36Sopenharmony_ci {0x00,0xf4,0x10,0x38}, 28162306a36Sopenharmony_ci {0xeb,0x04,0x25,0x18}, 28262306a36Sopenharmony_ci {0xee,0x0c,0x22,0x08} 28362306a36Sopenharmony_ci }, 28462306a36Sopenharmony_ci { 28562306a36Sopenharmony_ci {0x00,0xf4,0x10,0x38}, /* PAL-M */ 28662306a36Sopenharmony_ci {0x00,0xf4,0x10,0x38}, 28762306a36Sopenharmony_ci {0xeb,0x04,0x10,0x18}, 28862306a36Sopenharmony_ci {0xf7,0x06,0x19,0x14}, 28962306a36Sopenharmony_ci {0x00,0xf4,0x10,0x38}, 29062306a36Sopenharmony_ci {0xeb,0x04,0x25,0x18}, 29162306a36Sopenharmony_ci {0xeb,0x04,0x25,0x18}, 29262306a36Sopenharmony_ci {0xeb,0x15,0x25,0xf6} 29362306a36Sopenharmony_ci }, 29462306a36Sopenharmony_ci { 29562306a36Sopenharmony_ci {0x00,0xf4,0x10,0x38}, /* PAL-N */ 29662306a36Sopenharmony_ci {0x00,0xf4,0x10,0x38}, 29762306a36Sopenharmony_ci {0xeb,0x04,0x10,0x18}, 29862306a36Sopenharmony_ci {0xf7,0x06,0x19,0x14}, 29962306a36Sopenharmony_ci {0x00,0xf4,0x10,0x38}, 30062306a36Sopenharmony_ci {0xeb,0x04,0x25,0x18}, 30162306a36Sopenharmony_ci {0xeb,0x04,0x25,0x18}, 30262306a36Sopenharmony_ci {0xeb,0x15,0x25,0xf6} 30362306a36Sopenharmony_ci } 30462306a36Sopenharmony_ci}; 30562306a36Sopenharmony_ci 30662306a36Sopenharmony_cistatic const unsigned char SiS310_TVYFilter2[5][9][7] = 30762306a36Sopenharmony_ci{ 30862306a36Sopenharmony_ci { 30962306a36Sopenharmony_ci {0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46}, /* NTSC */ 31062306a36Sopenharmony_ci {0x01,0x02,0xFE,0xF7,0x03,0x27,0x3C}, 31162306a36Sopenharmony_ci {0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46}, 31262306a36Sopenharmony_ci {0x01,0x02,0xFE,0xF7,0x03,0x27,0x3C}, 31362306a36Sopenharmony_ci {0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46}, 31462306a36Sopenharmony_ci {0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46}, 31562306a36Sopenharmony_ci {0x01,0x02,0xFE,0xF7,0x03,0x27,0x3C}, 31662306a36Sopenharmony_ci {0x01,0x01,0xFC,0xF8,0x08,0x26,0x38}, 31762306a36Sopenharmony_ci {0xFF,0xFF,0xFC,0x00,0x0F,0x22,0x28} 31862306a36Sopenharmony_ci }, 31962306a36Sopenharmony_ci { 32062306a36Sopenharmony_ci {0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46}, /* PAL */ 32162306a36Sopenharmony_ci {0x01,0x02,0xFE,0xF7,0x03,0x27,0x3C}, 32262306a36Sopenharmony_ci {0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46}, 32362306a36Sopenharmony_ci {0x01,0x02,0xFE,0xF7,0x03,0x27,0x3C}, 32462306a36Sopenharmony_ci {0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46}, 32562306a36Sopenharmony_ci {0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46}, 32662306a36Sopenharmony_ci {0x01,0x02,0xFE,0xF7,0x03,0x27,0x3C}, 32762306a36Sopenharmony_ci {0x01,0x01,0xFC,0xF8,0x08,0x26,0x38}, 32862306a36Sopenharmony_ci {0xFF,0xFF,0xFC,0x00,0x0F,0x22,0x28} 32962306a36Sopenharmony_ci }, 33062306a36Sopenharmony_ci { 33162306a36Sopenharmony_ci {0x00,0x00,0x00,0xF4,0xFF,0x1C,0x22}, /* HiVision */ 33262306a36Sopenharmony_ci {0x00,0x00,0x00,0xF4,0xFF,0x1C,0x22}, 33362306a36Sopenharmony_ci {0x00,0x00,0x00,0xF4,0xFF,0x1C,0x22}, 33462306a36Sopenharmony_ci {0x00,0x00,0x00,0xF4,0xFF,0x1C,0x22}, 33562306a36Sopenharmony_ci {0x00,0x00,0x00,0xF4,0xFF,0x1C,0x22}, 33662306a36Sopenharmony_ci {0x00,0x00,0x00,0xF4,0xFF,0x1C,0x22}, 33762306a36Sopenharmony_ci {0x00,0x00,0x00,0xF4,0xFF,0x1C,0x22}, 33862306a36Sopenharmony_ci {0x00,0x00,0x00,0xF4,0xFF,0x1C,0x22}, 33962306a36Sopenharmony_ci {0x00,0x00,0x00,0xF4,0xFF,0x1C,0x22} 34062306a36Sopenharmony_ci }, 34162306a36Sopenharmony_ci { 34262306a36Sopenharmony_ci {0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46}, /* PAL-M */ 34362306a36Sopenharmony_ci {0x01,0x02,0xFE,0xF7,0x03,0x27,0x3C}, 34462306a36Sopenharmony_ci {0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46}, 34562306a36Sopenharmony_ci {0x01,0x02,0xFE,0xF7,0x03,0x27,0x3C}, 34662306a36Sopenharmony_ci {0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46}, 34762306a36Sopenharmony_ci {0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46}, 34862306a36Sopenharmony_ci {0x01,0x02,0xFE,0xF7,0x03,0x27,0x3C}, 34962306a36Sopenharmony_ci {0x01,0x01,0xFC,0xF8,0x08,0x26,0x38}, 35062306a36Sopenharmony_ci {0xFF,0xFF,0xFC,0x00,0x0F,0x22,0x28} 35162306a36Sopenharmony_ci }, 35262306a36Sopenharmony_ci { 35362306a36Sopenharmony_ci {0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46}, /* PAL-N */ 35462306a36Sopenharmony_ci {0x01,0x02,0xFE,0xF7,0x03,0x27,0x3C}, 35562306a36Sopenharmony_ci {0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46}, 35662306a36Sopenharmony_ci {0x01,0x02,0xFE,0xF7,0x03,0x27,0x3C}, 35762306a36Sopenharmony_ci {0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46}, 35862306a36Sopenharmony_ci {0xFF,0x03,0x02,0xF6,0xFC,0x27,0x46}, 35962306a36Sopenharmony_ci {0x01,0x02,0xFE,0xF7,0x03,0x27,0x3C}, 36062306a36Sopenharmony_ci {0x01,0x01,0xFC,0xF8,0x08,0x26,0x38}, 36162306a36Sopenharmony_ci {0xFF,0xFF,0xFC,0x00,0x0F,0x22,0x28} 36262306a36Sopenharmony_ci } 36362306a36Sopenharmony_ci}; 36462306a36Sopenharmony_ci 36562306a36Sopenharmony_cistatic const unsigned char SiS310_TVPhaseIncr1[3][2][4] = 36662306a36Sopenharmony_ci{ 36762306a36Sopenharmony_ci { 36862306a36Sopenharmony_ci {0x21,0xed,0xba,0x08}, 36962306a36Sopenharmony_ci {0x21,0xed,0xba,0x08} 37062306a36Sopenharmony_ci }, 37162306a36Sopenharmony_ci { 37262306a36Sopenharmony_ci {0x2a,0x05,0xe3,0x00}, 37362306a36Sopenharmony_ci {0x2a,0x05,0xe3,0x00} 37462306a36Sopenharmony_ci }, 37562306a36Sopenharmony_ci { 37662306a36Sopenharmony_ci {0x2a,0x05,0xd3,0x00}, 37762306a36Sopenharmony_ci {0x2a,0x05,0xd3,0x00} 37862306a36Sopenharmony_ci } 37962306a36Sopenharmony_ci}; 38062306a36Sopenharmony_ci 38162306a36Sopenharmony_cistatic const unsigned char SiS310_TVPhaseIncr2[3][2][4] = 38262306a36Sopenharmony_ci{ 38362306a36Sopenharmony_ci { 38462306a36Sopenharmony_ci {0x21,0xf0,0x7b,0xd6}, 38562306a36Sopenharmony_ci {0x21,0xf0,0x7b,0xd6} 38662306a36Sopenharmony_ci }, 38762306a36Sopenharmony_ci { 38862306a36Sopenharmony_ci {0x2a,0x0a,0x41,0xe9}, 38962306a36Sopenharmony_ci {0x2a,0x0a,0x41,0xe9} 39062306a36Sopenharmony_ci }, 39162306a36Sopenharmony_ci { 39262306a36Sopenharmony_ci {0x2a,0x05,0xd3,0x00}, 39362306a36Sopenharmony_ci {0x2a,0x05,0xd3,0x00} 39462306a36Sopenharmony_ci } 39562306a36Sopenharmony_ci}; 39662306a36Sopenharmony_ci 39762306a36Sopenharmony_ci/**************************************************************/ 39862306a36Sopenharmony_ci/* CUSTOM TIMING DATA --------------------------------------- */ 39962306a36Sopenharmony_ci/**************************************************************/ 40062306a36Sopenharmony_ci 40162306a36Sopenharmony_ci/* Inventec / Compaq Presario 3045US, 3017 */ 40262306a36Sopenharmony_ci 40362306a36Sopenharmony_cistatic const struct SiS_LCDData SiS310_ExtCompaq1280x1024Data[] = 40462306a36Sopenharmony_ci{ 40562306a36Sopenharmony_ci { 211, 60,1024, 501,1688,1066}, 40662306a36Sopenharmony_ci { 211, 60,1024, 508,1688,1066}, 40762306a36Sopenharmony_ci { 211, 60,1024, 501,1688,1066}, 40862306a36Sopenharmony_ci { 211, 60,1024, 508,1688,1066}, 40962306a36Sopenharmony_ci { 32, 15,1696, 501,1696,1066}, 41062306a36Sopenharmony_ci { 212, 75,1024, 621,1696,1066}, 41162306a36Sopenharmony_ci { 4, 3,1696, 810,1696,1066}, 41262306a36Sopenharmony_ci { 1, 1,1696,1066,1696,1066} 41362306a36Sopenharmony_ci}; 41462306a36Sopenharmony_ci 41562306a36Sopenharmony_ci/* Asus A2xxxH _2 */ 41662306a36Sopenharmony_ci 41762306a36Sopenharmony_cistatic const struct SiS_Part2PortTbl SiS310_CRT2Part2_Asus1024x768_3[] = 41862306a36Sopenharmony_ci{ 41962306a36Sopenharmony_ci {{0x25,0x13,0xc9,0x25,0xff,0x59,0x45,0x09,0x07,0xf9,0x09,0x24}}, 42062306a36Sopenharmony_ci {{0x2c,0x13,0x9a,0x25,0xff,0x59,0x45,0x09,0x07,0xf9,0x09,0x24}}, 42162306a36Sopenharmony_ci {{0x25,0x13,0xc9,0x25,0xff,0x59,0x45,0x09,0x07,0xf9,0x09,0x24}}, 42262306a36Sopenharmony_ci {{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}}, 42362306a36Sopenharmony_ci {{0x38,0x13,0x13,0x25,0xff,0x59,0x45,0x09,0x07,0xf9,0x09,0x24}}, 42462306a36Sopenharmony_ci {{0x38,0x13,0x16,0x25,0xff,0x5a,0x45,0x0a,0x07,0xfa,0x0a,0x24}}, 42562306a36Sopenharmony_ci {{0x36,0x13,0x13,0x25,0xff,0x5a,0x45,0x0a,0x07,0xfa,0x0a,0x24}}, 42662306a36Sopenharmony_ci {{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}}, 42762306a36Sopenharmony_ci {{0x25,0x13,0xc9,0x25,0xff,0x59,0x45,0x09,0x07,0xf9,0x09,0x24}} 42862306a36Sopenharmony_ci}; 42962306a36Sopenharmony_ci 43062306a36Sopenharmony_ci 43162306a36Sopenharmony_ci 43262306a36Sopenharmony_ci 433