1 #ifndef _VGATYPES_ 2 #define _VGATYPES_ 3 4 #include <linux/ioctl.h> 5 6 #ifndef XGI_VB_CHIP_TYPE 7 enum XGI_VB_CHIP_TYPE { 8 VB_CHIP_Legacy = 0, 9 VB_CHIP_301, 10 VB_CHIP_301B, 11 VB_CHIP_301LV, 12 VB_CHIP_302, 13 VB_CHIP_302B, 14 VB_CHIP_302LV, 15 VB_CHIP_301C, 16 VB_CHIP_302ELV, 17 VB_CHIP_UNKNOWN, /* other video bridge or no video bridge */ 18 MAX_VB_CHIP 19 }; 20 #endif 21 22 #ifndef XGI_LCD_TYPE 23 enum XGI_LCD_TYPE { 24 LCD_INVALID = 0, 25 LCD_320x480, /* FSTN, DSTN */ 26 LCD_640x480, 27 LCD_640x480_2, /* FSTN, DSTN */ 28 LCD_640x480_3, /* FSTN, DSTN */ 29 LCD_800x600, 30 LCD_848x480, 31 LCD_1024x600, 32 LCD_1024x768, 33 LCD_1152x768, 34 LCD_1152x864, 35 LCD_1280x720, 36 LCD_1280x768, 37 LCD_1280x800, 38 LCD_1280x960, 39 LCD_1280x1024, 40 LCD_1400x1050, 41 LCD_1600x1200, 42 LCD_1680x1050, 43 LCD_1920x1440, 44 LCD_2048x1536, 45 LCD_CUSTOM, 46 LCD_UNKNOWN 47 }; 48 #endif 49 50 struct xgi_hw_device_info { 51 unsigned long ulExternalChip; /* NO VB or other video bridge*/ 52 /* if ujVBChipID = VB_CHIP_UNKNOWN, */ 53 54 void __iomem *pjVideoMemoryAddress;/* base virtual memory address */ 55 /* of Linear VGA memory */ 56 57 unsigned long ulVideoMemorySize; /* size, in bytes, of the 58 memory on the board */ 59 60 unsigned char *pjIOAddress; /* base I/O address of VGA ports (0x3B0) */ 61 62 unsigned char jChipType; /* Used to Identify Graphics Chip */ 63 /* defined in the data structure type */ 64 /* "XGI_CHIP_TYPE" */ 65 66 unsigned char jChipRevision; /* Used to Identify Graphics 67 Chip Revision */ 68 69 unsigned char ujVBChipID; /* the ID of video bridge */ 70 /* defined in the data structure type */ 71 /* "XGI_VB_CHIP_TYPE" */ 72 73 unsigned long ulCRT2LCDType; /* defined in the data structure type */ 74 }; 75 76 /* Additional IOCTL for communication xgifb <> X driver */ 77 /* If changing this, xgifb.h must also be changed (for xgifb) */ 78 #endif 79 80