mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-08 09:08:10 +02:00
R300: clean up GA registers
This commit is contained in:
parent
de3fc8b1c4
commit
f86baae1a7
3 changed files with 176 additions and 176 deletions
|
|
@ -363,21 +363,21 @@ void r300InitCmdBuf(r300ContextPtr r300)
|
|||
ALLOC_STATE(txe, always, R300_TXE_CMDSIZE, 0);
|
||||
r300->hw.txe.cmd[R300_TXE_CMD_0] = cmdpacket0(R300_TX_ENABLE, 1);
|
||||
ALLOC_STATE(ga_point_s0, always, 5, 0);
|
||||
r300->hw.ga_point_s0.cmd[0] = cmdpacket0(GA_POINT_S0, 4);
|
||||
r300->hw.ga_point_s0.cmd[0] = cmdpacket0(R300_GA_POINT_S0, 4);
|
||||
ALLOC_STATE(ga_triangle_stipple, always, 2, 0);
|
||||
r300->hw.ga_triangle_stipple.cmd[0] = cmdpacket0(GA_TRIANGLE_STIPPLE, 1);
|
||||
r300->hw.ga_triangle_stipple.cmd[0] = cmdpacket0(R300_GA_TRIANGLE_STIPPLE, 1);
|
||||
ALLOC_STATE(ps, always, R300_PS_CMDSIZE, 0);
|
||||
r300->hw.ps.cmd[0] = cmdpacket0(R300_GA_POINT_SIZE, 1);
|
||||
ALLOC_STATE(ga_point_minmax, always, 4, 0);
|
||||
r300->hw.ga_point_minmax.cmd[0] = cmdpacket0(R300_GA_POINT_MINMAX, 3);
|
||||
ALLOC_STATE(lcntl, always, 2, 0);
|
||||
r300->hw.lcntl.cmd[0] = cmdpacket0(GA_LINE_CNTL, 1);
|
||||
r300->hw.lcntl.cmd[0] = cmdpacket0(R300_GA_LINE_CNTL, 1);
|
||||
ALLOC_STATE(ga_line_stipple, always, 4, 0);
|
||||
r300->hw.ga_line_stipple.cmd[0] = cmdpacket0(R300_GA_LINE_STIPPLE_VALUE, 3);
|
||||
ALLOC_STATE(shade, always, 5, 0);
|
||||
r300->hw.shade.cmd[0] = cmdpacket0(GA_ENHANCE, 4);
|
||||
r300->hw.shade.cmd[0] = cmdpacket0(R300_GA_ENHANCE, 4);
|
||||
ALLOC_STATE(polygon_mode, always, 4, 0);
|
||||
r300->hw.polygon_mode.cmd[0] = cmdpacket0(GA_POLY_MODE, 3);
|
||||
r300->hw.polygon_mode.cmd[0] = cmdpacket0(R300_GA_POLY_MODE, 3);
|
||||
ALLOC_STATE(fogp, always, 3, 0);
|
||||
r300->hw.fogp.cmd[0] = cmdpacket0(R300_RE_FOG_SCALE, 2);
|
||||
ALLOC_STATE(zbias_cntl, always, 2, 0);
|
||||
|
|
|
|||
|
|
@ -768,25 +768,25 @@ USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|||
# define R500_TX_DIRECTION_VERITCAL (1<<27)
|
||||
|
||||
/* S Texture Coordinate of Vertex 0 for Point texture stuffing (LLC) */
|
||||
#define GA_POINT_S0 0x4200
|
||||
#define R300_GA_POINT_S0 0x4200
|
||||
|
||||
/* T Texture Coordinate of Vertex 0 for Point texture stuffing (LLC) */
|
||||
#define GA_POINT_T0 0x4204
|
||||
#define R300_GA_POINT_T0 0x4204
|
||||
|
||||
/* S Texture Coordinate of Vertex 2 for Point texture stuffing (URC) */
|
||||
#define GA_POINT_S1 0x4208
|
||||
#define R300_GA_POINT_S1 0x4208
|
||||
|
||||
/* T Texture Coordinate of Vertex 2 for Point texture stuffing (URC) */
|
||||
#define GA_POINT_T1 0x420c
|
||||
#define R300_GA_POINT_T1 0x420c
|
||||
|
||||
/* Specifies amount to shift integer position of vertex (screen space) before
|
||||
* converting to float for triangle stipple.
|
||||
*/
|
||||
#define GA_TRIANGLE_STIPPLE 0x4214
|
||||
# define GA_TRIANGLE_STIPPLE_X_SHIFT_SHIFT 0
|
||||
# define GA_TRIANGLE_STIPPLE_X_SHIFT_MASK 0x0000000f
|
||||
# define GA_TRIANGLE_STIPPLE_Y_SHIFT_SHIFT 16
|
||||
# define GA_TRIANGLE_STIPPLE_Y_SHIFT_MASK 0x000f0000
|
||||
#define R300_GA_TRIANGLE_STIPPLE 0x4214
|
||||
# define R300_GA_TRIANGLE_STIPPLE_X_SHIFT_SHIFT 0
|
||||
# define R300_GA_TRIANGLE_STIPPLE_X_SHIFT_MASK 0x0000000f
|
||||
# define R300_GA_TRIANGLE_STIPPLE_Y_SHIFT_SHIFT 16
|
||||
# define R300_GA_TRIANGLE_STIPPLE_Y_SHIFT_MASK 0x000f0000
|
||||
|
||||
/* The pointsize is given in multiples of 6. The pointsize can be enormous:
|
||||
* Clear() renders a single point that fills the entire framebuffer.
|
||||
|
|
@ -801,16 +801,16 @@ USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|||
# define R300_POINTSIZE_MAX (R300_POINTSIZE_Y_MASK / 6)
|
||||
|
||||
/* Blue fill color */
|
||||
#define GA_FILL_R 0x4220
|
||||
#define R500_GA_FILL_R 0x4220
|
||||
|
||||
/* Blue fill color */
|
||||
#define GA_FILL_G 0x4224
|
||||
#define R500_GA_FILL_G 0x4224
|
||||
|
||||
/* Blue fill color */
|
||||
#define GA_FILL_B 0x4228
|
||||
#define R500_GA_FILL_B 0x4228
|
||||
|
||||
/* Alpha fill color */
|
||||
#define GA_FILL_A 0x422c
|
||||
#define R500_GA_FILL_A 0x422c
|
||||
|
||||
|
||||
/* Specifies maximum and minimum point & sprite sizes for per vertex size
|
||||
|
|
@ -831,159 +831,159 @@ USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|||
* VE: vertical or horizontal
|
||||
* HO & VE: no classification
|
||||
*/
|
||||
#define GA_LINE_CNTL 0x4234
|
||||
# define GA_LINE_CNTL_WIDTH_SHIFT 0
|
||||
# define GA_LINE_CNTL_WIDTH_MASK 0x0000ffff
|
||||
# define GA_LINE_CNTL_END_TYPE_HOR (0 << 16)
|
||||
# define GA_LINE_CNTL_END_TYPE_VER (1 << 16)
|
||||
# define GA_LINE_CNTL_END_TYPE_SQR (2 << 16) /* horizontal or vertical depending upon slope */
|
||||
# define GA_LINE_CNTL_END_TYPE_COMP (3 << 16) /* Computed (perpendicular to slope) */
|
||||
# define GA_LINE_CNTL_SORT_NO (0 << 18)
|
||||
# define GA_LINE_CNTL_SORT_MINX_MINY (1 << 18)
|
||||
#define R300_GA_LINE_CNTL 0x4234
|
||||
# define R300_GA_LINE_CNTL_WIDTH_SHIFT 0
|
||||
# define R300_GA_LINE_CNTL_WIDTH_MASK 0x0000ffff
|
||||
# define R300_GA_LINE_CNTL_END_TYPE_HOR (0 << 16)
|
||||
# define R300_GA_LINE_CNTL_END_TYPE_VER (1 << 16)
|
||||
# define R300_GA_LINE_CNTL_END_TYPE_SQR (2 << 16) /* horizontal or vertical depending upon slope */
|
||||
# define R300_GA_LINE_CNTL_END_TYPE_COMP (3 << 16) /* Computed (perpendicular to slope) */
|
||||
# define R500_GA_LINE_CNTL_SORT_NO (0 << 18)
|
||||
# define R500_GA_LINE_CNTL_SORT_MINX_MINY (1 << 18)
|
||||
/** TODO: looks wrong */
|
||||
# define R300_LINESIZE_MAX (GA_LINE_CNTL_WIDTH_MASK / 6)
|
||||
# define R300_LINESIZE_MAX (R300_GA_LINE_CNTL_WIDTH_MASK / 6)
|
||||
/** TODO: looks wrong */
|
||||
# define R300_LINE_CNT_HO (1 << 16)
|
||||
/** TODO: looks wrong */
|
||||
# define R300_LINE_CNT_VE (1 << 17)
|
||||
|
||||
/* Line Stipple configuration information. */
|
||||
#define GA_LINE_STIPPLE_CONFIG 0x4238
|
||||
# define GA_LINE_STIPPLE_CONFIG_LINE_RESET_NO (0 << 0)
|
||||
# define GA_LINE_STIPPLE_CONFIG_LINE_RESET_LINE (1 << 0)
|
||||
# define GA_LINE_STIPPLE_CONFIG_LINE_RESET_PACKET (2 << 0)
|
||||
# define GA_LINE_STIPPLE_CONFIG_STIPPLE_SCALE_SHIFT 2
|
||||
# define GA_LINE_STIPPLE_CONFIG_STIPPLE_SCALE_MASK 0xfffffffc
|
||||
#define R300_GA_LINE_STIPPLE_CONFIG 0x4238
|
||||
# define R300_GA_LINE_STIPPLE_CONFIG_LINE_RESET_NO (0 << 0)
|
||||
# define R300_GA_LINE_STIPPLE_CONFIG_LINE_RESET_LINE (1 << 0)
|
||||
# define R300_GA_LINE_STIPPLE_CONFIG_LINE_RESET_PACKET (2 << 0)
|
||||
# define R300_GA_LINE_STIPPLE_CONFIG_STIPPLE_SCALE_SHIFT 2
|
||||
# define R300_GA_LINE_STIPPLE_CONFIG_STIPPLE_SCALE_MASK 0xfffffffc
|
||||
|
||||
/* Used to load US instructions and constants */
|
||||
#define R500_GA_US_VECTOR_INDEX 0x4250
|
||||
# define GA_US_VECTOR_INDEX_SHIFT 0
|
||||
# define GA_US_VECTOR_INDEX_MASK 0x000000ff
|
||||
# define GA_US_VECTOR_INDEX_TYPE_INSTR (0 << 16)
|
||||
# define GA_US_VECTOR_INDEX_TYPE_CONST (1 << 16)
|
||||
# define GA_US_VECTOR_INDEX_CLAMP_NO (0 << 17)
|
||||
# define GA_US_VECTOR_INDEX_CLAMP_CONST (1 << 17)
|
||||
# define R500_GA_US_VECTOR_INDEX_SHIFT 0
|
||||
# define R500_GA_US_VECTOR_INDEX_MASK 0x000000ff
|
||||
# define R500_GA_US_VECTOR_INDEX_TYPE_INSTR (0 << 16)
|
||||
# define R500_GA_US_VECTOR_INDEX_TYPE_CONST (1 << 16)
|
||||
# define R500_GA_US_VECTOR_INDEX_CLAMP_NO (0 << 17)
|
||||
# define R500_GA_US_VECTOR_INDEX_CLAMP_CONST (1 << 17)
|
||||
|
||||
/* Data register for loading US instructions and constants */
|
||||
#define R500_GA_US_VECTOR_DATA 0x4254
|
||||
|
||||
/* Specifies color properties and mappings of textures. */
|
||||
#define GA_COLOR_CONTROL_PS3 0x4258
|
||||
# define TEX0_SHADING_PS3_SOLID (0 << 0)
|
||||
# define TEX0_SHADING_PS3_FLAT (1 << 0)
|
||||
# define TEX0_SHADING_PS3_GOURAUD (2 << 0)
|
||||
# define TEX1_SHADING_PS3_SOLID (0 << 2)
|
||||
# define TEX1_SHADING_PS3_FLAT (1 << 2)
|
||||
# define TEX1_SHADING_PS3_GOURAUD (2 << 2)
|
||||
# define TEX2_SHADING_PS3_SOLID (0 << 4)
|
||||
# define TEX2_SHADING_PS3_FLAT (1 << 4)
|
||||
# define TEX2_SHADING_PS3_GOURAUD (2 << 4)
|
||||
# define TEX3_SHADING_PS3_SOLID (0 << 6)
|
||||
# define TEX3_SHADING_PS3_FLAT (1 << 6)
|
||||
# define TEX3_SHADING_PS3_GOURAUD (2 << 6)
|
||||
# define TEX4_SHADING_PS3_SOLID (0 << 8)
|
||||
# define TEX4_SHADING_PS3_FLAT (1 << 8)
|
||||
# define TEX4_SHADING_PS3_GOURAUD (2 << 8)
|
||||
# define TEX5_SHADING_PS3_SOLID (0 << 10)
|
||||
# define TEX5_SHADING_PS3_FLAT (1 << 10)
|
||||
# define TEX5_SHADING_PS3_GOURAUD (2 << 10)
|
||||
# define TEX6_SHADING_PS3_SOLID (0 << 12)
|
||||
# define TEX6_SHADING_PS3_FLAT (1 << 12)
|
||||
# define TEX6_SHADING_PS3_GOURAUD (2 << 12)
|
||||
# define TEX7_SHADING_PS3_SOLID (0 << 14)
|
||||
# define TEX7_SHADING_PS3_FLAT (1 << 14)
|
||||
# define TEX7_SHADING_PS3_GOURAUD (2 << 14)
|
||||
# define TEX8_SHADING_PS3_SOLID (0 << 16)
|
||||
# define TEX8_SHADING_PS3_FLAT (1 << 16)
|
||||
# define TEX8_SHADING_PS3_GOURAUD (2 << 16)
|
||||
# define TEX9_SHADING_PS3_SOLID (0 << 18)
|
||||
# define TEX9_SHADING_PS3_FLAT (1 << 18)
|
||||
# define TEX9_SHADING_PS3_GOURAUD (2 << 18)
|
||||
# define TEX10_SHADING_PS3_SOLID (0 << 20)
|
||||
# define TEX10_SHADING_PS3_FLAT (1 << 20)
|
||||
# define TEX10_SHADING_PS3_GOURAUD (2 << 20)
|
||||
# define COLOR0_TEX_OVERRIDE_NO (0 << 22)
|
||||
# define COLOR0_TEX_OVERRIDE_TEX_0 (1 << 22)
|
||||
# define COLOR0_TEX_OVERRIDE_TEX_1 (2 << 22)
|
||||
# define COLOR0_TEX_OVERRIDE_TEX_2 (3 << 22)
|
||||
# define COLOR0_TEX_OVERRIDE_TEX_3 (4 << 22)
|
||||
# define COLOR0_TEX_OVERRIDE_TEX_4 (5 << 22)
|
||||
# define COLOR0_TEX_OVERRIDE_TEX_5 (6 << 22)
|
||||
# define COLOR0_TEX_OVERRIDE_TEX_6 (7 << 22)
|
||||
# define COLOR0_TEX_OVERRIDE_TEX_7 (8 << 22)
|
||||
# define COLOR0_TEX_OVERRIDE_TEX_8_C2 (9 << 22)
|
||||
# define COLOR0_TEX_OVERRIDE_TEX_9_C3 (10 << 22)
|
||||
# define COLOR1_TEX_OVERRIDE_NO (0 << 26)
|
||||
# define COLOR1_TEX_OVERRIDE_TEX_0 (1 << 26)
|
||||
# define COLOR1_TEX_OVERRIDE_TEX_1 (2 << 26)
|
||||
# define COLOR1_TEX_OVERRIDE_TEX_2 (3 << 26)
|
||||
# define COLOR1_TEX_OVERRIDE_TEX_3 (4 << 26)
|
||||
# define COLOR1_TEX_OVERRIDE_TEX_4 (5 << 26)
|
||||
# define COLOR1_TEX_OVERRIDE_TEX_5 (6 << 26)
|
||||
# define COLOR1_TEX_OVERRIDE_TEX_6 (7 << 26)
|
||||
# define COLOR1_TEX_OVERRIDE_TEX_7 (8 << 26)
|
||||
# define COLOR1_TEX_OVERRIDE_TEX_8_C2 (9 << 26)
|
||||
# define COLOR1_TEX_OVERRIDE_TEX_9_C3 (10 << 26)
|
||||
#define R500_GA_COLOR_CONTROL_PS3 0x4258
|
||||
# define R500_TEX0_SHADING_PS3_SOLID (0 << 0)
|
||||
# define R500_TEX0_SHADING_PS3_FLAT (1 << 0)
|
||||
# define R500_TEX0_SHADING_PS3_GOURAUD (2 << 0)
|
||||
# define R500_TEX1_SHADING_PS3_SOLID (0 << 2)
|
||||
# define R500_TEX1_SHADING_PS3_FLAT (1 << 2)
|
||||
# define R500_TEX1_SHADING_PS3_GOURAUD (2 << 2)
|
||||
# define R500_TEX2_SHADING_PS3_SOLID (0 << 4)
|
||||
# define R500_TEX2_SHADING_PS3_FLAT (1 << 4)
|
||||
# define R500_TEX2_SHADING_PS3_GOURAUD (2 << 4)
|
||||
# define R500_TEX3_SHADING_PS3_SOLID (0 << 6)
|
||||
# define R500_TEX3_SHADING_PS3_FLAT (1 << 6)
|
||||
# define R500_TEX3_SHADING_PS3_GOURAUD (2 << 6)
|
||||
# define R500_TEX4_SHADING_PS3_SOLID (0 << 8)
|
||||
# define R500_TEX4_SHADING_PS3_FLAT (1 << 8)
|
||||
# define R500_TEX4_SHADING_PS3_GOURAUD (2 << 8)
|
||||
# define R500_TEX5_SHADING_PS3_SOLID (0 << 10)
|
||||
# define R500_TEX5_SHADING_PS3_FLAT (1 << 10)
|
||||
# define R500_TEX5_SHADING_PS3_GOURAUD (2 << 10)
|
||||
# define R500_TEX6_SHADING_PS3_SOLID (0 << 12)
|
||||
# define R500_TEX6_SHADING_PS3_FLAT (1 << 12)
|
||||
# define R500_TEX6_SHADING_PS3_GOURAUD (2 << 12)
|
||||
# define R500_TEX7_SHADING_PS3_SOLID (0 << 14)
|
||||
# define R500_TEX7_SHADING_PS3_FLAT (1 << 14)
|
||||
# define R500_TEX7_SHADING_PS3_GOURAUD (2 << 14)
|
||||
# define R500_TEX8_SHADING_PS3_SOLID (0 << 16)
|
||||
# define R500_TEX8_SHADING_PS3_FLAT (1 << 16)
|
||||
# define R500_TEX8_SHADING_PS3_GOURAUD (2 << 16)
|
||||
# define R500_TEX9_SHADING_PS3_SOLID (0 << 18)
|
||||
# define R500_TEX9_SHADING_PS3_FLAT (1 << 18)
|
||||
# define R500_TEX9_SHADING_PS3_GOURAUD (2 << 18)
|
||||
# define R500_TEX10_SHADING_PS3_SOLID (0 << 20)
|
||||
# define R500_TEX10_SHADING_PS3_FLAT (1 << 20)
|
||||
# define R500_TEX10_SHADING_PS3_GOURAUD (2 << 20)
|
||||
# define R500_COLOR0_TEX_OVERRIDE_NO (0 << 22)
|
||||
# define R500_COLOR0_TEX_OVERRIDE_TEX_0 (1 << 22)
|
||||
# define R500_COLOR0_TEX_OVERRIDE_TEX_1 (2 << 22)
|
||||
# define R500_COLOR0_TEX_OVERRIDE_TEX_2 (3 << 22)
|
||||
# define R500_COLOR0_TEX_OVERRIDE_TEX_3 (4 << 22)
|
||||
# define R500_COLOR0_TEX_OVERRIDE_TEX_4 (5 << 22)
|
||||
# define R500_COLOR0_TEX_OVERRIDE_TEX_5 (6 << 22)
|
||||
# define R500_COLOR0_TEX_OVERRIDE_TEX_6 (7 << 22)
|
||||
# define R500_COLOR0_TEX_OVERRIDE_TEX_7 (8 << 22)
|
||||
# define R500_COLOR0_TEX_OVERRIDE_TEX_8_C2 (9 << 22)
|
||||
# define R500_COLOR0_TEX_OVERRIDE_TEX_9_C3 (10 << 22)
|
||||
# define R500_COLOR1_TEX_OVERRIDE_NO (0 << 26)
|
||||
# define R500_COLOR1_TEX_OVERRIDE_TEX_0 (1 << 26)
|
||||
# define R500_COLOR1_TEX_OVERRIDE_TEX_1 (2 << 26)
|
||||
# define R500_COLOR1_TEX_OVERRIDE_TEX_2 (3 << 26)
|
||||
# define R500_COLOR1_TEX_OVERRIDE_TEX_3 (4 << 26)
|
||||
# define R500_COLOR1_TEX_OVERRIDE_TEX_4 (5 << 26)
|
||||
# define R500_COLOR1_TEX_OVERRIDE_TEX_5 (6 << 26)
|
||||
# define R500_COLOR1_TEX_OVERRIDE_TEX_6 (7 << 26)
|
||||
# define R500_COLOR1_TEX_OVERRIDE_TEX_7 (8 << 26)
|
||||
# define R500_COLOR1_TEX_OVERRIDE_TEX_8_C2 (9 << 26)
|
||||
# define R500_COLOR1_TEX_OVERRIDE_TEX_9_C3 (10 << 26)
|
||||
|
||||
/* Returns idle status of various G3D block, captured when GA_IDLE written or
|
||||
* when hard or soft reset asserted.
|
||||
*/
|
||||
#define GA_IDLE 0x425c
|
||||
# define GA_IDLE_PIPE3_Z_IDLE (0 << 0)
|
||||
# define GA_IDLE_PIPE2_Z_IDLE (0 << 1)
|
||||
# define GA_IDLE_PIPE3_CD_IDLE (0 << 2)
|
||||
# define GA_IDLE_PIPE2_CD_IDLE (0 << 3)
|
||||
# define GA_IDLE_PIPE3_FG_IDLE (0 << 4)
|
||||
# define GA_IDLE_PIPE2_FG_IDLE (0 << 5)
|
||||
# define GA_IDLE_PIPE3_US_IDLE (0 << 6)
|
||||
# define GA_IDLE_PIPE2_US_IDLE (0 << 7)
|
||||
# define GA_IDLE_PIPE3_SC_IDLE (0 << 8)
|
||||
# define GA_IDLE_PIPE2_SC_IDLE (0 << 9)
|
||||
# define GA_IDLE_PIPE3_RS_IDLE (0 << 10)
|
||||
# define GA_IDLE_PIPE2_RS_IDLE (0 << 11)
|
||||
# define GA_IDLE_PIPE1_Z_IDLE (0 << 12)
|
||||
# define GA_IDLE_PIPE0_Z_IDLE (0 << 13)
|
||||
# define GA_IDLE_PIPE1_CD_IDLE (0 << 14)
|
||||
# define GA_IDLE_PIPE0_CD_IDLE (0 << 15)
|
||||
# define GA_IDLE_PIPE1_FG_IDLE (0 << 16)
|
||||
# define GA_IDLE_PIPE0_FG_IDLE (0 << 17)
|
||||
# define GA_IDLE_PIPE1_US_IDLE (0 << 18)
|
||||
# define GA_IDLE_PIPE0_US_IDLE (0 << 19)
|
||||
# define GA_IDLE_PIPE1_SC_IDLE (0 << 20)
|
||||
# define GA_IDLE_PIPE0_SC_IDLE (0 << 21)
|
||||
# define GA_IDLE_PIPE1_RS_IDLE (0 << 22)
|
||||
# define GA_IDLE_PIPE0_RS_IDLE (0 << 23)
|
||||
# define GA_IDLE_SU_IDLE (0 << 24)
|
||||
# define GA_IDLE_GA_IDLE (0 << 25)
|
||||
# define GA_IDLE_GA_UNIT2_IDLE (0 << 26)
|
||||
#define R500_GA_IDLE 0x425c
|
||||
# define R500_GA_IDLE_PIPE3_Z_IDLE (0 << 0)
|
||||
# define R500_GA_IDLE_PIPE2_Z_IDLE (0 << 1)
|
||||
# define R500_GA_IDLE_PIPE3_CD_IDLE (0 << 2)
|
||||
# define R500_GA_IDLE_PIPE2_CD_IDLE (0 << 3)
|
||||
# define R500_GA_IDLE_PIPE3_FG_IDLE (0 << 4)
|
||||
# define R500_GA_IDLE_PIPE2_FG_IDLE (0 << 5)
|
||||
# define R500_GA_IDLE_PIPE3_US_IDLE (0 << 6)
|
||||
# define R500_GA_IDLE_PIPE2_US_IDLE (0 << 7)
|
||||
# define R500_GA_IDLE_PIPE3_SC_IDLE (0 << 8)
|
||||
# define R500_GA_IDLE_PIPE2_SC_IDLE (0 << 9)
|
||||
# define R500_GA_IDLE_PIPE3_RS_IDLE (0 << 10)
|
||||
# define R500_GA_IDLE_PIPE2_RS_IDLE (0 << 11)
|
||||
# define R500_GA_IDLE_PIPE1_Z_IDLE (0 << 12)
|
||||
# define R500_GA_IDLE_PIPE0_Z_IDLE (0 << 13)
|
||||
# define R500_GA_IDLE_PIPE1_CD_IDLE (0 << 14)
|
||||
# define R500_GA_IDLE_PIPE0_CD_IDLE (0 << 15)
|
||||
# define R500_GA_IDLE_PIPE1_FG_IDLE (0 << 16)
|
||||
# define R500_GA_IDLE_PIPE0_FG_IDLE (0 << 17)
|
||||
# define R500_GA_IDLE_PIPE1_US_IDLE (0 << 18)
|
||||
# define R500_GA_IDLE_PIPE0_US_IDLE (0 << 19)
|
||||
# define R500_GA_IDLE_PIPE1_SC_IDLE (0 << 20)
|
||||
# define R500_GA_IDLE_PIPE0_SC_IDLE (0 << 21)
|
||||
# define R500_GA_IDLE_PIPE1_RS_IDLE (0 << 22)
|
||||
# define R500_GA_IDLE_PIPE0_RS_IDLE (0 << 23)
|
||||
# define R500_GA_IDLE_SU_IDLE (0 << 24)
|
||||
# define R500_GA_IDLE_GA_IDLE (0 << 25)
|
||||
# define R500_GA_IDLE_GA_UNIT2_IDLE (0 << 26)
|
||||
|
||||
/* Current value of stipple accumulator. */
|
||||
#define R300_GA_LINE_STIPPLE_VALUE 0x4260
|
||||
|
||||
/* S Texture Coordinate Value for Vertex 0 of Line (stuff textures -- i.e. AA) */
|
||||
#define GA_LINE_S0 0x4264
|
||||
#define R300_GA_LINE_S0 0x4264
|
||||
/* S Texture Coordinate Value for Vertex 1 of Lines (V2 of parallelogram -- stuff textures -- i.e. AA) */
|
||||
#define GA_LINE_S1 0x4268
|
||||
#define R300_GA_LINE_S1 0x4268
|
||||
|
||||
/* GA Input fifo high water marks */
|
||||
#define GA_FIFO_CNTL 0x4270
|
||||
# define GA_FIFO_CNTL_VERTEX_FIFO_MASK 0x00000007
|
||||
# define GA_FIFO_CNTL_VERTEX_FIFO_SHIFT 0
|
||||
# define GA_FIFO_CNTL_VERTEX_INDEX_MASK 0x00000038
|
||||
# define GA_FIFO_CNTL_VERTEX_INDEX_SHIFT 3
|
||||
# define GA_FIFO_CNTL_VERTEX_REG_MASK 0x00003fc0
|
||||
# define GA_FIFO_CNTL_VERTEX_REG_SHIFT 6
|
||||
#define R500_GA_FIFO_CNTL 0x4270
|
||||
# define R500_GA_FIFO_CNTL_VERTEX_FIFO_MASK 0x00000007
|
||||
# define R500_GA_FIFO_CNTL_VERTEX_FIFO_SHIFT 0
|
||||
# define R500_GA_FIFO_CNTL_VERTEX_INDEX_MASK 0x00000038
|
||||
# define R500_GA_FIFO_CNTL_VERTEX_INDEX_SHIFT 3
|
||||
# define R500_GA_FIFO_CNTL_VERTEX_REG_MASK 0x00003fc0
|
||||
# define R500_GA_FIFO_CNTL_VERTEX_REG_SHIFT 6
|
||||
|
||||
/* Something shade related */
|
||||
#define GA_ENHANCE 0x4274
|
||||
# define GA_ENHANCE_DEADLOCK_CNTL_NO_EFFECT (0 << 0)
|
||||
# define GA_ENHANCE_DEADLOCK_CNTL_PREVENT_TCL (1 << 0) /* Prevents TCL interface from deadlocking on GA side. */
|
||||
# define GA_ENHANCE_FASTSYNC_CNTL_NO_EFFECT (0 << 1)
|
||||
# define GA_ENHANCE_FASTSYNC_CNTL_ENABLE (1 << 1) /* Enables high-performance register/primitive switching. */
|
||||
# define GA_ENHANCE_REG_READWRITE_NO_EFFECT (0 << 2) /* R520+ only */
|
||||
# define GA_ENHANCE_REG_READWRITE_ENABLE (1 << 2) /* R520+ only, Enables GA support of simultaneous register reads and writes. */
|
||||
# define GA_ENHANCE_REG_NOSTALL_NO_EFFECT (0 << 3)
|
||||
# define GA_ENHANCE_REG_NOSTALL_ENABLE (1 << 3) /* Enables GA support of no-stall reads for register read back. */
|
||||
/* GA enhance/tweaks */
|
||||
#define R300_GA_ENHANCE 0x4274
|
||||
# define R300_GA_ENHANCE_DEADLOCK_CNTL_NO_EFFECT (0 << 0)
|
||||
# define R300_GA_ENHANCE_DEADLOCK_CNTL_PREVENT_TCL (1 << 0) /* Prevents TCL interface from deadlocking on GA side. */
|
||||
# define R300_GA_ENHANCE_FASTSYNC_CNTL_NO_EFFECT (0 << 1)
|
||||
# define R300_GA_ENHANCE_FASTSYNC_CNTL_ENABLE (1 << 1) /* Enables high-performance register/primitive switching. */
|
||||
# define R500_GA_ENHANCE_REG_READWRITE_NO_EFFECT (0 << 2) /* R520+ only */
|
||||
# define R500_GA_ENHANCE_REG_READWRITE_ENABLE (1 << 2) /* R520+ only, Enables GA support of simultaneous register reads and writes. */
|
||||
# define R500_GA_ENHANCE_REG_NOSTALL_NO_EFFECT (0 << 3)
|
||||
# define R500_GA_ENHANCE_REG_NOSTALL_ENABLE (1 << 3) /* Enables GA support of no-stall reads for register read back. */
|
||||
|
||||
#define R300_GA_COLOR_CONTROL 0x4278
|
||||
# define R300_GA_COLOR_CONTROL_RGB0_SHADING_SOLID (0 << 0)
|
||||
|
|
@ -1046,41 +1046,41 @@ USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|||
/* Polygon Mode
|
||||
* Dangerous
|
||||
*/
|
||||
#define GA_POLY_MODE 0x4288
|
||||
# define GA_POLY_MODE_DISABLE (0 << 0)
|
||||
# define GA_POLY_MODE_DUAL (1 << 0) /* send 2 sets of 3 polys with specified poly type */
|
||||
#define R300_GA_POLY_MODE 0x4288
|
||||
# define R300_GA_POLY_MODE_DISABLE (0 << 0)
|
||||
# define R300_GA_POLY_MODE_DUAL (1 << 0) /* send 2 sets of 3 polys with specified poly type */
|
||||
/* reserved */
|
||||
# define GA_POLY_MODE_FRONT_PTYPE_POINT (0 << 4)
|
||||
# define GA_POLY_MODE_FRONT_PTYPE_LINE (1 << 4)
|
||||
# define GA_POLY_MODE_FRONT_PTYPE_TRI (2 << 4)
|
||||
# define R300_GA_POLY_MODE_FRONT_PTYPE_POINT (0 << 4)
|
||||
# define R300_GA_POLY_MODE_FRONT_PTYPE_LINE (1 << 4)
|
||||
# define R300_GA_POLY_MODE_FRONT_PTYPE_TRI (2 << 4)
|
||||
/* reserved */
|
||||
# define GA_POLY_MODE_BACK_PTYPE_POINT (0 << 7)
|
||||
# define GA_POLY_MODE_BACK_PTYPE_LINE (1 << 7)
|
||||
# define GA_POLY_MODE_BACK_PTYPE_TRI (2 << 7)
|
||||
# define R300_GA_POLY_MODE_BACK_PTYPE_POINT (0 << 7)
|
||||
# define R300_GA_POLY_MODE_BACK_PTYPE_LINE (1 << 7)
|
||||
# define R300_GA_POLY_MODE_BACK_PTYPE_TRI (2 << 7)
|
||||
/* reserved */
|
||||
|
||||
/* Specifies the rouding mode for geometry & color SPFP to FP conversions. */
|
||||
#define GA_ROUND_MODE 0x428c
|
||||
# define GA_ROUND_MODE_GEOMETRY_ROUND_TRUNC (0 << 0)
|
||||
# define GA_ROUND_MODE_GEOMETRY_ROUND_NEAREST (1 << 0)
|
||||
# define GA_ROUND_MODE_COLOR_ROUND_TRUNC (0 << 2)
|
||||
# define GA_ROUND_MODE_COLOR_ROUND_NEAREST (1 << 2)
|
||||
# define GA_ROUND_MODE_RGB_CLAMP_RGB (0 << 4)
|
||||
# define GA_ROUND_MODE_RGB_CLAMP_FP20 (1 << 4)
|
||||
# define GA_ROUND_MODE_ALPHA_CLAMP_RGB (0 << 5)
|
||||
# define GA_ROUND_MODE_ALPHA_CLAMP_FP20 (1 << 5)
|
||||
# define GA_ROUND_MODE_GEOMETRY_MASK_SHIFT 6
|
||||
# define GA_ROUND_MODE_GEOMETRY_MASK_MASK 0x000003c0
|
||||
#define R300_GA_ROUND_MODE 0x428c
|
||||
# define R300_GA_ROUND_MODE_GEOMETRY_ROUND_TRUNC (0 << 0)
|
||||
# define R300_GA_ROUND_MODE_GEOMETRY_ROUND_NEAREST (1 << 0)
|
||||
# define R300_GA_ROUND_MODE_COLOR_ROUND_TRUNC (0 << 2)
|
||||
# define R300_GA_ROUND_MODE_COLOR_ROUND_NEAREST (1 << 2)
|
||||
# define R300_GA_ROUND_MODE_RGB_CLAMP_RGB (0 << 4)
|
||||
# define R300_GA_ROUND_MODE_RGB_CLAMP_FP20 (1 << 4)
|
||||
# define R300_GA_ROUND_MODE_ALPHA_CLAMP_RGB (0 << 5)
|
||||
# define R300_GA_ROUND_MODE_ALPHA_CLAMP_FP20 (1 << 5)
|
||||
# define R500_GA_ROUND_MODE_GEOMETRY_MASK_SHIFT 6
|
||||
# define R500_GA_ROUND_MODE_GEOMETRY_MASK_MASK 0x000003c0
|
||||
|
||||
/* Specifies x & y offsets for vertex data after conversion to FP.
|
||||
* Offsets are in S15 format (subpixels -- 1/12 or 1/16, even in 8b
|
||||
* subprecision).
|
||||
*/
|
||||
#define GA_OFFSET 0x4290
|
||||
# define GA_OFFSET_X_OFFSET_SHIFT 0
|
||||
# define GA_OFFSET_X_OFFSET_MASK 0x0000ffff
|
||||
# define GA_OFFSET_Y_OFFSET_SHIFT 16
|
||||
# define GA_OFFSET_Y_OFFSET_MASK 0xffff0000
|
||||
#define R300_GA_OFFSET 0x4290
|
||||
# define R300_GA_OFFSET_X_OFFSET_SHIFT 0
|
||||
# define R300_GA_OFFSET_X_OFFSET_MASK 0x0000ffff
|
||||
# define R300_GA_OFFSET_Y_OFFSET_SHIFT 16
|
||||
# define R300_GA_OFFSET_Y_OFFSET_MASK 0xffff0000
|
||||
|
||||
/* Specifies the scale to apply to fog. */
|
||||
#define R300_RE_FOG_SCALE 0x4294
|
||||
|
|
|
|||
|
|
@ -573,7 +573,7 @@ static void r300SetStencilState(GLcontext * ctx, GLboolean state)
|
|||
static void r300UpdatePolygonMode(GLcontext * ctx)
|
||||
{
|
||||
r300ContextPtr r300 = R300_CONTEXT(ctx);
|
||||
uint32_t hw_mode = GA_POLY_MODE_DISABLE;
|
||||
uint32_t hw_mode = R300_GA_POLY_MODE_DISABLE;
|
||||
|
||||
/* Only do something if a polygon mode is wanted, default is GL_FILL */
|
||||
if (ctx->Polygon.FrontMode != GL_FILL ||
|
||||
|
|
@ -592,29 +592,29 @@ static void r300UpdatePolygonMode(GLcontext * ctx)
|
|||
}
|
||||
|
||||
/* Enable polygon mode */
|
||||
hw_mode |= GA_POLY_MODE_DUAL;
|
||||
hw_mode |= R300_GA_POLY_MODE_DUAL;
|
||||
|
||||
switch (f) {
|
||||
case GL_LINE:
|
||||
hw_mode |= GA_POLY_MODE_FRONT_PTYPE_LINE;
|
||||
hw_mode |= R300_GA_POLY_MODE_FRONT_PTYPE_LINE;
|
||||
break;
|
||||
case GL_POINT:
|
||||
hw_mode |= GA_POLY_MODE_FRONT_PTYPE_POINT;
|
||||
hw_mode |= R300_GA_POLY_MODE_FRONT_PTYPE_POINT;
|
||||
break;
|
||||
case GL_FILL:
|
||||
hw_mode |= GA_POLY_MODE_FRONT_PTYPE_TRI;
|
||||
hw_mode |= R300_GA_POLY_MODE_FRONT_PTYPE_TRI;
|
||||
break;
|
||||
}
|
||||
|
||||
switch (b) {
|
||||
case GL_LINE:
|
||||
hw_mode |= GA_POLY_MODE_BACK_PTYPE_LINE;
|
||||
hw_mode |= R300_GA_POLY_MODE_BACK_PTYPE_LINE;
|
||||
break;
|
||||
case GL_POINT:
|
||||
hw_mode |= GA_POLY_MODE_BACK_PTYPE_POINT;
|
||||
hw_mode |= R300_GA_POLY_MODE_BACK_PTYPE_POINT;
|
||||
break;
|
||||
case GL_FILL:
|
||||
hw_mode |= GA_POLY_MODE_BACK_PTYPE_TRI;
|
||||
hw_mode |= R300_GA_POLY_MODE_BACK_PTYPE_TRI;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue