From: Alyssa Rosenzweig Date: Fri, 3 Jul 2020 15:27:48 +0000 (-0400) Subject: panfrost: Identify depth/stencil layer strides X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=5e38d956ab04659ad3fa98b06b4b1e418742ceb8;p=mesa.git panfrost: Identify depth/stencil layer strides Signed-off-by: Alyssa Rosenzweig Part-of: --- diff --git a/src/panfrost/include/panfrost-job.h b/src/panfrost/include/panfrost-job.h index cd725ec5544..a12df31467b 100644 --- a/src/panfrost/include/panfrost-job.h +++ b/src/panfrost/include/panfrost-job.h @@ -1784,12 +1784,12 @@ struct mali_framebuffer_extra { mali_ptr depth; u32 depth_stride_zero : 4; u32 depth_stride : 28; - u32 zero1; + u32 depth_layer_stride; mali_ptr stencil; u32 stencil_stride_zero : 4; u32 stencil_stride : 28; - u32 zero2; + u32 stencil_layer_stride; } ds_linear; }; diff --git a/src/panfrost/pandecode/decode.c b/src/panfrost/pandecode/decode.c index 928f5a77efb..c64fc4e5593 100644 --- a/src/panfrost/pandecode/decode.c +++ b/src/panfrost/pandecode/decode.c @@ -1273,30 +1273,29 @@ pandecode_mfbd_bfr(uint64_t gpu_va, int job_no, bool is_fragment, bool is_comput MEMORY_PROP_DIR(fbx->ds_linear, depth); pandecode_prop("depth_stride = %d", fbx->ds_linear.depth_stride); - } else if (fbx->ds_linear.depth_stride) { - pandecode_msg("XXX: depth stride zero tripped %d\n", fbx->ds_linear.depth_stride); + pandecode_prop("depth_layer_stride = %d", + fbx->ds_linear.depth_layer_stride); + } else if (fbx->ds_linear.depth_stride || fbx->ds_linear.depth_layer_stride) { + pandecode_msg("XXX: depth stride zero tripped %d %d\n", fbx->ds_linear.depth_stride, fbx->ds_linear.depth_layer_stride); } if (fbx->ds_linear.stencil) { MEMORY_PROP_DIR(fbx->ds_linear, stencil); pandecode_prop("stencil_stride = %d", fbx->ds_linear.stencil_stride); - } else if (fbx->ds_linear.stencil_stride) { - pandecode_msg("XXX: stencil stride zero tripped %d\n", fbx->ds_linear.stencil_stride); + pandecode_prop("stencil_layer_stride = %d", + fbx->ds_linear.stencil_layer_stride); + } else if (fbx->ds_linear.stencil_stride || fbx->ds_linear.stencil_layer_stride) { + pandecode_msg("XXX: stencil stride zero tripped %d %d\n", fbx->ds_linear.stencil_stride, fbx->ds_linear.stencil_layer_stride); } if (fbx->ds_linear.depth_stride_zero || - fbx->ds_linear.stencil_stride_zero || - fbx->ds_linear.zero1 || fbx->ds_linear.zero2) { + fbx->ds_linear.stencil_stride_zero) { pandecode_msg("XXX: Depth/stencil zeros tripped\n"); pandecode_prop("depth_stride_zero = 0x%x", fbx->ds_linear.depth_stride_zero); pandecode_prop("stencil_stride_zero = 0x%x", fbx->ds_linear.stencil_stride_zero); - pandecode_prop("zero1 = 0x%" PRIx32, - fbx->ds_linear.zero1); - pandecode_prop("zero2 = 0x%" PRIx32, - fbx->ds_linear.zero2); } pandecode_indent--;