ast_mode.h revision de78e416
115fb4814Smrg/* 215fb4814Smrg * Copyright (c) 2005 ASPEED Technology Inc. 315fb4814Smrg * 415fb4814Smrg * Permission to use, copy, modify, distribute, and sell this software and its 515fb4814Smrg * documentation for any purpose is hereby granted without fee, provided that 615fb4814Smrg * the above copyright notice appear in all copies and that both that 715fb4814Smrg * copyright notice and this permission notice appear in supporting 815fb4814Smrg * documentation, and that the name of the authors not be used in 915fb4814Smrg * advertising or publicity pertaining to distribution of the software without 1015fb4814Smrg * specific, written prior permission. The authors makes no representations 1115fb4814Smrg * about the suitability of this software for any purpose. It is provided 1215fb4814Smrg * "as is" without express or implied warranty. 1315fb4814Smrg * 1415fb4814Smrg * THE AUTHORS DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, 1515fb4814Smrg * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO 1615fb4814Smrg * EVENT SHALL THE AUTHORS BE LIABLE FOR ANY SPECIAL, INDIRECT OR 1715fb4814Smrg * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, 1815fb4814Smrg * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER 1915fb4814Smrg * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR 2015fb4814Smrg * PERFORMANCE OF THIS SOFTWARE. 2115fb4814Smrg */ 2215fb4814Smrg 2315fb4814Smrg/* Mode Limitation */ 24de78e416Smrg#define MAX_HResolution 1920 2515fb4814Smrg#define MAX_VResolution 1200 2615fb4814Smrg 2715fb4814Smrg/* Std. Table Index Definition */ 2815fb4814Smrg#define TextModeIndex 0 2915fb4814Smrg#define EGAModeIndex 1 3015fb4814Smrg#define VGAModeIndex 2 3115fb4814Smrg#define HiCModeIndex 3 3215fb4814Smrg#define TrueCModeIndex 4 3315fb4814Smrg 3415fb4814Smrg/* DCLK Index */ 3515fb4814Smrg#define VCLK25_175 0x00 3615fb4814Smrg#define VCLK28_322 0x01 3715fb4814Smrg#define VCLK31_5 0x02 3815fb4814Smrg#define VCLK36 0x03 3915fb4814Smrg#define VCLK40 0x04 4015fb4814Smrg#define VCLK49_5 0x05 4115fb4814Smrg#define VCLK50 0x06 4215fb4814Smrg#define VCLK56_25 0x07 4315fb4814Smrg#define VCLK65 0x08 4415fb4814Smrg#define VCLK75 0x09 4515fb4814Smrg#define VCLK78_75 0x0A 4615fb4814Smrg#define VCLK94_5 0x0B 4715fb4814Smrg#define VCLK108 0x0C 4815fb4814Smrg#define VCLK135 0x0D 4915fb4814Smrg#define VCLK157_5 0x0E 5015fb4814Smrg#define VCLK162 0x0F 51de78e416Smrg/* #define VCLK193_25 0x10 */ 52de78e416Smrg#define VCLK154 0x10 5315fb4814Smrg 5415fb4814Smrg/* Flags Definition */ 5515fb4814Smrg#define Charx8Dot 0x00000001 5615fb4814Smrg#define HalfDCLK 0x00000002 5715fb4814Smrg#define DoubleScanMode 0x00000004 5815fb4814Smrg#define LineCompareOff 0x00000008 5915fb4814Smrg#define SyncPP 0x00000000 6015fb4814Smrg#define SyncPN 0x00000040 6115fb4814Smrg#define SyncNP 0x00000080 6215fb4814Smrg#define SyncNN 0x000000C0 6315fb4814Smrg#define HBorder 0x00000020 6415fb4814Smrg#define VBorder 0x00000010 6515fb4814Smrg 6615fb4814Smrg/* DAC Definition */ 6715fb4814Smrg#define DAC_NUM_TEXT 64 6815fb4814Smrg#define DAC_NUM_EGA 64 6915fb4814Smrg#define DAC_NUM_VGA 256 7015fb4814Smrg 7115fb4814Smrg/* Data Structure decalration for internal use */ 7215fb4814Smrgtypedef struct { 7315fb4814Smrg 7415fb4814Smrg UCHAR MISC; 7515fb4814Smrg UCHAR SEQ[4]; 7615fb4814Smrg UCHAR CRTC[25]; 7715fb4814Smrg UCHAR AR[20]; 7815fb4814Smrg UCHAR GR[9]; 7915fb4814Smrg 8015fb4814Smrg} VBIOS_STDTABLE_STRUCT, *PVBIOS_STDTABLE_STRUCT; 8115fb4814Smrg 8215fb4814Smrgtypedef struct { 8315fb4814Smrg 8415fb4814Smrg ULONG HT; 8515fb4814Smrg ULONG HDE; 8615fb4814Smrg ULONG HFP; 8715fb4814Smrg ULONG HSYNC; 8815fb4814Smrg ULONG VT; 8915fb4814Smrg ULONG VDE; 9015fb4814Smrg ULONG VFP; 9115fb4814Smrg ULONG VSYNC; 9215fb4814Smrg ULONG DCLKIndex; 9315fb4814Smrg ULONG Flags; 9415fb4814Smrg 9515fb4814Smrg ULONG ulRefreshRate; 9615fb4814Smrg ULONG ulRefreshRateIndex; 9715fb4814Smrg ULONG ulModeID; 9815fb4814Smrg 9915fb4814Smrg} VBIOS_ENHTABLE_STRUCT, *PVBIOS_ENHTABLE_STRUCT; 10015fb4814Smrg 10115fb4814Smrgtypedef struct { 10215fb4814Smrg UCHAR Param1; 10315fb4814Smrg UCHAR Param2; 10415fb4814Smrg UCHAR Param3; 10515fb4814Smrg} VBIOS_DCLK_INFO, *PVBIOS_DCLK_INFO; 10615fb4814Smrg 10715fb4814Smrgtypedef struct { 10815fb4814Smrg UCHAR DACR; 10915fb4814Smrg UCHAR DACG; 11015fb4814Smrg UCHAR DACB; 11115fb4814Smrg} VBIOS_DAC_INFO, *PVBIOS_DAC_INFO; 11215fb4814Smrg 11315fb4814Smrgtypedef struct { 11415fb4814Smrg PVBIOS_STDTABLE_STRUCT pStdTableEntry; 11515fb4814Smrg PVBIOS_ENHTABLE_STRUCT pEnhTableEntry; 11615fb4814Smrg 11715fb4814Smrg} VBIOS_MODE_INFO, *PVBIOS_MODE_INFO; 118