diff options
author | Alyssa Rosenzweig <[email protected]> | 2020-02-10 08:47:09 -0500 |
---|---|---|
committer | Alyssa Rosenzweig <[email protected]> | 2020-02-16 09:16:46 -0500 |
commit | 6dc105555b43695e1de49baf946c6179987f2f4a (patch) | |
tree | 0da37f93032eb10a88a7e65d243e15a8301f4efd /src/panfrost/include | |
parent | 254f40fd535ef57dee2bcc4afd97840749ce5918 (diff) |
panfrost: Unify bifrost_scratchpad with mali_shared_memory
It looks like these are the same structure, so this allows us to reuse
mali_shared_memory across architectures, and dispels with the
Bifrost-specific mystery of the scratchpads... nothing so mysterious
after all, just stack.
Signed-off-by: Alyssa Rosenzweig <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3835>
Diffstat (limited to 'src/panfrost/include')
-rw-r--r-- | src/panfrost/include/panfrost-job.h | 20 |
1 files changed, 4 insertions, 16 deletions
diff --git a/src/panfrost/include/panfrost-job.h b/src/panfrost/include/panfrost-job.h index 8027abebf34..d0d56810ecc 100644 --- a/src/panfrost/include/panfrost-job.h +++ b/src/panfrost/include/panfrost-job.h @@ -1056,17 +1056,6 @@ struct bifrost_tiler_only { u64 zero8; } __attribute__((packed)); -struct bifrost_scratchpad { - u32 zero; - u32 flags; // = 0x1f - /* This is a pointer to a CPU-inaccessible buffer, 16 pages, allocated - * during startup. It seems to serve the same purpose as the - * gpu_scratchpad in the SFBD for Midgard, although it's slightly - * larger. - */ - mali_ptr gpu_scratchpad; -} __attribute__((packed)); - struct mali_vertex_tiler_postfix { /* Zero for vertex jobs. Pointer to the position (gl_Position) varying * output from the vertex shader for tiler jobs. @@ -1100,11 +1089,10 @@ struct mali_vertex_tiler_postfix { u64 viewport; u64 occlusion_counter; /* A single bit as far as I can tell */ - /* Note: on Bifrost, this isn't actually the FBD. It points to - * bifrost_scratchpad instead. However, it does point to the same thing - * in vertex and tiler jobs. - */ - mali_ptr framebuffer; + /* On Bifrost, this points directly to a mali_shared_memory structure. + * On Midgard, this points to a framebuffer (either SFBD or MFBD as + * tagged), which embeds a mali_shared_memory structure */ + mali_ptr shared_memory; } __attribute__((packed)); struct midgard_payload_vertex_tiler { |