diff options
author | Jason Ekstrand <[email protected]> | 2016-06-27 17:30:35 -0700 |
---|---|---|
committer | Jason Ekstrand <[email protected]> | 2016-08-17 14:46:22 -0700 |
commit | 871893cda2f550600a30ba336e8dda7d5ee6ffa5 (patch) | |
tree | a5bca2e5405cd56cdf0fe38479fadc673efe927a | |
parent | ecd97893686afc9ebeead14d2123aa02dad067f1 (diff) |
i965/blorp: Map 1-D render targets with DIM_LAYOUT_GEN4_2D as 2D on gen9
The sampling hardware can handle them ok. It just looks at the tiling to
determine whether it's the new gen9 1-D layout or the old one. The render
hardware isn't so smart.
Signed-off-by: Jason Ekstrand <[email protected]>
Reviewed-by: Topi Pohjolainen <[email protected]>
-rw-r--r-- | src/mesa/drivers/dri/i965/brw_blorp.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_blorp.c b/src/mesa/drivers/dri/i965/brw_blorp.c index d9b55546102..2cf0f999e20 100644 --- a/src/mesa/drivers/dri/i965/brw_blorp.c +++ b/src/mesa/drivers/dri/i965/brw_blorp.c @@ -371,6 +371,12 @@ brw_blorp_emit_surface_state(struct brw_context *brw, struct isl_surf surf = surface->surf; + if (surf.dim == ISL_SURF_DIM_1D && + surf.dim_layout == ISL_DIM_LAYOUT_GEN4_2D) { + assert(surf.logical_level0_px.height == 1); + surf.dim = ISL_SURF_DIM_2D; + } + union isl_color_value clear_color = { .u32 = { 0, 0, 0, 0 } }; const struct isl_surf *aux_surf = NULL; |