diff --git a/src/gallium/drivers/panfrost/pan_resource.c b/src/gallium/drivers/panfrost/pan_resource.c index bf97ef67d80..2122d23d56a 100644 --- a/src/gallium/drivers/panfrost/pan_resource.c +++ b/src/gallium/drivers/panfrost/pan_resource.c @@ -634,7 +634,8 @@ panfrost_should_checksum(const struct panfrost_device *dev, const struct panfros return pres->base.bind & PIPE_BIND_RENDER_TARGET && panfrost_is_2d(pres) && - bytes_per_pixel <= bytes_per_pixel_max; + bytes_per_pixel <= bytes_per_pixel_max && + !(dev->debug & PAN_DBG_NO_CRC); } static void diff --git a/src/gallium/drivers/panfrost/pan_screen.c b/src/gallium/drivers/panfrost/pan_screen.c index e94534abb64..83c23bfe026 100644 --- a/src/gallium/drivers/panfrost/pan_screen.c +++ b/src/gallium/drivers/panfrost/pan_screen.c @@ -66,6 +66,7 @@ static const struct debug_named_value panfrost_debug_options[] = { {"nofp16", PAN_DBG_NOFP16, "Disable 16-bit support"}, {"gl3", PAN_DBG_GL3, "Enable experimental GL 3.x implementation, up to 3.3"}, {"noafbc", PAN_DBG_NO_AFBC, "Disable AFBC support"}, + {"nocrc", PAN_DBG_NO_CRC, "Disable transaction elimination"}, DEBUG_NAMED_VALUE_END }; diff --git a/src/panfrost/lib/pan_util.h b/src/panfrost/lib/pan_util.h index f893cf62c57..72a815897b7 100644 --- a/src/panfrost/lib/pan_util.h +++ b/src/panfrost/lib/pan_util.h @@ -35,7 +35,7 @@ #define PAN_DBG_SYNC 0x0010 #define PAN_DBG_PRECOMPILE 0x0020 #define PAN_DBG_NOFP16 0x0040 -/* 0x80 unused */ +#define PAN_DBG_NO_CRC 0x0080 #define PAN_DBG_GL3 0x0100 #define PAN_DBG_NO_AFBC 0x0200 #define PAN_DBG_FP16 0x0400