lima/parser: Extend AUX0 findings
authorAndreas Baierl <ichgeh@imkreisrum.de>
Wed, 29 Jan 2020 12:10:26 +0000 (13:10 +0100)
committerAndreas Baierl <ichgeh@imkreisrum.de>
Fri, 7 Feb 2020 08:26:32 +0000 (09:26 +0100)
Reviewed-by: Vasily Khoruzhick <anarsoul@gmail.com>
Signed-off-by: Andreas Baierl <ichgeh@imkreisrum.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3619>

src/gallium/drivers/lima/lima_parser.c

index 9eb59e9c20278a6ba78ea5d337f491eff81a2cad..ae1764723eb3c810fa1bf77c74bb72d7d0aca95f 100644 (file)
@@ -569,8 +569,40 @@ parse_rsw(FILE *fp, uint32_t *value, int i, uint32_t *helper)
       fprintf(fp, ": address: 0x%08x */\n", *value);
       break;
    case 13: /* AUX0 */
-      fprintf(fp, ": varying_stride: %d, tex_stateobj.num_samplers: %d */\n",
-              *value & 0x0000001f, (*value & 0xffffc000) >> 14);
+      fprintf(fp, "(1): varying_stride: %d", /* bits 0 - 4 varying stride, 8 aligned */
+              (*value & 0x0000001f) << 3);
+      if ((*value & 0x00000020) == 0x00000020) /* bit 5 has num_samplers */
+         fprintf(fp, ", num_samplers %d",
+                 (*value & 0xffffc000) >> 14); /* bits 14 - 31 num_samplers */
+
+      if ((*value & 0x00000080) == 0x00000080) /* bit 7 has_fs_uniforms */
+         fprintf(fp, ", has_fs_uniforms */");
+      else
+         fprintf(fp, " */");
+
+      fprintf(fp, "\n\t\t\t\t\t\t/* %s(2):", render_state_infos[i].info);
+      if ((*value & 0x00000200) == 0x00000200) /* bit 9 early-z */
+         fprintf(fp, " early-z enabled");
+      else
+         fprintf(fp, " early-z disabled");
+
+      if ((*value & 0x00001000) == 0x00001000) /* bit 12 pixel-kill */
+         fprintf(fp, ", pixel kill enabled");
+      else
+         fprintf(fp, ", pixel kill disabled");
+
+      if ((*value & 0x00000040) == 0x00000040) /* bit 6 unknown */
+         fprintf(fp, ", bit 6 set");
+
+      if ((*value & 0x00000100) == 0x00000100) /* bit 8 unknown */
+         fprintf(fp, ", bit 8 set");
+
+      if (((*value & 0x00000c00) >> 10) > 0) /* bit 10 - 11 unknown */
+         fprintf(fp, ", bit 10 - 11: %d", ((*value & 0x00000c00) >> 10));
+
+      if ((*value & 0x00002000) == 0x00002000) /* bit 13 unknown */
+         fprintf(fp, ", bit 13 set");
+      fprintf(fp, " */\n");
       break;
    case 14: /* AUX1 */
       fprintf(fp, ": ");