[Mesa-dev] [PATCH 11/12] i965/gen7: Add CC vieport setup to blorp code.

Chad Versace chad.versace at linux.intel.com
Tue May 22 13:01:33 PDT 2012


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 05/22/2012 10:21 AM, Eric Anholt wrote:
> When doing fast clears, a fulsim warning said that the batch was being
> emitted without the viewport set up.  This could potentially have been
> a problem if some other app set the viewport to a range other than the
> [0,1] we want.
> ---
>  src/mesa/drivers/dri/i965/gen7_blorp.cpp |   21 +++++++++++++++++++++
>  1 file changed, 21 insertions(+)
> 
> diff --git a/src/mesa/drivers/dri/i965/gen7_blorp.cpp b/src/mesa/drivers/dri/i965/gen7_blorp.cpp
> index 7ef0d36..4cad966 100644
> --- a/src/mesa/drivers/dri/i965/gen7_blorp.cpp
> +++ b/src/mesa/drivers/dri/i965/gen7_blorp.cpp
> @@ -110,6 +110,26 @@ gen7_blorp_emit_cc_state_pointer(struct brw_context *brw,
>     ADVANCE_BATCH();
>  }
>  
> +static void
> +gen7_blorp_emit_cc_viewport(struct brw_context *brw,
> +			    const brw_blorp_params *params)
> +{
> +   struct intel_context *intel = &brw->intel;
> +   struct brw_cc_viewport *ccv;
> +   uint32_t cc_vp_offset;
> +
> +   ccv = (struct brw_cc_viewport *)brw_state_batch(brw, AUB_TRACE_CC_VP_STATE,
> +						   sizeof(*ccv), 32,
> +						   &cc_vp_offset);
> +   ccv->min_depth = 0.0;
> +   ccv->max_depth = 1.0;
> +
> +   BEGIN_BATCH(2);
> +   OUT_BATCH(_3DSTATE_VIEWPORT_STATE_POINTERS_CC << 16 | (2 - 2));
> +   OUT_BATCH(cc_vp_offset);
> +   ADVANCE_BATCH();
> +}
> +
>  
>  /* 3DSTATE_DEPTH_STENCIL_STATE_POINTERS
>   *
> @@ -765,6 +785,7 @@ gen7_blorp_exec(struct intel_context *intel,
>        gen7_blorp_emit_constant_ps(brw, params, wm_push_const_offset);
>     }
>     gen7_blorp_emit_ps_config(brw, params, prog_offset, prog_data);
> +   gen7_blorp_emit_cc_viewport(brw, params);
>  
>     if (params->depth.mt)
>        gen7_blorp_emit_depth_stencil_config(brw, params);


In gen{6,7}_blorp_emit_sf_config, the Viewport_Transform_Enable bit is disabled, as it must be
whenver emitting a rectlist primitive. Given that, is this patch still necessary?

- ----
Chad Versace
chad.versace at linux.intel.com
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.19 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iQIcBAEBAgAGBQJPu/CbAAoJEAIvNt057x8iuxcQALm7Wszhrutp0HHqJc0UNkPE
IE40Zuu5zHwOscJrOt0gZf+7etbqnFrko2vRmYzRIDx5k472/fVn8N7swAKoiDZz
+aUDtmrLY/EPp9IT2EQLxojzmCv4Ts8LywMBJOrocFu0N3b/vhfcXUEATdkIiqRC
oWxrNz94ArPsAdm3/koo/JUywOdEMRXuCH3hyo3ZA7w7okdQXro+BjOol+tx4GL2
A/BSOSs8cKs1DAe41vdeC9zGOMhKlF1KE9R+JYXA8nRlWUAv6YHNT3nh4Rm5CSPs
H6Hg9eKIRJJoCTl6P8bf+37m/FROH4UXVPnhRt9wGQricxD5RkIEMAHP+q8wMnya
v12uq2utzv2uKWI5J5NQLcf1h2ToGOUzGwTku8zl64YTLzio/uo3rOn/G29Gqhkk
CQaWjGbzylxi7bPQZQruvI2S+ijFRgGZu8Z0KfqDFmRnO0qJXIBFzN8vl8TzHDOP
n9g3Jty58epHzBhdafP0o/P614+3n0TFS9nIfU3QqC8AZXj96xtnSdrcXumqt0af
HCgz0DVT7rEXBZKYLx0kVExvDPHPDWfM7g6cGq9KicSyw5jdQF9W/SSU9GP5eTIq
9CHYug8yConBhB/a19k9vq5grKLs3ooQX7ckq5JA3XARoYI95JkKHNAccabYsUFw
OLbZww9YfueQpxorWAPa
=LLrT
-----END PGP SIGNATURE-----


More information about the mesa-dev mailing list