aboutsummaryrefslogtreecommitdiffstats
path: root/src/panfrost/include/panfrost-job.h
diff options
context:
space:
mode:
authorAlyssa Rosenzweig <[email protected]>2019-08-14 16:01:38 -0700
committerAlyssa Rosenzweig <[email protected]>2019-08-14 16:39:57 -0700
commitb78e04c17b345d79439c27ef7c76eb21410f2ff2 (patch)
tree2c044de5ebd0ee4decd2d4df661fd0ef49be6510 /src/panfrost/include/panfrost-job.h
parent64720d1e9e36fa49b7bcea4bfdb4b998bdceadae (diff)
panfrost: Note "MFBD preload disable" bit
It's a chicken bit, as far as I can tell. Buck buck. Signed-off-by: Alyssa Rosenzweig <[email protected]>
Diffstat (limited to 'src/panfrost/include/panfrost-job.h')
-rw-r--r--src/panfrost/include/panfrost-job.h11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/panfrost/include/panfrost-job.h b/src/panfrost/include/panfrost-job.h
index 98d77e718fc..51e9e78b8bd 100644
--- a/src/panfrost/include/panfrost-job.h
+++ b/src/panfrost/include/panfrost-job.h
@@ -1482,7 +1482,16 @@ struct mali_rt_format {
unsigned swizzle : 12;
- unsigned unk4 : 4;
+ unsigned zero : 3;
+
+ /* Disables MFBD preload. When this bit is set, the render target will
+ * be cleared every frame. When this bit is clear, the hardware will
+ * automatically wallpaper the render target back from main memory.
+ * Unfortunately, MFBD preload is very broken on Midgard, so in
+ * practice, this is a chicken bit that should always be set.
+ * Discovered by accident, as all good chicken bits are. */
+
+ unsigned no_preload : 1;
} __attribute__((packed));
struct bifrost_render_target {