102be438aSmrg/* 202be438aSmrg Voodoo Banshee driver version 1.0.1 302be438aSmrg 402be438aSmrg Author: Daryll Strauss 502be438aSmrg 602be438aSmrg Copyright: 1998,1999 702be438aSmrg*/ 802be438aSmrg 902be438aSmrg#ifndef _TDFXDEFS_H_ 1002be438aSmrg#define _TDFXDEFS_H_ 1102be438aSmrg 1202be438aSmrg#define TDFXIOMAPSIZE 0x2000000 1302be438aSmrg 1402be438aSmrg/* Flags */ 1502be438aSmrg#define BIT(n) (1UL<<(n)) 1602be438aSmrg#define SST_SGRAM_OFLOP_DEL_ADJ_SHIFT 20 1702be438aSmrg#define SST_SGRAM_CLK_NODELAY BIT(13) 1802be438aSmrg#define SST_DRAM_REFRESH_EN BIT(0) 1902be438aSmrg#define SST_DRAM_REFRESH_VALUE_SHIFT 1 2002be438aSmrg#define SST_DRAM_REFRESH_VALUE (0x1FF<<SST_DRAM_REFRESH_VALUE_SHIFT) 2102be438aSmrg#define SST_SGRAM_TYPE_SHIFT 27 2202be438aSmrg#define SST_SGRAM_TYPE (0x1L<<SST_SGRAM_TYPE_SHIFT) 2302be438aSmrg#define SST_SGRAM_NUM_CHIPSETS BIT(26) 2402be438aSmrg#define SST_SGRAM_TYPE_8MBIT (0x0L<<SST_SGRAM_TYPE_SHIFT) 2502be438aSmrg#define SST_SGRAM_TYPE_16MBIT (0x1L<<SST_SGRAM_TYPE_SHIFT) 2602be438aSmrg#define SST_DISABLE_2D_BLOCK_WRITE BIT(15) 2702be438aSmrg#define SST_MCTL_TYPE_SDRAM BIT(30) 2802be438aSmrg#define SST_DAC_MODE_2X BIT(0) 2902be438aSmrg#define SST_VIDEO_2X_MODE_EN BIT(26) 3002be438aSmrg#define SST_VGA0_EXTENSIONS BIT(6) 3102be438aSmrg#define SST_WAKEUP_3C3 1 3202be438aSmrg#define SST_VGA0_WAKEUP_SELECT_SHIFT 8 3302be438aSmrg#define SST_VGA0_LEGACY_DECODE_SHIFT 9 3402be438aSmrg#define SST_VGA0_LEGACY_DECODE (1 << SST_VGA0_LEGACY_DECODE_SHIFT) 3502be438aSmrg#define SST_VGA0_ENABLE_DECODE 0 3602be438aSmrg#define SST_ENABLE_ALT_READBACK 0 3702be438aSmrg#define SST_VGA0_CLUT_SELECT_SHIFT 2 3802be438aSmrg#define SST_CLUT_SELECT_6BIT 0 3902be438aSmrg#define SST_CLUT_SELECT_8BIT 1 4002be438aSmrg#define SST_VGA0_CONFIG_READBACK_SHIFT 10 4102be438aSmrg#define SST_VIDEO_PROCESSOR_EN BIT(0) 4202be438aSmrg#define SST_CURSOR_MODE_SHIFT 1 4302be438aSmrg#define SST_CURSOR_X11 (1<<SST_CURSOR_MODE_SHIFT) 4402be438aSmrg#define SST_DESKTOP_EN BIT(7) 4502be438aSmrg#define SST_DESKTOP_PIXEL_FORMAT_SHIFT 18 4602be438aSmrg#define SST_DESKTOP_CLUT_BYPASS BIT(10) 4702be438aSmrg#define SST_INTERLACE BIT(3) 4802be438aSmrg#define SST_HALF_MODE BIT(4) 4902be438aSmrg#define SST_CURSOR_EN BIT(27) 5002be438aSmrg#define SST_FBI_BUSY BIT(7) 5102be438aSmrg#define SST_BUSY BIT(9) 5202be438aSmrg#define SST_RETRACE BIT(6) 5302be438aSmrg#define SST_COMMANDEXTRA_VSYNC BIT(2) 5402be438aSmrg 5502be438aSmrg#define MEM_TYPE_SGRAM 0 5602be438aSmrg#define MEM_TYPE_SDRAM 1 5702be438aSmrg/* 5802be438aSmrg * SST_RAW_LFB_ADDR_STRIDE(Lg2SizeInK) takes the 5902be438aSmrg * lfbMemoryConfig value for SGRAMStrideInTiles. This 6002be438aSmrg * is given by this table: 6102be438aSmrg * SGRAMStrideInBytes lfbMemoryConfig Value 6202be438aSmrg * ================== ===================== 6302be438aSmrg * 1k 0 6402be438aSmrg * 2k 1 6502be438aSmrg * 4k 2 6602be438aSmrg * 8k 3 6702be438aSmrg * 16k 4 6802be438aSmrg * 6902be438aSmrg * FWIW, the right hand column is log2(left hand column)-10 7002be438aSmrg */ 7102be438aSmrg#define SST_RAW_LFB_ADDR_STRIDE_SHIFT 13 7202be438aSmrg#define SST_RAW_LFB_ADDR_STRIDE(Lg2SizeInK) \ 7302be438aSmrg ((Lg2SizeInK)<<SST_RAW_LFB_ADDR_STRIDE_SHIFT) 7402be438aSmrg#define SST_RAW_LFB_ADDR_STRIDE_4K SST_RAW_LFB_ADDR_STRIDE(2) 7502be438aSmrg#define SST_RAW_LFB_ADDR_STRIDE_8K SST_RAW_LFB_ADDR_STRIDE(3) 7602be438aSmrg#define SST_RAW_LFB_ADDR_STRIDE_16K SST_RAW_LFB_ADDR_STRIDE(4) 7702be438aSmrg#define SST_RAW_LFB_TILE_STRIDE_SHIFT 16 7802be438aSmrg 7902be438aSmrg#define BLIT_LEFT 1 8002be438aSmrg#define BLIT_UP 2 8102be438aSmrg 8202be438aSmrg/* Base Registers */ 8302be438aSmrg#define STATUS 0x0 8402be438aSmrg#define PCIINIT0 0x4 8502be438aSmrg#define SIPMONITOR 0x8 8602be438aSmrg#define LFBMEMORYCONFIG 0xC 8702be438aSmrg#define MISCINIT0 0x10 8802be438aSmrg#define MISCINIT1 0x14 8902be438aSmrg#define DRAMINIT0 0x18 9002be438aSmrg#define DRAMINIT1 0x1C 9102be438aSmrg#define AGPINIT 0x20 9202be438aSmrg#define TMUGBEINIT 0x24 9302be438aSmrg#define VGAINIT0 0x28 9402be438aSmrg#define VGAINIT1 0x2c 9502be438aSmrg#define DRAMCOMMAND 0x30 9602be438aSmrg#define DRAMDATA 0x34 9702be438aSmrg#define PLLCTRL0 0x40 9802be438aSmrg#define PLLCTRL1 0x44 9902be438aSmrg#define PLLCTRL2 0x48 10002be438aSmrg#define DACMODE 0x4c 10102be438aSmrg#define DACADDR 0x50 10202be438aSmrg#define DACDATA 0x54 10302be438aSmrg#define RGBMAXDELTA 0x58 10402be438aSmrg#define VIDPROCCFG 0x5c 10502be438aSmrg#define HWCURPATADDR 0x60 10602be438aSmrg#define HWCURLOC 0x64 10702be438aSmrg#define HWCURC0 0x68 10802be438aSmrg#define HWCURC1 0x6c 10902be438aSmrg#define VIDINFORMAT 0x70 11002be438aSmrg#define VIDINSTATUS 0x74 11102be438aSmrg#define VIDSERIALPARALLELPORT 0x78 112880ed95aSmrg#define VSP_TVOUT_RESET 0x80000000 /* 0 forces TVout reset */ 113880ed95aSmrg#define VSP_GPIO2_IN 0x40000000 114880ed95aSmrg#define VSP_GPIO1_OUT 0x20000000 115880ed95aSmrg#define VSP_VMI_RESET_N 0x10000000 /* 0 forces a VMI reset */ 116880ed95aSmrg#define VSP_SDA1_IN 0x08000000 /* i2c bus on the feature connector */ 117880ed95aSmrg#define VSP_SCL1_IN 0x04000000 118880ed95aSmrg#define VSP_SDA1_OUT 0x02000000 119880ed95aSmrg#define VSP_SCL1_OUT 0x01000000 120880ed95aSmrg#define VSP_ENABLE_IIC1 0x00800000 /* 1 enables I2C bus 1 */ 121880ed95aSmrg#define VSP_SDA0_IN 0x00400000 /* i2c bus on the monitor connector */ 122880ed95aSmrg#define VSP_SCL0_IN 0x00200000 123880ed95aSmrg#define VSP_SDA0_OUT 0x00100000 124880ed95aSmrg#define VSP_SCL0_OUT 0x00080000 125880ed95aSmrg#define VSP_ENABLE_IIC0 0x00040000 /* 1 enables I2C bus 0 */ 126880ed95aSmrg#define VSP_VMI_ADDRESS 0x0003c000 /* mask */ 127880ed95aSmrg#define VSP_VMI_DATA 0x00003fc0 /* mask */ 128880ed95aSmrg#define VSP_VMI_DISABLE 0x00000020 /* 0 enables VMI output */ 129880ed95aSmrg#define VSP_VMI_RDY_N 0x00000010 130880ed95aSmrg#define VSP_RW_N 0x00000008 131880ed95aSmrg#define VSP_DS_N 0x00000004 132880ed95aSmrg#define VSP_CS_N 0x00000002 133880ed95aSmrg#define VSP_HOST_ENABLE 0x00000001 /* 1 enables VMI host control*/ 13402be438aSmrg#define VIDINXDECIMDELTAS 0x7c 13502be438aSmrg#define VIDINDECIMINITERRS 0x80 13602be438aSmrg#define VIDYDECIMDELTA 0x84 13702be438aSmrg#define VIDPXELBUGTHOLD 0x88 13802be438aSmrg#define VIDCHROMAMIN 0x8c 13902be438aSmrg#define VIDCHROMAMAX 0x90 14002be438aSmrg#define VIDCURRENTLINE 0x94 14102be438aSmrg#define VIDSCREENSIZE 0x98 14202be438aSmrg#define VIDOVERLAYSTARTCOORDS 0x9c 14302be438aSmrg#define VIDOVERLAYENDSCREENCOORDS 0xa0 14402be438aSmrg#define VIDOVERLAYDUDX 0xa4 14502be438aSmrg#define VIDOVERLAYDUDXOFFSETSRCWIDTH 0xa8 14602be438aSmrg#define VIDOVERLAYDVDY 0xac 14702be438aSmrg#define VIDOVERLAYDVDYOFFSET 0xe0 14802be438aSmrg#define VIDDESKTOPSTARTADDR 0xe4 14902be438aSmrg#define VIDDESKTOPOVERLAYSTRIDE 0xe8 15002be438aSmrg#define VIDINADDR0 0xec 15102be438aSmrg#define VIDINADDR1 0xf0 15202be438aSmrg#define VIDINADDR2 0xf4 15302be438aSmrg#define VIDINSTRIDE 0xf8 15402be438aSmrg#define VIDCUROVERLAYSTARTADDR 0xfc 15502be438aSmrg 15602be438aSmrg/* 2D Commands */ 15702be438aSmrg#define SST_2D_NOP 0 15802be438aSmrg#define SST_2D_SCRNTOSCRNBLIT 1 15902be438aSmrg#define SST_2D_SCRNTOSCRNSTRETCH 2 16002be438aSmrg#define SST_2D_HOSTTOSCRNBLIT 3 16102be438aSmrg#define SST_2D_HOSTTOSCRNSTRECH 4 16202be438aSmrg#define SST_2D_RECTANGLEFILL 5 16302be438aSmrg#define SST_2D_LINE (6 | SST_2D_REVERSIBLE) 16402be438aSmrg#define SST_2D_POLYLINE (7 | SST_2D_REVERSIBLE) 16502be438aSmrg#define SST_2D_POLYGONFILL (8 | SST_2D_REVERSIBLE) 16602be438aSmrg 16702be438aSmrg/* Flags */ 16802be438aSmrg#define SST_2D_REVERSIBLE BIT(9) 16902be438aSmrg#define SST_2D_STIPPLE_LINE BIT(12) 17002be438aSmrg#define SST_2D_MONOCHROME_PATTERN BIT(13) 17102be438aSmrg#define SST_2D_X_RIGHT_TO_LEFT BIT(14) 17202be438aSmrg#define SST_2D_Y_BOTTOM_TO_TOP BIT(15) 17302be438aSmrg#define SST_2D_TRANSPARENT_MONOCHROME BIT(16) 17402be438aSmrg#define SST_2D_SOURCE_PACKING_SHIFT 22 17502be438aSmrg#define SST_2D_SOURCE_PACKING_BYTE (1<<SST_2D_SOURCE_PACKING_SHIFT) 17602be438aSmrg#define SST_2D_SOURCE_PACKING_WORD (2<<SST_2D_SOURCE_PACKING_SHIFT) 17702be438aSmrg#define SST_2D_SOURCE_PACKING_DWORD (3<<SST_2D_SOURCE_PACKING_SHIFT) 17802be438aSmrg#define SST_2D_X_PATOFFSET_SHIFT 17 17902be438aSmrg#define SST_2D_Y_PATOFFSET_SHIFT 20 18002be438aSmrg#define SST_2D_SRC_FORMAT_SHIFT 16 18102be438aSmrg#define SST_2D_PIXFMT_1BPP (0<<SST_2D_SRC_FORMAT_SHIFT) 18202be438aSmrg#define SST_2D_SRC_COLORKEY_EX BIT(0) 18302be438aSmrg#define SST_2D_GO BIT(8) 18402be438aSmrg#define SST_2D_USECLIP1 BIT(23) 18502be438aSmrg 18602be438aSmrg/* 2D Registers */ 18702be438aSmrg#define SST_2D_OFFSET 0x100000 18802be438aSmrg#define SST_2D_CLIP0MIN SST_2D_OFFSET+0x8 18902be438aSmrg#define SST_2D_CLIP0MAX SST_2D_OFFSET+0xC 19002be438aSmrg#define SST_2D_DSTBASEADDR SST_2D_OFFSET+0x10 19102be438aSmrg#define SST_2D_DSTFORMAT SST_2D_OFFSET+0x14 19202be438aSmrg#define SST_2D_SRCCOLORKEYMIN SST_2D_OFFSET+0x18 19302be438aSmrg#define SST_2D_SRCCOLORKEYMAX SST_2D_OFFSET+0x1c 19402be438aSmrg#define SST_2D_DSTCOLORKEYMIN SST_2D_OFFSET+0x20 19502be438aSmrg#define SST_2D_DSTCOLORKEYMAX SST_2D_OFFSET+0x24 19602be438aSmrg#define SST_2D_BRESERROR0 SST_2D_OFFSET+0x28 19702be438aSmrg#define SST_2D_BRESERROR1 SST_2D_OFFSET+0x2c 19802be438aSmrg#define SST_2D_ROP SST_2D_OFFSET+0x30 19902be438aSmrg#define SST_2D_SRCBASEADDR SST_2D_OFFSET+0x34 20002be438aSmrg#define SST_2D_COMMANDEXTRA SST_2D_OFFSET+0x38 20102be438aSmrg#define SST_2D_LINESTIPPLE SST_2D_OFFSET+0x3c 20202be438aSmrg#define SST_2D_LINESTYLE SST_2D_OFFSET+0x40 20302be438aSmrg#define SST_2D_CLIP1MIN SST_2D_OFFSET+0x4C 20402be438aSmrg#define SST_2D_CLIP1MAX SST_2D_OFFSET+0x50 20502be438aSmrg#define SST_2D_SRCFORMAT SST_2D_OFFSET+0x54 20602be438aSmrg#define SST_2D_SRCSIZE SST_2D_OFFSET+0x58 20702be438aSmrg#define SST_2D_SRCXY SST_2D_OFFSET+0x5C 20802be438aSmrg#define SST_2D_COLORBACK SST_2D_OFFSET+0x60 20902be438aSmrg#define SST_2D_COLORFORE SST_2D_OFFSET+0x64 21002be438aSmrg#define SST_2D_DSTSIZE SST_2D_OFFSET+0x68 21102be438aSmrg#define SST_2D_DSTXY SST_2D_OFFSET+0x6C 21202be438aSmrg#define SST_2D_COMMAND SST_2D_OFFSET+0x70 21302be438aSmrg#define SST_2D_LAUNCH SST_2D_OFFSET+0x80 21402be438aSmrg#define SST_2D_PATTERN0 SST_2D_OFFSET+0x100 21502be438aSmrg#define SST_2D_PATTERN1 SST_2D_OFFSET+0x104 21602be438aSmrg 21702be438aSmrg/* 3D Commands */ 21802be438aSmrg#define SST_3D_NOP 0 21902be438aSmrg 22002be438aSmrg/* 3D Registers */ 22102be438aSmrg#define SST_3D_OFFSET 0x200000 22202be438aSmrg#define SST_3D_STATUS SST_3D_OFFSET+0 22302be438aSmrg#define SST_3D_LFBMODE SST_3D_OFFSET+0x114 22402be438aSmrg#define SST_3D_COMMAND SST_3D_OFFSET+0x120 22502be438aSmrg#define SST_3D_SWAPBUFFERCMD SST_3D_OFFSET+0x128 22602be438aSmrg#define SST_3D_SLICTRL SST_3D_OFFSET+0x20C 22702be438aSmrg#define SST_3D_AACTRL SST_3D_OFFSET+0x210 22802be438aSmrg#define SST_3D_SWAPPENDING SST_3D_OFFSET+0x24C 22902be438aSmrg#define SST_3D_LEFTOVERLAYBUF SST_3D_OFFSET+0x250 23002be438aSmrg#define SST_3D_RIGHTOVERLAYBUF SST_3D_OFFSET+0x254 23102be438aSmrg#define SST_3D_FBISWAPHISTORY SST_3D_OFFSET+0x258 23202be438aSmrg 23302be438aSmrg/* NAPALM REGISTERS */ 23402be438aSmrg#define CFG_PCI_COMMAND 4 23502be438aSmrg#define CFG_MEM0BASE 16 23602be438aSmrg#define CFG_MEM1BASE 20 23702be438aSmrg#define CFG_INIT_ENABLE 64 23802be438aSmrg#define CFG_PCI_DECODE 72 23902be438aSmrg#define CFG_VIDEO_CTRL0 128 24002be438aSmrg#define CFG_VIDEO_CTRL1 132 24102be438aSmrg#define CFG_VIDEO_CTRL2 136 24202be438aSmrg#define CFG_SLI_LFB_CTRL 140 24302be438aSmrg#define CFG_AA_ZBUFF_APERTURE 144 24402be438aSmrg#define CFG_AA_LFB_CTRL 148 24502be438aSmrg#define CFG_SLI_AA_MISC 172 24602be438aSmrg 24702be438aSmrg/* Pixel Formats */ 24802be438aSmrg#define GR_PIXFMT_I_8 0x0001 24902be438aSmrg#define GR_PIXFMT_AI_88 0x0002 25002be438aSmrg#define GR_PIXFMT_RGB_565 0x0003 25102be438aSmrg#define GR_PIXFMT_ARGB_1555 0x0004 25202be438aSmrg#define GR_PIXFMT_ARGB_8888 0x0005 25302be438aSmrg#define GR_PIXFMT_AA_2_RGB_565 0x0006 25402be438aSmrg#define GR_PIXFMT_AA_2_ARGB_1555 0x0007 25502be438aSmrg#define GR_PIXFMT_AA_2_ARGB_8888 0x0008 25602be438aSmrg#define GR_PIXFMT_AA_4_RGB_565 0x0009 25702be438aSmrg#define GR_PIXFMT_AA_4_ARGB_1555 0x000a 25802be438aSmrg#define GR_PIXFMT_AA_4_ARGB_8888 0x000b 25902be438aSmrg 26002be438aSmrg/* pciInit0 */ 26102be438aSmrg#define SST_PCI_STALL_ENABLE BIT(0) 26202be438aSmrg#define SST_PCI_LOWTHRESH_SHIFT 2 26302be438aSmrg#define SST_PCI_LOWTHRESH (0xF << SST_PCI_LOWTHRESH_SHIFT) 26402be438aSmrg#define SST_PCI_HARDCODE_BASE BIT(7) 26502be438aSmrg#define SST_PCI_READ_WS BIT(8) 26602be438aSmrg#define SST_PCI_WRITE_WS BIT(9) 26702be438aSmrg#define SST_PCI_DISABLE_IO BIT(11) 26802be438aSmrg#define SST_PCI_DISABLE_MEM BIT(12) 26902be438aSmrg#define SST_PCI_RETRY_INTERVAL_SHIFT 13 27002be438aSmrg#define SST_PCI_RETRY_INTERVAL (0x1F << SST_PCI_RETRY_INTERVAL_SHIFT) 27102be438aSmrg#define SST_PCI_INTERRUPT_ENABLE BIT(18) 27202be438aSmrg#define SST_PCI_TIMEOUT_ENABLE BIT(19) 27302be438aSmrg#define SST_PCI_FORCE_FB_HIGH BIT(26) 27402be438aSmrg 27502be438aSmrg#define SST_AA_CLK_INVERT BIT(20) 27602be438aSmrg#define SST_AA_CLK_DELAY_SHIFT 21 27702be438aSmrg#define SST_AA_CLK_DELAY (0xF<<SST_AA_CLK_DELAY_SHIFT) 27802be438aSmrg 27902be438aSmrg#define CFG_SWAP_ALGORITHM_VSYNC (0x00) 28002be438aSmrg#define CFG_SWAP_ALGORITHM_SYNCIN (0x01) 28102be438aSmrg#define CFG_SWAPBUFFER_ALGORITHM_SHIFT (25) 28202be438aSmrg 28302be438aSmrg/* CFG_INIT_ENABLE */ 28402be438aSmrg#define CFG_UPDATE_MEMBASE_LSBS BIT(10) 28502be438aSmrg#define CFG_SNOOP_EN BIT(11) 28602be438aSmrg#define CFG_SNOOP_MEMBASE0_EN BIT(12) 28702be438aSmrg#define CFG_SNOOP_MEMBASE1_EN BIT(13) 28802be438aSmrg#define CFG_SNOOP_SLAVE BIT(14) 28902be438aSmrg#define CFG_SNOOP_MEMBASE0_SHIFT 15 29002be438aSmrg#define CFG_SNOOP_MEMBASE0 (0x3FF<<CFG_SNOOP_MEMBASE0_SHIFT) 29102be438aSmrg#define CFG_SWAP_ALGORITHM BIT(25) 29202be438aSmrg#define CFG_SWAP_MASTER BIT(26) 29302be438aSmrg#define CFG_SWAP_QUICK BIT(27) 29402be438aSmrg#define CFG_MULTI_FUNCTION_DEV BIT(28) 29502be438aSmrg#define CFG_LFB_RD_CACHE_DISABLE BIT(29) 29602be438aSmrg#define CFG_SNOOP_FBIINIT_WR_EN BIT(30) 29702be438aSmrg#define CFG_SNOOP_MEMBASE0_DECODE_SHIFT 10 29802be438aSmrg#define CFG_SNOOP_MEMBASE0_DECODE (0xF<<CFG_SNOOP_MEMBASE0_DECODE_SHIFT) 29902be438aSmrg#define CFG_SNOOP_MEMBASE1_DECODE_SHIFT 14 30002be438aSmrg#define CFG_SNOOP_MEMBASE1_DECODE (0xF<<CFG_SNOOP_MEMBASE1_DECODE_SHIFT) 30102be438aSmrg#define CFG_SNOOP_MEMBASE1_SHIFT 18 30202be438aSmrg#define CFG_SNOOP_MEMBASE1 (0x3FF<<CFG_SNOOP_MEMBASE1_SHIFT) 30302be438aSmrg 30402be438aSmrg/* CFG_VIDEO_CTRL0 */ 30502be438aSmrg#define CFG_ENHANCED_VIDEO_EN BIT(0) 30602be438aSmrg#define CFG_ENHANCED_VIDEO_SLV BIT(1) 30702be438aSmrg#define CFG_VIDEO_TV_OUTPUT_EN BIT(2) 30802be438aSmrg#define CFG_VIDEO_LOCALMUX_SEL BIT(3) 30902be438aSmrg#define CFG_VIDEO_LOCALMUX_DESKTOP_PLUS_OVERLAY BIT(3) 31002be438aSmrg#define CFG_VIDEO_OTHERMUX_SEL_TRUE_SHIFT 4 31102be438aSmrg#define CFG_VIDEO_OTHERMUX_SEL_FALSE_SHIFT 6 31202be438aSmrg#define CFG_VIDEO_OTHERMUX_SEL_TRUE (0x3<<CFG_VIDEO_OTHERMUX_SEL_TRUE_SHIFT) 31302be438aSmrg#define CFG_VIDEO_OTHERMUX_SEL_FALSE (0x3<<CFG_VIDEO_OTHERMUX_SEL_FALSE_SHIFT) 31402be438aSmrg#define CFG_VIDEO_OTHERMUX_SEL_PIPE 0 31502be438aSmrg#define CFG_VIDEO_OTHERMUX_SEL_PIPE_PLUS_AAFIFO 1 31602be438aSmrg#define CFG_VIDEO_OTHERMUX_SEL_AAFIFO 2 31702be438aSmrg#define CFG_SLI_FETCH_COMPARE_INV BIT(8) 31802be438aSmrg#define CFG_SLI_CRT_COMPARE_INV BIT(9) 31902be438aSmrg#define CFG_SLI_AAFIFO_COMPARE_INV BIT(10) 32002be438aSmrg#define CFG_VIDPLL_SEL BIT(11) 32102be438aSmrg#define CFG_DIVIDE_VIDEO_SHIFT 12 32202be438aSmrg#define CFG_DIVIDE_VIDEO (0x7<<CFG_DIVIDE_VIDEO_SHIFT) 32302be438aSmrg#define CFG_DIVIDE_VIDEO_BY_1 (0x0<<CFG_DIVIDE_VIDEO_SHIFT) 32402be438aSmrg#define CFG_DIVIDE_VIDEO_BY_2 (0x1<<CFG_DIVIDE_VIDEO_SHIFT) 32502be438aSmrg#define CFG_DIVIDE_VIDEO_BY_4 (0x2<<CFG_DIVIDE_VIDEO_SHIFT) 32602be438aSmrg#define CFG_DIVIDE_VIDEO_BY_8 (0x3<<CFG_DIVIDE_VIDEO_SHIFT) 32702be438aSmrg#define CFG_DIVIDE_VIDEO_BY_16 (0x4<<CFG_DIVIDE_VIDEO_SHIFT) 32802be438aSmrg#define CFG_DIVIDE_VIDEO_BY_32 (0x5<<CFG_DIVIDE_VIDEO_SHIFT) 32902be438aSmrg#define CFG_ALWAYS_DRIVE_AA_BUS BIT(15) 33002be438aSmrg#define CFG_VSYNC_IN_DEL_SHIFT 16 33102be438aSmrg#define CFG_VSYNC_IN_DEL (0xF<<CFG_VSYNC_IN_DEL_SHIFT) 33202be438aSmrg#define CFG_DAC_VSYNC_TRISTATE BIT(24) 33302be438aSmrg#define CFG_DAC_HSYNC_TRISTATE BIT(25) 33402be438aSmrg 33502be438aSmrg/* CFG_VIDEO_CTRL1 */ 33602be438aSmrg#define CFG_SLI_RENDERMASK_FETCH_SHIFT 0 33702be438aSmrg#define CFG_SLI_RENDERMASK_FETCH (0xFF<<CFG_SLI_RENDERMASK_FETCH_SHIFT) 33802be438aSmrg#define CFG_SLI_COMPAREMASK_FETCH_SHIFT 8 33902be438aSmrg#define CFG_SLI_COMPAREMASK_FETCH (0xFF<<CFG_SLI_COMPAREMASK_FETCH_SHIFT) 34002be438aSmrg#define CFG_SLI_RENDERMASK_CRT_SHIFT 16 34102be438aSmrg#define CFG_SLI_RENDERMASK_CRT (0xFF<<CFG_SLI_RENDERMASK_CRT_SHIFT) 34202be438aSmrg#define CFG_SLI_COMPAREMASK_CRT_SHIFT 24 34302be438aSmrg#define CFG_SLI_COMPAREMASK_CRT (0xFF<<CFG_SLI_COMPAREMASK_CRT_SHIFT) 34402be438aSmrg 34502be438aSmrg/* CFG_VIDEO_CTRL2 */ 34602be438aSmrg#define CFG_SLI_RENDERMASK_AAFIFO_SHIFT 0 34702be438aSmrg#define CFG_SLI_RENDERMASK_AAFIFO (0xFF<<CFG_SLI_RENDERMASK_AAFIFO_SHIFT) 34802be438aSmrg#define CFG_SLI_COMPAREMASK_AAFIFO_SHIFT 8 34902be438aSmrg#define CFG_SLI_COMPAREMASK_AAFIFO (0xFF<<CFG_SLI_COMPAREMASK_AAFIFO_SHIFT) 35002be438aSmrg 35102be438aSmrg/* CFG_SLI_LFB_CTRL */ 35202be438aSmrg#define CFG_SLI_LFB_RENDERMASK_SHIFT 0 35302be438aSmrg#define CFG_SLI_LFB_RENDERMASK (0xFF<<CFG_SLI_LFB_RENDERMASK_SHIFT) 35402be438aSmrg#define CFG_SLI_LFB_COMPAREMASK_SHIFT 8 35502be438aSmrg#define CFG_SLI_LFB_COMPAREMASK (0xFF<<CFG_SLI_LFB_COMPAREMASK_SHIFT) 35602be438aSmrg#define CFG_SLI_LFB_SCANMASK_SHIFT 16 35702be438aSmrg#define CFG_SLI_LFB_SCANMASK (0xFF<<CFG_SLI_LFB_SCANMASK_SHIFT) 35802be438aSmrg#define CFG_SLI_LFB_NUMCHIPS_LOG2_SHIFT 24 35902be438aSmrg#define CFG_SLI_LFB_NUMCHIPS_LOG2 (0x3<<CFG_SLI_LFB_NUMCHIPS_LOG2_SHIFT) 36002be438aSmrg#define CFG_SLI_LFB_CPU_WR_EN BIT(26) 36102be438aSmrg#define CFG_SLI_LFB_DPTCH_WR_EN BIT(27) 36202be438aSmrg#define CFG_SLI_RD_EN BIT(28) 36302be438aSmrg 36402be438aSmrg/* CFG_AA_ZBUFF_APERTURE */ 36502be438aSmrg#define CFG_AA_DEPTH_BUFFER_BEG_SHIFT 0 36602be438aSmrg#define CFG_AA_DEPTH_BUFFER_BEG (0x7FFF<<CFG_AA_DEPTH_BUFFER_BEG_SHIFT) 36702be438aSmrg#define CFG_AA_DEPTH_BUFFER_END_SHIFT 16 36802be438aSmrg#define CFG_AA_DEPTH_BUFFER_END (0xFFFF<<CFG_AA_DEPTH_BUFFER_END_SHIFT) 36902be438aSmrg 37002be438aSmrg/* CFG_AA_LFB_CTRL */ 37102be438aSmrg#define CFG_AA_BASEADDR_SHIFT 0 37202be438aSmrg#define CFG_AA_BASEADDR (0x3FFFFFF<<CFG_AA_BASEADDR_SHIFT) 37302be438aSmrg#define CFG_AA_LFB_CPU_WR_EN BIT(26) 37402be438aSmrg#define CFG_AA_LFB_DPTCH_WR_EN BIT(27) 37502be438aSmrg#define CFG_AA_LFB_RD_EN BIT(28) 37602be438aSmrg#define CFG_AA_LFB_RD_FORMAT_SHIFT 29 37702be438aSmrg#define CFG_AA_LFB_RD_FORMAT (0x3<<CFG_AA_LFB_RD_FORMAT_SHIFT) 37802be438aSmrg#define CFG_AA_LFB_RD_FORMAT_16BPP (0x0<<CFG_AA_LFB_RD_FORMAT_SHIFT) 37902be438aSmrg#define CFG_AA_LFB_RD_FORMAT_15BPP (0x1<<CFG_AA_LFB_RD_FORMAT_SHIFT) 38002be438aSmrg#define CFG_AA_LFB_RD_FORMAT_32BPP (0x2<<CFG_AA_LFB_RD_FORMAT_SHIFT) 38102be438aSmrg#define CFG_AA_LFB_RD_DIVIDE_BY_4 BIT(31) 38202be438aSmrg 38302be438aSmrg/* CFG_SLI_AA_MISC */ 38402be438aSmrg#define CFG_VGA_VSYNC_OFFSET_SHIFT 0 38502be438aSmrg#define CFG_VGA_VSYNC_OFFSET (0x1ff<<CFG_VGA_VSYNC_OFFSET_SHIFT) 38602be438aSmrg#define CFG_VGA_VSYNC_OFFSET_PIXELS_SHIFT 0 38702be438aSmrg#define CFG_VGA_VSYNC_OFFSET_CHARS_SHIFT 3 38802be438aSmrg#define CFG_VGA_VSYNC_OFFSET_HXTRA_SHIFT 6 38902be438aSmrg#define CFG_HOTPLUG_SHIFT 9 39002be438aSmrg#define CFG_HOTPLUG_TRISTATE (0x0<<CFG_HOTPLUG_SHIFT) 39102be438aSmrg#define CFG_HOTPLUG_DRIVE0 (0x2<<CFG_HOTPLUG_SHIFT) 39202be438aSmrg#define CFG_HOTPLUG_DRIVE1 (0x3<<CFG_HOTPLUG_SHIFT) 39302be438aSmrg#define CFG_AA_LFB_RD_SLV_WAIT BIT(12) 39402be438aSmrg 39502be438aSmrg/* SLICTL_3D_CTRL */ 39602be438aSmrg#define SLICTL_3D_RENDERMASK_SHIFT 0 39702be438aSmrg#define SLICTL_3D_RENDERMASK (0xFF<<SLICTL_3D_RENDERMASK_SHIFT) 39802be438aSmrg#define SLICTL_3D_COMPAREMASK_SHIFT 8 39902be438aSmrg#define SLICTL_3D_COMPAREMASK (0xFF<<SLICTL_3D_COMPAREMASK_SHIFT) 40002be438aSmrg#define SLICTL_3D_SCANMASK_SHIFT 16 40102be438aSmrg#define SLICTL_3D_SCANMASK (0xFF<<SLICTL_3D_SCANMASK_SHIFT) 40202be438aSmrg#define SLICTL_3D_NUMCHIPS_LOG2_SHIFT 24 40302be438aSmrg#define SLICTL_3D_NUMCHIPS_LOG2 (0x3<<SLICTL_3D_NUMCHIPS_LOG2_SHIFT) 40402be438aSmrg#define SLICTL_3D_EN BIT(26) 40502be438aSmrg 40602be438aSmrg#define SST_POWERDOWN_DAC BIT(8) 40702be438aSmrg 40802be438aSmrg#endif 409