📄 i810_reg.h
字号:
#define I830_VSYNCEND_MASK 0xfff0000#define I830_VSYNCSTART_MASK 0xfff#define I830_PIPEA_HORZ_MASK 0x7ff0000#define I830_PIPEA_VERT_MASK 0x7ff#define ADPA 0x61100#define ADPA_DAC_ENABLE (1<<31)#define ADPA_DAC_DISABLE 0#define ADPA_PIPE_SELECT_MASK (1<<30)#define ADPA_PIPE_A_SELECT 0#define ADPA_PIPE_B_SELECT (1<<30)#define ADPA_USE_VGA_HVPOLARITY (1<<15)#define ADPA_SETS_HVPOLARITY 0#define ADPA_VSYNC_CNTL_DISABLE (1<<11)#define ADPA_VSYNC_CNTL_ENABLE 0#define ADPA_HSYNC_CNTL_DISABLE (1<<10)#define ADPA_HSYNC_CNTL_ENABLE 0#define ADPA_VSYNC_ACTIVE_HIGH (1<<4)#define ADPA_VSYNC_ACTIVE_LOW 0#define ADPA_HSYNC_ACTIVE_HIGH (1<<3)#define ADPA_HSYNC_ACTIVE_LOW 0#define DVOA 0x61120#define DVOB 0x61140#define DVOC 0x61160#define DVO_ENABLE (1<<31)#define DVOA_SRCDIM 0x61124#define DVOB_SRCDIM 0x61144#define DVOC_SRCDIM 0x61164#define LVDS 0x61180#define PIPEACONF 0x70008#define PIPEACONF_ENABLE (1<<31)#define PIPEACONF_DISABLE 0#define PIPEACONF_DOUBLE_WIDE (1<<30)#define PIPEACONF_SINGLE_WIDE 0#define PIPEACONF_PIPE_UNLOCKED 0#define PIPEACONF_PIPE_LOCKED (1<<25)#define PIPEACONF_PALETTE 0#define PIPEACONF_GAMMA (1<<24)#define PIPEBCONF 0x71008#define PIPEBCONF_ENABLE (1<<31)#define PIPEBCONF_DISABLE 0#define PIPEBCONF_DOUBLE_WIDE (1<<30)#define PIPEBCONF_DISABLE 0#define PIPEBCONF_GAMMA (1<<24)#define PIPEBCONF_PALETTE 0#define DSPACNTR 0x70180#define DSPBCNTR 0x71180#define DISPLAY_PLANE_ENABLE (1<<31)#define DISPLAY_PLANE_DISABLE 0#define DISPPLANE_GAMMA_ENABLE (1<<30)#define DISPPLANE_GAMMA_DISABLE 0#define DISPPLANE_PIXFORMAT_MASK (0xf<<26)#define DISPPLANE_8BPP (0x2<<26)#define DISPPLANE_15_16BPP (0x4<<26)#define DISPPLANE_16BPP (0x5<<26)#define DISPPLANE_32BPP_NO_ALPHA (0x6<<26)#define DISPPLANE_32BPP (0x7<<26)#define DISPPLANE_STEREO_ENABLE (1<<25)#define DISPPLANE_STEREO_DISABLE 0#define DISPPLANE_SEL_PIPE_MASK (1<<24)#define DISPPLANE_SEL_PIPE_A 0#define DISPPLANE_SEL_PIPE_B (1<<24)#define DISPPLANE_SRC_KEY_ENABLE (1<<22)#define DISPPLANE_SRC_KEY_DISABLE 0#define DISPPLANE_LINE_DOUBLE (1<<20)#define DISPPLANE_NO_LINE_DOUBLE 0#define DISPPLANE_STEREO_POLARITY_FIRST 0#define DISPPLANE_STEREO_POLARITY_SECOND (1<<18)/* plane B only */#define DISPPLANE_ALPHA_TRANS_ENABLE (1<<15)#define DISPPLANE_ALPHA_TRANS_DISABLE 0#define DISPPLANE_SPRITE_ABOVE_DISPLAYA 0#define DISPPLANE_SPRITE_ABOVE_OVERLAY (1)#define DSPABASE 0x70184#define DSPASTRIDE 0x70188#define DSPBBASE 0x71184#define DSPBADDR DSPBBASE#define DSPBSTRIDE 0x71188#define DSPAPOS 0x7018C /* reserved */#define DSPASIZE 0x70190#define DSPBPOS 0x7118C#define DSPBSIZE 0x71190/* Various masks for reserved bits, etc. */#define I830_FWATER1_MASK (~((1<<11)|(1<<10)|(1<<9)| \ (1<<8)|(1<<26)|(1<<25)|(1<<24)|(1<<5)|(1<<4)|(1<<3)| \ (1<<2)|(1<<1)|1|(1<<20)|(1<<19)|(1<<18)|(1<<17)|(1<<16)))#define I830_FWATER2_MASK ~(0)#define DV0A_RESERVED ((1<<26)|(1<<25)|(1<<24)|(1<<23)|(1<<22)|(1<<21)|(1<<20)|(1<<19)|(1<<18)|(1<<16)|(1<<5)|(1<<1)|1)#define DV0B_RESERVED ((1<<27)|(1<<26)|(1<<25)|(1<<24)|(1<<23)|(1<<22)|(1<<21)|(1<<20)|(1<<19)|(1<<18)|(1<<16)|(1<<5)|(1<<1)|1)#define VGA0_N_DIVISOR_MASK ((1<<21)|(1<<20)|(1<<19)|(1<<18)|(1<<17)|(1<<16))#define VGA0_M1_DIVISOR_MASK ((1<<13)|(1<<12)|(1<<11)|(1<<10)|(1<<9)|(1<<8))#define VGA0_M2_DIVISOR_MASK ((1<<5)|(1<<4)|(1<<3)|(1<<2)|(1<<1)|1)#define VGA0_M1M2N_RESERVED ~(VGA0_N_DIVISOR_MASK|VGA0_M1_DIVISOR_MASK|VGA0_M2_DIVISOR_MASK)#define VGA0_POSTDIV_MASK ((1<<7)|(1<<5)|(1<<4)|(1<<3)|(1<<2)|(1<<1)|1)#define VGA1_POSTDIV_MASK ((1<<15)|(1<<13)|(1<<12)|(1<<11)|(1<<10)|(1<<9)|(1<<8))#define VGA_POSTDIV_RESERVED ~(VGA0_POSTDIV_MASK|VGA1_POSTDIV_MASK|(1<<7)|(1<<15))#define DPLLA_POSTDIV_MASK ((1<<23)|(1<<21)|(1<<20)|(1<<19)|(1<<18)|(1<<17)|(1<<16))#define DPLLA_RESERVED ((1<<27)|(1<<26)|(1<<25)|(1<<24)|(1<<22)|(1<<15)|(1<<12)|(1<<11)|(1<<10)|(1<<9)|(1<<8)|(1<<7)|(1<<6)|(1<<5)|(1<<4)|(1<<3)|(1<<2)|(1<<1)|1)#define ADPA_RESERVED ((1<<2)|(1<<1)|1|(1<<9)|(1<<8)|(1<<7)|(1<<6)|(1<<5)|(1<<30)|(1<<29)|(1<<28)|(1<<27)|(1<<26)|(1<<25)|(1<<24)|(1<<23)|(1<<22)|(1<<21)|(1<<20)|(1<<19)|(1<<18)|(1<<17)|(1<<16))#define SUPER_WORD 32#define BURST_A_MASK ((1<<11)|(1<<10)|(1<<9)|(1<<8))#define BURST_B_MASK ((1<<26)|(1<<25)|(1<<24))#define WATER_A_MASK ((1<<5)|(1<<4)|(1<<3)|(1<<2)|(1<<1)|1)#define WATER_B_MASK ((1<<20)|(1<<19)|(1<<18)|(1<<17)|(1<<16))#define WATER_RESERVED ((1<<31)|(1<<30)|(1<<29)|(1<<28)|(1<<27)|(1<<23)|(1<<22)|(1<<21)|(1<<15)|(1<<14)|(1<<13)|(1<<12)|(1<<7)|(1<<6))#define PIPEACONF_RESERVED ((1<<29)|(1<<28)|(1<<27)|(1<<23)|(1<<22)|(1<<21)|(1<<20)|(1<<19)|(1<<18)|(1<<17)|(1<<16)|0xffff)#define PIPEBCONF_RESERVED ((1<<30)|(1<<29)|(1<<28)|(1<<27)|(1<<26)|(1<<25)|(1<<23)|(1<<22)|(1<<21)|(1<<20)|(1<<19)|(1<<18)|(1<<17)|(1<<16)|0xffff)#define DSPACNTR_RESERVED ((1<<23)|(1<<19)|(1<<17)|(1<<16)|0xffff)#define DSPBCNTR_RESERVED ((1<<23)|(1<<19)|(1<<17)|(1<<16)|0x7ffe)#define I830_GMCH_CTRL 0x52#define I830_GMCH_ENABLED 0x4#define I830_GMCH_MEM_MASK 0x1#define I830_GMCH_MEM_64M 0x1#define I830_GMCH_MEM_128M 0#define I830_GMCH_GMS_MASK 0x70#define I830_GMCH_GMS_DISABLED 0x00#define I830_GMCH_GMS_LOCAL 0x10#define I830_GMCH_GMS_STOLEN_512 0x20#define I830_GMCH_GMS_STOLEN_1024 0x30#define I830_GMCH_GMS_STOLEN_8192 0x40#define I830_RDRAM_CHANNEL_TYPE 0x03010#define I830_RDRAM_ND(x) (((x) & 0x20) >> 5)#define I830_RDRAM_DDT(x) (((x) & 0x18) >> 3)#define I855_GMCH_GMS_MASK (0x7 << 4)#define I855_GMCH_GMS_DISABLED 0x00#define I855_GMCH_GMS_STOLEN_1M (0x1 << 4)#define I855_GMCH_GMS_STOLEN_4M (0x2 << 4)#define I855_GMCH_GMS_STOLEN_8M (0x3 << 4)#define I855_GMCH_GMS_STOLEN_16M (0x4 << 4)#define I855_GMCH_GMS_STOLEN_32M (0x5 << 4)#define I915G_GMCH_GMS_STOLEN_48M (0x6 << 4)#define I915G_GMCH_GMS_STOLEN_64M (0x7 << 4)#define I85X_CAPID 0x44#define I85X_VARIANT_MASK 0x7#define I85X_VARIANT_SHIFT 5#define I855_GME 0x0#define I855_GM 0x4#define I852_GME 0x2#define I852_GM 0x5/* BLT commands */#define COLOR_BLT_CMD ((2<<29)|(0x40<<22)|(0x3))#define COLOR_BLT_WRITE_ALPHA (1<<21)#define COLOR_BLT_WRITE_RGB (1<<20)#define XY_COLOR_BLT_CMD ((2<<29)|(0x50<<22)|(0x4))#define XY_COLOR_BLT_WRITE_ALPHA (1<<21)#define XY_COLOR_BLT_WRITE_RGB (1<<20)#define XY_SETUP_CLIP_BLT_CMD ((2<<29)|(3<<22)|1)#define XY_SRC_COPY_BLT_CMD ((2<<29)|(0x53<<22)|6)#define XY_SRC_COPY_BLT_WRITE_ALPHA (1<<21)#define XY_SRC_COPY_BLT_WRITE_RGB (1<<20)#define SRC_COPY_BLT_CMD ((2<<29)|(0x43<<22)|0x4)#define SRC_COPY_BLT_WRITE_ALPHA (1<<21)#define SRC_COPY_BLT_WRITE_RGB (1<<20)#define XY_MONO_PAT_BLT_CMD ((0x2<<29)|(0x52<<22)|0x7)#define XY_MONO_PAT_VERT_SEED ((1<<10)|(1<<9)|(1<<8))#define XY_MONO_PAT_HORT_SEED ((1<<14)|(1<<13)|(1<<12))#define XY_MONO_PAT_BLT_WRITE_ALPHA (1<<21)#define XY_MONO_PAT_BLT_WRITE_RGB (1<<20)#define XY_MONO_SRC_BLT_CMD ((0x2<<29)|(0x54<<22)|(0x6))#define XY_MONO_SRC_BLT_WRITE_ALPHA (1<<21)#define XY_MONO_SRC_BLT_WRITE_RGB (1<<20)/* 3d state */#define STATE3D_FOG_MODE ((3<<29)|(0x1d<<24)|(0x89<<16)|2)#define FOG_MODE_VERTEX (1<<31)#define STATE3D_MAP_COORD_TRANSFORM ((3<<29)|(0x1d<<24)|(0x8c<<16))#define DISABLE_TEX_TRANSFORM (1<<28)#define TEXTURE_SET(x) (x<<29)#define STATE3D_RASTERIZATION_RULES ((3<<29)|(0x07<<24))#define POINT_RASTER_ENABLE (1<<15)#define POINT_RASTER_OGL (1<<13)#define STATE3D_VERTEX_TRANSFORM ((3<<29)|(0x1d<<24)|(0x8b<<16))#define DISABLE_VIEWPORT_TRANSFORM (1<<31)#define DISABLE_PERSPECTIVE_DIVIDE (1<<29)#define MI_SET_CONTEXT (0x18<<23)#define CTXT_NO_RESTORE (1)#define CTXT_PALETTE_SAVE_DISABLE (1<<3)#define CTXT_PALETTE_RESTORE_DISABLE (1<<2)/* Dword 0 */#define MI_VERTEX_BUFFER (0x17<<23)#define MI_VERTEX_BUFFER_IDX(x) (x<<20)#define MI_VERTEX_BUFFER_PITCH(x) (x<<13)#define MI_VERTEX_BUFFER_WIDTH(x) (x<<6)/* Dword 1 */#define MI_VERTEX_BUFFER_DISABLE (1)/* Overlay Flip */#define MI_OVERLAY_FLIP (0x11<<23)#define MI_OVERLAY_FLIP_CONTINUE (0<<21)#define MI_OVERLAY_FLIP_ON (1<<21)#define MI_OVERLAY_FLIP_OFF (2<<21)/* Wait for Events */#define MI_WAIT_FOR_EVENT (0x03<<23)#define MI_WAIT_FOR_OVERLAY_FLIP (1<<16)/* Flush */#define MI_FLUSH (0x04<<23)#define MI_WRITE_DIRTY_STATE (1<<4)#define MI_END_SCENE (1<<3)#define MI_INHIBIT_RENDER_CACHE_FLUSH (1<<2)#define MI_INVALIDATE_MAP_CACHE (1<<0)/* Noop */#define MI_NOOP 0x00#define MI_NOOP_WRITE_ID (1<<22)#define MI_NOOP_ID_MASK (1<<22 - 1)#define STATE3D_COLOR_FACTOR ((0x3<<29)|(0x1d<<24)|(0x01<<16))/* STATE3D_FOG_MODE stuff */#define ENABLE_FOG_SOURCE (1<<27)#define ENABLE_FOG_CONST (1<<24)#define ENABLE_FOG_DENSITY (1<<23)#define MAX_DISPLAY_PIPES 2typedef enum { CrtIndex = 0, TvIndex, DfpIndex, LfpIndex, Tv2Index, Dfp2Index, UnknownIndex, Unknown2Index, NumDisplayTypes, NumKnownDisplayTypes = UnknownIndex} DisplayType;/* What's connected to the pipes (as reported by the BIOS) */#define PIPE_ACTIVE_MASK 0xff#define PIPE_CRT_ACTIVE (1 << CrtIndex)#define PIPE_TV_ACTIVE (1 << TvIndex)#define PIPE_DFP_ACTIVE (1 << DfpIndex)#define PIPE_LCD_ACTIVE (1 << LfpIndex)#define PIPE_TV2_ACTIVE (1 << Tv2Index)#define PIPE_DFP2_ACTIVE (1 << Dfp2Index)#define PIPE_UNKNOWN_ACTIVE ((1 << UnknownIndex) | \ (1 << Unknown2Index))#define PIPE_SIZED_DISP_MASK (PIPE_DFP_ACTIVE | \ PIPE_LCD_ACTIVE | \ PIPE_DFP2_ACTIVE)#define PIPE_A_SHIFT 0#define PIPE_B_SHIFT 8#define PIPE_SHIFT(n) ((n) == 0 ? \ PIPE_A_SHIFT : PIPE_B_SHIFT)/* * Some BIOS scratch area registers. The 845 (and 830?) store the amount * of video memory available to the BIOS in SWF1. */#define SWF0 0x71410#define SWF1 0x71414#define SWF2 0x71418#define SWF3 0x7141c#define SWF4 0x71420#define SWF5 0x71424#define SWF6 0x71428/* * 855 scratch registers. */#define SWF00 0x70410#define SWF01 0x70414#define SWF02 0x70418#define SWF03 0x7041c#define SWF04 0x70420#define SWF05 0x70424#define SWF06 0x70428#define SWF10 SWF0#define SWF11 SWF1#define SWF12 SWF2#define SWF13 SWF3#define SWF14 SWF4#define SWF15 SWF5#define SWF16 SWF6#define SWF30 0x72414#define SWF31 0x72418#define SWF32 0x7241c/* * Overlay registers. These are overlay registers accessed via MMIO. * Those loaded via the overlay register page are defined in i830_video.c. */#define OVADD 0x30000#define DOVSTA 0x30008#define OC_BUF (0x3<<20)#define OGAMC5 0x30010#define OGAMC4 0x30014#define OGAMC3 0x30018#define OGAMC2 0x3001c#define OGAMC1 0x30020#define OGAMC0 0x30024/* * Palette registers */#define PALETTE_A 0x0a000#define PALETTE_B 0x0a800#endif /* _I810_REG_H */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -