panfrost: Probe G31/G52 if PAN_MESA_DEBUG=bifrost
authorAlyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Fri, 29 May 2020 23:24:45 +0000 (19:24 -0400)
committerAlyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Fri, 29 May 2020 23:24:45 +0000 (19:24 -0400)
We're not *quite* ready to open the flood gates on Bifrost (a major
blocker is CI, which is itself blocked on the lockdowns - expected to be
resolved in the coming months..)

Nevertheless, let's add a debug option to probe on compatible Bifrost
devices to avoid keeping out-of-tree patches around.

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5272>

src/gallium/drivers/panfrost/pan_screen.c
src/panfrost/encoder/pan_util.h

index 72cc7e0363595338c017427e01e94c2f8dfabe48..96d5b0d2c19fc162883a1628ab5b3b1c41555eb0 100644 (file)
@@ -64,6 +64,7 @@ static const struct debug_named_value debug_options[] = {
         {"precompile", PAN_DBG_PRECOMPILE, "Precompile shaders for shader-db"},
         {"gles3",     PAN_DBG_GLES3,    "Enable experimental GLES3 implementation"},
         {"fp16",     PAN_DBG_FP16,     "Enable buggy experimental (don't use!) fp16"},
+        {"bifrost",   PAN_DBG_BIFROST, "Enable experimental Mali G31 and G52 support"},
         DEBUG_NAMED_VALUE_END
 };
 
@@ -705,6 +706,12 @@ panfrost_create_screen(int fd, struct renderonly *ro)
         case 0x820: /* T820 */
         case 0x860: /* T860 */
                 break;
+        case 0x7093: /* G31 */
+        case 0x7212: /* G52 */
+                if (pan_debug & PAN_DBG_BIFROST)
+                        break;
+
+                /* fallthrough */
         default:
                 /* Fail to load against untested models */
                 debug_printf("panfrost: Unsupported model %X", dev->gpu_id);
index 320a608e36fb94e1e49f017f19973b8f4fe43da4..721f04366820a1c10c5fccbc46ebf26a7543608d 100644 (file)
@@ -36,6 +36,7 @@
 #define PAN_DBG_PRECOMPILE      0x0020
 #define PAN_DBG_GLES3           0x0040
 #define PAN_DBG_FP16            0x0080
+#define PAN_DBG_BIFROST         0x0100
 
 extern int pan_debug;