From: Dave Airlie Date: Tue, 7 Jun 2011 01:30:47 +0000 (+1000) Subject: r600g: reorder evergreen draw packets to be smaller. X-Git-Tag: android-x86-4.4-r1~10989 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=138f660b5890f4ceba649df00239111947735842;p=android-x86%2Fexternal-mesa.git r600g: reorder evergreen draw packets to be smaller. We were always re-emitting lots of unnecessary changes here, avoid doing that. Signed-off-by: Dave Airlie --- diff --git a/src/gallium/winsys/r600/drm/evergreen_hw_context.c b/src/gallium/winsys/r600/drm/evergreen_hw_context.c index 3cf41c1f9f9..a95182773a7 100644 --- a/src/gallium/winsys/r600/drm/evergreen_hw_context.c +++ b/src/gallium/winsys/r600/drm/evergreen_hw_context.c @@ -125,6 +125,8 @@ static const struct r600_reg evergreen_context_reg_list[] = { {R_028244_PA_SC_GENERIC_SCISSOR_BR, 0, 0, 0}, {R_028250_PA_SC_VPORT_SCISSOR_0_TL, 0, 0, 0}, {R_028254_PA_SC_VPORT_SCISSOR_0_BR, 0, 0, 0}, + {R_0282D0_PA_SC_VPORT_ZMIN_0, 0, 0, 0}, + {R_0282D4_PA_SC_VPORT_ZMAX_0, 0, 0, 0}, {R_028350_SX_MISC, 0, 0, 0}, {R_028380_SQ_VTX_SEMANTIC_0, 0, 0, 0}, {R_028384_SQ_VTX_SEMANTIC_1, 0, 0, 0}, @@ -158,12 +160,12 @@ static const struct r600_reg evergreen_context_reg_list[] = { {R_0283F4_SQ_VTX_SEMANTIC_29, 0, 0, 0}, {R_0283F8_SQ_VTX_SEMANTIC_30, 0, 0, 0}, {R_0283FC_SQ_VTX_SEMANTIC_31, 0, 0, 0}, - {R_0282D0_PA_SC_VPORT_ZMIN_0, 0, 0, 0}, - {R_0282D4_PA_SC_VPORT_ZMAX_0, 0, 0, 0}, + {GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, {R_028400_VGT_MAX_VTX_INDX, 0, 0, 0}, {R_028404_VGT_MIN_VTX_INDX, 0, 0, 0}, {R_028408_VGT_INDX_OFFSET, 0, 0, 0}, {R_02840C_VGT_MULTI_PRIM_IB_RESET_INDX, 0, 0, 0}, + {GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, {R_028410_SX_ALPHA_TEST_CONTROL, 0, 0, 0}, {R_028414_CB_BLEND_RED, 0, 0, 0}, {R_028418_CB_BLEND_GREEN, 0, 0, 0}, @@ -487,6 +489,8 @@ static const struct r600_reg cayman_context_reg_list[] = { {R_028244_PA_SC_GENERIC_SCISSOR_BR, 0, 0, 0}, {R_028250_PA_SC_VPORT_SCISSOR_0_TL, 0, 0, 0}, {R_028254_PA_SC_VPORT_SCISSOR_0_BR, 0, 0, 0}, + {R_0282D0_PA_SC_VPORT_ZMIN_0, 0, 0, 0}, + {R_0282D4_PA_SC_VPORT_ZMAX_0, 0, 0, 0}, {R_028350_SX_MISC, 0, 0, 0}, {R_028380_SQ_VTX_SEMANTIC_0, 0, 0, 0}, {R_028384_SQ_VTX_SEMANTIC_1, 0, 0, 0}, @@ -520,12 +524,12 @@ static const struct r600_reg cayman_context_reg_list[] = { {R_0283F4_SQ_VTX_SEMANTIC_29, 0, 0, 0}, {R_0283F8_SQ_VTX_SEMANTIC_30, 0, 0, 0}, {R_0283FC_SQ_VTX_SEMANTIC_31, 0, 0, 0}, - {R_0282D0_PA_SC_VPORT_ZMIN_0, 0, 0, 0}, - {R_0282D4_PA_SC_VPORT_ZMAX_0, 0, 0, 0}, + {GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, {R_028400_VGT_MAX_VTX_INDX, 0, 0, 0}, {R_028404_VGT_MIN_VTX_INDX, 0, 0, 0}, {R_028408_VGT_INDX_OFFSET, 0, 0, 0}, {R_02840C_VGT_MULTI_PRIM_IB_RESET_INDX, 0, 0, 0}, + {GROUP_FORCE_NEW_BLOCK, 0, 0, 0}, {R_028410_SX_ALPHA_TEST_CONTROL, 0, 0, 0}, {R_028414_CB_BLEND_RED, 0, 0, 0}, {R_028418_CB_BLEND_GREEN, 0, 0, 0},