11da177e4SLinus Torvalds 21da177e4SLinus Torvalds #ifndef TRIDENTFB_DEBUG 31da177e4SLinus Torvalds #define TRIDENTFB_DEBUG 0 41da177e4SLinus Torvalds #endif 51da177e4SLinus Torvalds 61da177e4SLinus Torvalds #if TRIDENTFB_DEBUG 75cf13845SKrzysztof Helt #define debug(f, a...) printk("%s:" f, __func__ , ## a); 81da177e4SLinus Torvalds #else 91da177e4SLinus Torvalds #define debug(f, a...) 101da177e4SLinus Torvalds #endif 111da177e4SLinus Torvalds 121da177e4SLinus Torvalds #define output(f, a...) pr_info("tridentfb: " f, ## a) 131da177e4SLinus Torvalds 141da177e4SLinus Torvalds #define Kb (1024) 151da177e4SLinus Torvalds #define Mb (Kb*Kb) 161da177e4SLinus Torvalds 171da177e4SLinus Torvalds /* PCI IDS of supported cards temporarily here */ 181da177e4SLinus Torvalds 191da177e4SLinus Torvalds #define CYBER9320 0x9320 201da177e4SLinus Torvalds #define CYBER9388 0x9388 211da177e4SLinus Torvalds #define CYBER9382 0x9382 /* the real PCI id for this is 9660 */ 221da177e4SLinus Torvalds #define CYBER9385 0x9385 /* ditto */ 231da177e4SLinus Torvalds #define CYBER9397 0x9397 241da177e4SLinus Torvalds #define CYBER9397DVD 0x939A 251da177e4SLinus Torvalds #define CYBER9520 0x9520 261da177e4SLinus Torvalds #define CYBER9525DVD 0x9525 27a0d92256SKrzysztof Helt #define TGUI9440 0x9440 281da177e4SLinus Torvalds #define TGUI9660 0x9660 290e73a47fSKrzysztof Helt #define PROVIDIA9685 0x9685 301da177e4SLinus Torvalds #define IMAGE975 0x9750 311da177e4SLinus Torvalds #define IMAGE985 0x9850 321da177e4SLinus Torvalds #define BLADE3D 0x9880 331da177e4SLinus Torvalds #define CYBERBLADEE4 0x9540 341da177e4SLinus Torvalds #define CYBERBLADEi7 0x8400 351da177e4SLinus Torvalds #define CYBERBLADEi7D 0x8420 361da177e4SLinus Torvalds #define CYBERBLADEi1 0x8500 371da177e4SLinus Torvalds #define CYBERBLADEi1D 0x8520 381da177e4SLinus Torvalds #define CYBERBLADEAi1 0x8600 391da177e4SLinus Torvalds #define CYBERBLADEAi1D 0x8620 401da177e4SLinus Torvalds #define CYBERBLADEXPAi1 0x8820 411da177e4SLinus Torvalds #define CYBERBLADEXPm8 0x9910 421da177e4SLinus Torvalds #define CYBERBLADEXPm16 0x9930 431da177e4SLinus Torvalds 441da177e4SLinus Torvalds /* these defines are for 'lcd' variable */ 451da177e4SLinus Torvalds #define LCD_STRETCH 0 461da177e4SLinus Torvalds #define LCD_CENTER 1 471da177e4SLinus Torvalds #define LCD_BIOS 2 481da177e4SLinus Torvalds 491da177e4SLinus Torvalds /* General Registers */ 501da177e4SLinus Torvalds #define SPR 0x1F /* Software Programming Register (videoram) */ 511da177e4SLinus Torvalds 521da177e4SLinus Torvalds /* 3C4 */ 531da177e4SLinus Torvalds #define RevisionID 0x09 541da177e4SLinus Torvalds #define OldOrNew 0x0B 551da177e4SLinus Torvalds #define ConfPort1 0x0C 561da177e4SLinus Torvalds #define ConfPort2 0x0C 571da177e4SLinus Torvalds #define NewMode2 0x0D 581da177e4SLinus Torvalds #define NewMode1 0x0E 591da177e4SLinus Torvalds #define Protection 0x11 601da177e4SLinus Torvalds #define MCLKLow 0x16 611da177e4SLinus Torvalds #define MCLKHigh 0x17 621da177e4SLinus Torvalds #define ClockLow 0x18 631da177e4SLinus Torvalds #define ClockHigh 0x19 641da177e4SLinus Torvalds #define SSetup 0x20 651da177e4SLinus Torvalds #define SKey 0x37 661da177e4SLinus Torvalds #define SPKey 0x57 671da177e4SLinus Torvalds 681da177e4SLinus Torvalds /* 3x4 */ 691da177e4SLinus Torvalds #define CRTCModuleTest 0x1E 701da177e4SLinus Torvalds #define FIFOControl 0x20 711da177e4SLinus Torvalds #define LinearAddReg 0x21 721da177e4SLinus Torvalds #define DRAMTiming 0x23 731da177e4SLinus Torvalds #define New32 0x23 741da177e4SLinus Torvalds #define RAMDACTiming 0x25 751da177e4SLinus Torvalds #define CRTHiOrd 0x27 761da177e4SLinus Torvalds #define AddColReg 0x29 771da177e4SLinus Torvalds #define InterfaceSel 0x2A 781da177e4SLinus Torvalds #define HorizOverflow 0x2B 791da177e4SLinus Torvalds #define GETest 0x2D 801da177e4SLinus Torvalds #define Performance 0x2F 811da177e4SLinus Torvalds #define GraphEngReg 0x36 821da177e4SLinus Torvalds #define I2C 0x37 831da177e4SLinus Torvalds #define PixelBusReg 0x38 841da177e4SLinus Torvalds #define PCIReg 0x39 851da177e4SLinus Torvalds #define DRAMControl 0x3A 861da177e4SLinus Torvalds #define MiscContReg 0x3C 871da177e4SLinus Torvalds #define CursorXLow 0x40 881da177e4SLinus Torvalds #define CursorXHigh 0x41 891da177e4SLinus Torvalds #define CursorYLow 0x42 901da177e4SLinus Torvalds #define CursorYHigh 0x43 911da177e4SLinus Torvalds #define CursorLocLow 0x44 921da177e4SLinus Torvalds #define CursorLocHigh 0x45 931da177e4SLinus Torvalds #define CursorXOffset 0x46 941da177e4SLinus Torvalds #define CursorYOffset 0x47 951da177e4SLinus Torvalds #define CursorFG1 0x48 961da177e4SLinus Torvalds #define CursorFG2 0x49 971da177e4SLinus Torvalds #define CursorFG3 0x4A 981da177e4SLinus Torvalds #define CursorFG4 0x4B 991da177e4SLinus Torvalds #define CursorBG1 0x4C 1001da177e4SLinus Torvalds #define CursorBG2 0x4D 1011da177e4SLinus Torvalds #define CursorBG3 0x4E 1021da177e4SLinus Torvalds #define CursorBG4 0x4F 1031da177e4SLinus Torvalds #define CursorControl 0x50 1041da177e4SLinus Torvalds #define PCIRetry 0x55 1051da177e4SLinus Torvalds #define PreEndControl 0x56 1061da177e4SLinus Torvalds #define PreEndFetch 0x57 1071da177e4SLinus Torvalds #define PCIMaster 0x60 1081da177e4SLinus Torvalds #define Enhancement0 0x62 1091da177e4SLinus Torvalds #define NewEDO 0x64 1101da177e4SLinus Torvalds #define TVinterface 0xC0 1111da177e4SLinus Torvalds #define TVMode 0xC1 1121da177e4SLinus Torvalds #define ClockControl 0xCF 1131da177e4SLinus Torvalds 1141da177e4SLinus Torvalds 1151da177e4SLinus Torvalds /* 3CE */ 1161da177e4SLinus Torvalds #define MiscExtFunc 0x0F 1171da177e4SLinus Torvalds #define PowerStatus 0x23 1181da177e4SLinus Torvalds #define MiscIntContReg 0x2F 1191da177e4SLinus Torvalds #define CyberControl 0x30 1201da177e4SLinus Torvalds #define CyberEnhance 0x31 1211da177e4SLinus Torvalds #define FPConfig 0x33 1221da177e4SLinus Torvalds #define VertStretch 0x52 1231da177e4SLinus Torvalds #define HorStretch 0x53 1241da177e4SLinus Torvalds #define BiosMode 0x5c 1251da177e4SLinus Torvalds #define BiosReg 0x5d 1261da177e4SLinus Torvalds 12749b1f4b4SKrzysztof Helt /* Graphics Engine */ 12849b1f4b4SKrzysztof Helt #define STATUS 0x2120 12949b1f4b4SKrzysztof Helt #define OLDCMD 0x2124 13049b1f4b4SKrzysztof Helt #define DRAWFL 0x2128 13149b1f4b4SKrzysztof Helt #define OLDCLR 0x212C 13249b1f4b4SKrzysztof Helt #define OLDDST 0x2138 13349b1f4b4SKrzysztof Helt #define OLDSRC 0x213C 13449b1f4b4SKrzysztof Helt #define OLDDIM 0x2140 13549b1f4b4SKrzysztof Helt #define CMD 0x2144 13649b1f4b4SKrzysztof Helt #define ROP 0x2148 13749b1f4b4SKrzysztof Helt #define COLOR 0x2160 138*0292be4aSKrzysztof Helt #define BGCOLOR 0x2164 13949b1f4b4SKrzysztof Helt #define SRC1 0x2100 14049b1f4b4SKrzysztof Helt #define SRC2 0x2104 14149b1f4b4SKrzysztof Helt #define DST1 0x2108 14249b1f4b4SKrzysztof Helt #define DST2 0x210C 14349b1f4b4SKrzysztof Helt 14449b1f4b4SKrzysztof Helt #define ROP_S 0xCC 14549b1f4b4SKrzysztof Helt #define ROP_P 0xF0 14649b1f4b4SKrzysztof Helt #define ROP_X 0x66 147