surf->flags &= ~RADEON_SURF_TC_COMPATIBLE_HTILE;
}
- surf->is_linear = surf->u.legacy.level[0].mode == RADEON_SURF_MODE_LINEAR_ALIGNED;
+ surf->is_linear = (only_stencil ? surf->u.legacy.zs.stencil_level[0].mode :
+ surf->u.legacy.level[0].mode) == RADEON_SURF_MODE_LINEAR_ALIGNED;
+
surf->is_displayable = surf->is_linear || surf->micro_tile_mode == RADEON_MICRO_MODE_DISPLAY ||
surf->micro_tile_mode == RADEON_MICRO_MODE_RENDER;
return r;
}
- surf->is_linear = surf->u.gfx9.swizzle_mode == ADDR_SW_LINEAR;
+ surf->is_linear = (only_stencil ? surf->u.gfx9.zs.stencil_swizzle_mode :
+ surf->u.gfx9.swizzle_mode) == ADDR_SW_LINEAR;
/* Query whether the surface is displayable. */
/* This is only useful for surfaces that are allocated without SCANOUT. */