diff options
Diffstat (limited to 'include/video/trident.h')
-rw-r--r-- | include/video/trident.h | 175 |
1 files changed, 175 insertions, 0 deletions
diff --git a/include/video/trident.h b/include/video/trident.h new file mode 100644 index 00000000000..200be255168 --- /dev/null +++ b/include/video/trident.h @@ -0,0 +1,175 @@ + +#ifndef TRIDENTFB_DEBUG +#define TRIDENTFB_DEBUG 0 +#endif + +#if TRIDENTFB_DEBUG +#define debug(f,a...) printk("%s:" f, __FUNCTION__ , ## a);mdelay(1000); +#else +#define debug(f,a...) +#endif + +#define output(f, a...) pr_info("tridentfb: " f, ## a) + +#define Kb (1024) +#define Mb (Kb*Kb) + +/* PCI IDS of supported cards temporarily here */ + +#define CYBER9320 0x9320 +#define CYBER9388 0x9388 +#define CYBER9382 0x9382 /* the real PCI id for this is 9660 */ +#define CYBER9385 0x9385 /* ditto */ +#define CYBER9397 0x9397 +#define CYBER9397DVD 0x939A +#define CYBER9520 0x9520 +#define CYBER9525DVD 0x9525 +#define TGUI9660 0x9660 +#define IMAGE975 0x9750 +#define IMAGE985 0x9850 +#define BLADE3D 0x9880 +#define CYBERBLADEE4 0x9540 +#define CYBERBLADEi7 0x8400 +#define CYBERBLADEi7D 0x8420 +#define CYBERBLADEi1 0x8500 +#define CYBERBLADEi1D 0x8520 +#define CYBERBLADEAi1 0x8600 +#define CYBERBLADEAi1D 0x8620 +#define CYBERBLADEXPAi1 0x8820 +#define CYBERBLADEXPm8 0x9910 +#define CYBERBLADEXPm16 0x9930 + +/* acceleration families */ +#define IMAGE 0 +#define BLADE 1 +#define XP 2 + +#define is_image(id) +#define is_xp(id) ((id == CYBERBLADEXPAi1) ||\ + (id == CYBERBLADEXPm8) ||\ + (id == CYBERBLADEXPm16)) + +#define is_blade(id) ((id == BLADE3D) ||\ + (id == CYBERBLADEE4) ||\ + (id == CYBERBLADEi7) ||\ + (id == CYBERBLADEi7D) ||\ + (id == CYBERBLADEi1) ||\ + (id == CYBERBLADEi1D) ||\ + (id == CYBERBLADEAi1) ||\ + (id == CYBERBLADEAi1D)) + +/* these defines are for 'lcd' variable */ +#define LCD_STRETCH 0 +#define LCD_CENTER 1 +#define LCD_BIOS 2 + +/* display types */ +#define DISPLAY_CRT 0 +#define DISPLAY_FP 1 + +#define flatpanel (displaytype == DISPLAY_FP) + +/* General Registers */ +#define SPR 0x1F /* Software Programming Register (videoram) */ + +/* 3C4 */ +#define RevisionID 0x09 +#define OldOrNew 0x0B +#define ConfPort1 0x0C +#define ConfPort2 0x0C +#define NewMode2 0x0D +#define NewMode1 0x0E +#define Protection 0x11 +#define MCLKLow 0x16 +#define MCLKHigh 0x17 +#define ClockLow 0x18 +#define ClockHigh 0x19 +#define SSetup 0x20 +#define SKey 0x37 +#define SPKey 0x57 + +/* 0x3x4 */ +#define CRTHTotal 0x00 +#define CRTHDispEnd 0x01 +#define CRTHBlankStart 0x02 +#define CRTHBlankEnd 0x03 +#define CRTHSyncStart 0x04 +#define CRTHSyncEnd 0x05 + +#define CRTVTotal 0x06 +#define CRTVDispEnd 0x12 +#define CRTVBlankStart 0x15 +#define CRTVBlankEnd 0x16 +#define CRTVSyncStart 0x10 +#define CRTVSyncEnd 0x11 + +#define CRTOverflow 0x07 +#define CRTPRowScan 0x08 +#define CRTMaxScanLine 0x09 +#define CRTModeControl 0x17 +#define CRTLineCompare 0x18 + +/* 3x4 */ +#define StartAddrHigh 0x0C +#define StartAddrLow 0x0D +#define Offset 0x13 +#define Underline 0x14 +#define CRTCMode 0x17 +#define CRTCModuleTest 0x1E +#define FIFOControl 0x20 +#define LinearAddReg 0x21 +#define DRAMTiming 0x23 +#define New32 0x23 +#define RAMDACTiming 0x25 +#define CRTHiOrd 0x27 +#define AddColReg 0x29 +#define InterfaceSel 0x2A +#define HorizOverflow 0x2B +#define GETest 0x2D +#define Performance 0x2F +#define GraphEngReg 0x36 +#define I2C 0x37 +#define PixelBusReg 0x38 +#define PCIReg 0x39 +#define DRAMControl 0x3A +#define MiscContReg 0x3C +#define CursorXLow 0x40 +#define CursorXHigh 0x41 +#define CursorYLow 0x42 +#define CursorYHigh 0x43 +#define CursorLocLow 0x44 +#define CursorLocHigh 0x45 +#define CursorXOffset 0x46 +#define CursorYOffset 0x47 +#define CursorFG1 0x48 +#define CursorFG2 0x49 +#define CursorFG3 0x4A +#define CursorFG4 0x4B +#define CursorBG1 0x4C +#define CursorBG2 0x4D +#define CursorBG3 0x4E +#define CursorBG4 0x4F +#define CursorControl 0x50 +#define PCIRetry 0x55 +#define PreEndControl 0x56 +#define PreEndFetch 0x57 +#define PCIMaster 0x60 +#define Enhancement0 0x62 +#define NewEDO 0x64 +#define TVinterface 0xC0 +#define TVMode 0xC1 +#define ClockControl 0xCF + + +/* 3CE */ +#define MiscExtFunc 0x0F +#define PowerStatus 0x23 +#define MiscIntContReg 0x2F +#define CyberControl 0x30 +#define CyberEnhance 0x31 +#define FPConfig 0x33 +#define VertStretch 0x52 +#define HorStretch 0x53 +#define BiosMode 0x5c +#define BiosReg 0x5d + |