⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 vgatypes.h

📁 linux下的VIDEO接口驱动程序
💻 H
字号:
#ifndef _VGATYPES_#define _VGATYPES_#ifndef TC#define far#endif#ifndef FALSE#define FALSE   0#endif#ifndef TRUE#define TRUE    1#endif#ifndef NULL#define NULL    0#endif#ifndef CHAR typedef char CHAR;#endif#ifndef SHORTtypedef short SHORT;#endif#ifndef LONGtypedef long  LONG;#endif#ifndef UCHARtypedef unsigned char UCHAR;#endif#ifndef USHORTtypedef unsigned short USHORT;#endif#ifndef ULONGtypedef unsigned long ULONG;#endif#ifndef PUCHARtypedef UCHAR far *PUCHAR;#endif#ifndef PUSHORTtypedef USHORT far *PUSHORT;#endif#ifndef PULONGtypedef ULONG far *PULONG;#endif#ifndef PVOIDtypedef void far *PVOID;#endif#ifndef VOIDtypedef void VOID;#endif#ifndef BOOLEANtypedef UCHAR BOOLEAN;#endif#ifndef WINCE_HEADER#ifndef booltypedef UCHAR bool;#endif#endif /*WINCE_HEADER*/#ifndef VBIOS_VER_MAX_LENGTH#define VBIOS_VER_MAX_LENGTH         4#endif#ifndef LINUX_KERNEL#ifndef WIN2000#ifndef SIS_CHIP_TYPEtypedef enum _SIS_CHIP_TYPE {    SIS_VGALegacy = 0,#ifdef LINUX_XF86    SIS_530,	/* TW */    SIS_OLD,	/* TW */#endif    SIS_300,    SIS_630,    SIS_730,    SIS_540,    SIS_315H,   /* SiS 310 */    SIS_315,    SIS_315PRO, /* SiS 325 */    SIS_550,    SIS_640,    SIS_740,    SIS_650,    SIS_330,     MAX_SIS_CHIP} SIS_CHIP_TYPE;#endif#endif#endif#ifndef WIN2000#ifndef SIS_VB_CHIP_TYPEtypedef enum _SIS_VB_CHIP_TYPE {    VB_CHIP_Legacy = 0,    VB_CHIP_301,    VB_CHIP_301B,    VB_CHIP_301BLCD,    VB_CHIP_301BTV,    VB_CHIP_302,    VB_CHIP_302B,    VB_CHIP_302BLCD,    VB_CHIP_302BTV,     VB_CHIP_303,    VB_CHIP_UNKNOWN, /* other video bridge or no video bridge */    MAX_VB_CHIP} SIS_VB_CHIP_TYPE;#endif#endif#ifndef WIN2000#ifndef SIS_LCD_TYPEtypedef enum _SIS_LCD_TYPE {    LCD_INVALID = 0,    LCD_800x600,    LCD_1024x768,    LCD_1280x1024,    LCD_1280x960,    LCD_640x480,    LCD_1600x1200,    LCD_1920x1440,    LCD_2048x1536,    LCD_320x480,    /* TW: FSTN */    LCD_UNKNOWN} SIS_LCD_TYPE;#endif#endif#ifndef WIN2000 /* mark by Paul ,Move definition to sisv.h*/#ifndef PSIS_DSRegtypedef struct _SIS_DSReg{  UCHAR  jIdx;  UCHAR  jVal;} SIS_DSReg, *PSIS_DSReg;#endif#ifndef SIS_HW_DEVICE_INFOtypedef struct _SIS_HW_DEVICE_INFO  SIS_HW_DEVICE_INFO, *PSIS_HW_DEVICE_INFO;typedef BOOLEAN (*PSIS_QUERYSPACE)   (PSIS_HW_DEVICE_INFO, ULONG, ULONG, ULONG *);struct _SIS_HW_DEVICE_INFO{       PVOID  pDevice;              /* The pointer to the physical device data structure                                    in each OS or NULL for unused. */    UCHAR  *pjVirtualRomBase;    /* Only for NT, NULL for WinCE & Linux. */                                 /* base virtual address of VBIOS ROM Space */                                 /* or base virtual address of ROM image file. */                                 /* if NULL, then read from pjROMImage; */                                 /* Note:ROM image file is the file of VBIOS ROM */     UCHAR  *pjCustomizedROMImage;/* base virtual address of ROM image file. */                                 /* wincE:ROM image file is the file for OEM */                                 /*       customized table */                                 /* Linux: not used */                                 /* NT   : not used  */                                 /* Note : pjCustomizedROMImage=NULL if no ROM image file */    UCHAR  *pjVideoMemoryAddress;/* base virtual memory address */                                 /* of Linear VGA memory */    ULONG  ulVideoMemorySize;    /* size, in bytes, of the memory on the board */    ULONG  ulIOAddress;          /* base I/O address of VGA ports (0x3B0) */    UCHAR  jChipType;            /* Used to Identify SiS Graphics Chip */                                 /* defined in the data structure type  */                                 /* "SIS_CHIP_TYPE" */    UCHAR  jChipRevision;        /* Used to Identify SiS Graphics Chip Revision */    UCHAR  ujVBChipID;           /* the ID of video bridge */                                 /* defined in the data structure type */                                 /* "SIS_VB_CHIP_TYPE" */    USHORT usExternalChip;       /* NO VB or other video bridge(not  */                                 /* SiS video bridge) */                                 /* if ujVBChipID = VB_CHIP_UNKNOWN, */                                 /* then bit0=1 : LVDS,bit1=1 : trumpion, */                                 /* bit2=1 : CH7005 & no video bridge if */                                 /* usExternalChip = 0. */                                 /* Note: CR37[3:1]: */                                 /*             001:SiS 301 */                                 /*             010:LVDS */                                 /*             011:Trumpion LVDS Scaling Chip */                                 /*             100:LVDS(LCD-out)+Chrontel 7005 */                                 /*             101:Single Chrontel 7005 */    ULONG  ulCRT2LCDType;        /* defined in the data structure type */                                 /* "SIS_LCD_TYPE" */                                         BOOLEAN bIntegratedMMEnabled;/* supporting integration MM enable */                                          BOOLEAN bSkipDramSizing;     /* True: Skip video memory sizing. */    PSIS_DSReg  pSR;             /* restore SR registers in initial function. */                                 /* end data :(idx, val) =  (FF, FF). */                                 /* Note : restore SR registers if  */                                 /* bSkipDramSizing = TRUE */    PSIS_DSReg  pCR;             /* restore CR registers in initial function. */                                 /* end data :(idx, val) =  (FF, FF) */                                 /* Note : restore cR registers if  */                                 /* bSkipDramSizing = TRUE */        PSIS_QUERYSPACE  pQueryVGAConfigSpace; /* Get/Set VGA Configuration  */                                           /* space */     PSIS_QUERYSPACE  pQueryNorthBridgeSpace;/* Get/Set North Bridge  */                                            /* space  */    UCHAR  szVBIOSVer[VBIOS_VER_MAX_LENGTH];};#endif#endif/*~ mark by Paul ,Move definition to sisv.h*/#ifndef WIN2000#ifndef WINCE_HEADER#ifndef BUS_DATA_TYPEtypedef enum _BUS_DATA_TYPE {    ConfigurationSpaceUndefined = -1,    Cmos,    EisaConfiguration,    Pos,    CbusConfiguration,    PCIConfiguration,    VMEConfiguration,    NuBusConfiguration,    PCMCIAConfiguration,    MPIConfiguration,    MPSAConfiguration,    PNPISAConfiguration,    MaximumBusDataType} BUS_DATA_TYPE, *PBUS_DATA_TYPE;#endif#endif /* WINCE_HEADER */#ifndef PCI_TYPE0_ADDRESSES#define PCI_TYPE0_ADDRESSES             6#endif#ifndef PCI_TYPE1_ADDRESSES#define PCI_TYPE1_ADDRESSES             2#endif#ifndef WINCE_HEADER#ifndef PCI_COMMON_CONFIGtypedef struct _PCI_COMMON_CONFIG {    USHORT  VendorID;                   /* (ro)                 */    USHORT  DeviceID;                   /* (ro)                 */    USHORT  Command;                    /* Device control       */    USHORT  Status;    UCHAR   RevisionID;                 /* (ro)                 */    UCHAR   ProgIf;                     /* (ro)                 */    UCHAR   SubClass;                   /* (ro)                 */    UCHAR   BaseClass;                  /* (ro)                 */    UCHAR   CacheLineSize;              /* (ro+)                */    UCHAR   LatencyTimer;               /* (ro+)                */    UCHAR   HeaderType;                 /* (ro)                 */    UCHAR   BIST;                       /* Built in self test   */    union {        struct _PCI_HEADER_TYPE_0 {            ULONG   BaseAddresses[PCI_TYPE0_ADDRESSES];            ULONG   CIS;            USHORT  SubVendorID;            USHORT  SubSystemID;            ULONG   ROMBaseAddress;            ULONG   Reserved2[2];            UCHAR   InterruptLine;      /*                    */            UCHAR   InterruptPin;       /* (ro)               */            UCHAR   MinimumGrant;       /* (ro)               */            UCHAR   MaximumLatency;     /* (ro)               */        } type0;    } u;    UCHAR   DeviceSpecific[192];} PCI_COMMON_CONFIG, *PPCI_COMMON_CONFIG;#endif#endif /* WINCE_HEADER */#ifndef FIELD_OFFSET#define FIELD_OFFSET(type, field)    ((LONG)&(((type *)0)->field))#endif#ifndef PCI_COMMON_HDR_LENGTH#define PCI_COMMON_HDR_LENGTH (FIELD_OFFSET (PCI_COMMON_CONFIG, DeviceSpecific))#endif#endif#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -