Переглянути джерело

i965: Add resolve option for lossless compression

v2 (Ben): Use combination of msaa_layout and number of samples
          instead of introducing explicit type for lossless
          compression (intel_miptree_is_lossless_compressed()).

Signed-off-by: Topi Pohjolainen <topi.pohjolainen@intel.com>
Reviewed-by: Ben Widawsky <benjamin.widawsky@intel.com>
tags/11.2-branchpoint
Topi Pohjolainen 9 роки тому
джерело
коміт
97f4ca90b8

+ 1
- 0
src/mesa/drivers/dri/i965/brw_defines.h Переглянути файл

@@ -2727,6 +2727,7 @@ enum brw_wm_barycentric_interp_mode {
# define GEN7_PS_RENDER_TARGET_FAST_CLEAR_ENABLE (1 << 8)
# define GEN7_PS_DUAL_SOURCE_BLEND_ENABLE (1 << 7)
# define GEN7_PS_RENDER_TARGET_RESOLVE_ENABLE (1 << 6)
# define GEN9_PS_RENDER_TARGET_RESOLVE_FULL (3 << 6)
# define HSW_PS_UAV_ACCESS_ENABLE (1 << 5)
# define GEN7_PS_POSOFFSET_NONE (0 << 3)
# define GEN7_PS_POSOFFSET_CENTROID (2 << 3)

+ 4
- 1
src/mesa/drivers/dri/i965/brw_meta_fast_clear.c Переглянути файл

@@ -874,7 +874,10 @@ brw_meta_resolve_color(struct brw_context *brw,
* bits to let us select the type of resolve. For fast clear resolves, it
* turns out we can use the same value as pre-SKL though.
*/
set_fast_clear_op(brw, GEN7_PS_RENDER_TARGET_RESOLVE_ENABLE);
if (intel_miptree_is_lossless_compressed(brw, mt))
set_fast_clear_op(brw, GEN9_PS_RENDER_TARGET_RESOLVE_FULL);
else
set_fast_clear_op(brw, GEN7_PS_RENDER_TARGET_RESOLVE_ENABLE);

mt->fast_clear_state = INTEL_FAST_CLEAR_STATE_RESOLVED;
get_resolve_rect(brw, mt, &rect);

Завантаження…
Відмінити
Зберегти