dEQP-GLES2.functional.texture.specification.basic_copytexsubimage2d.2d_rgb
dEQP-GLES2.functional.texture.specification.basic_copytexsubimage2d.2d_rgba
dEQP-GLES3.functional.fbo.blit.rect.nearest_consistency_mag_reverse_dst_y
-dEQP-GLES3.functional.texture.specification.texstorage3d.size.3d_57x63x11_2_levels
dEQP-GLES3.functional.transform_feedback.array.interleaved.lines.lowp_float
dEQP-GLES3.functional.transform_feedback.array.interleaved.lines.mediump_int
dEQP-GLES3.functional.transform_feedback.array.interleaved.points.highp_mat3x2
<bitfield name="TYPE" low="29" high="30" type="a5xx_tex_type"/>
</reg32>
<reg32 offset="3" name="3">
+ <!--
+ ARRAY_PITCH is basically LAYERSZ for the first mipmap level, and
+ for 3d textures (laid out mipmap level first) MIN_LAYERSZ is the
+ layer size at the point that it stops being reduced moving to
+ higher (smaller) mipmap levels
+ -->
<bitfield name="ARRAY_PITCH" low="0" high="13" shr="12" type="uint"/>
+ <!--
+ by default levels with w < 16 are linear
+ TILE_ALL makes all levels have tiling
+ seems required when using UBWC, since all levels have UBWC (can possibly be disabled?)
+ -->
+ <bitfield name="TILE_ALL" pos="27" type="boolean"/>
+ <bitfield name="MIN_LAYERSZ" low="23" high="26" shr="12"/>
<bitfield name="FLAG" pos="28" type="boolean"/>
</reg32>
<reg32 offset="4" name="4">
break;
case PIPE_TEXTURE_3D:
so->texconst3 =
+ A5XX_TEX_CONST_3_MIN_LAYERSZ(
+ fd_resource_slice(rsc, prsc->last_level)->size0) |
A5XX_TEX_CONST_3_ARRAY_PITCH(slice->size0);
so->texconst5 =
A5XX_TEX_CONST_5_DEPTH(u_minify(prsc->depth0, lvl));