u64 next_job;
} __attribute__((packed));
-/* These concern exception_status */
-
-/* Access type causing a fault, paralleling AS_FAULTSTATUS_* entries in the
- * kernel */
-
-enum mali_exception_access {
- /* Atomic in the kernel for MMU, but that doesn't make sense for a job
- * fault so it's just unused */
- MALI_EXCEPTION_ACCESS_NONE = 0,
-
- MALI_EXCEPTION_ACCESS_EXECUTE = 1,
- MALI_EXCEPTION_ACCESS_READ = 2,
- MALI_EXCEPTION_ACCESS_WRITE = 3
-};
-
/* Details about write_value from panfrost igt tests which use it as a generic
* dword write primitive */
}
}
-#define DEFINE_CASE(name) case MALI_EXCEPTION_ACCESS_## name: return ""#name
-static char *
-pandecode_exception_access(unsigned access)
-{
- switch (access) {
- DEFINE_CASE(NONE);
- DEFINE_CASE(EXECUTE);
- DEFINE_CASE(READ);
- DEFINE_CASE(WRITE);
-
- default:
- unreachable("Invalid case");
- }
-}
-#undef DEFINE_CASE
/* Midgard's tiler descriptor is embedded within the
* larger FBD */
pandecode_prop("exception_status = %x (source ID: 0x%x access: %s exception: 0x%x)",
h->exception_status,
(h->exception_status >> 16) & 0xFFFF,
- pandecode_exception_access((h->exception_status >> 8) & 0x3),
+ mali_exception_access_as_str((h->exception_status >> 8) & 0x3),
h->exception_status & 0xFF);
if (h->first_incomplete_task)
<value name="Quad strip" value="15"/>
</enum>
+ <enum name="Exception Access">
+ <value name="None" value="0"/>
+ <value name="Execute" value="2"/>
+ <value name="Read" value="1"/>
+ <value name="Write" value="3"/>
+ </enum>
+
<enum name="Func">
<value name="Never" value="0"/>
<value name="Less" value="1"/>