[Mesa-dev] [PATCH 00/11] panfrost: Hierarchical tiling work
Alyssa Rosenzweig
alyssa.rosenzweig at collabora.com
Fri Jun 14 17:04:32 UTC 2019
Midgard and Bifrost GPUs feature "hierarchical tiling", publicly
documented to varying degrees. Essentially, we're a regular tiler GPU,
but the tile size can vary (and that variance is in driver control).
This series adds some explanation how hierarchical tiling works from the
drivers' perspective, in order to demystify the tiler data structures we
touch. With that explanation, we are then able to use these bits to
compute the tiler data structure sizes ourselves, correctly supplying
the corresponding sizes in the framebuffer descriptor.
Once job management is tamed, we'll use these sizes to statically
allocate the polygon list on a per-framebuffer basis.
Alyssa Rosenzweig (11):
panfrost: Integrate kernel names for tiler FBD
panfrost: Add notes about the tiler allocations
panfrost: Rename tiler fields per tiler research
panfrost: Document tile size heuristic
panfrost: Add pan_tiler.h header
panfrost: Calculate polygon list header size
panfrost: Use polygon list header size computation
panfrost: Compute and use polygon list body size
panfrost: Sanity check tiler polygon list size
panfrost: Rename misc_0 -> tiler_polygon_list
panfrost: Stub out hierarchy mask selection
.../drivers/panfrost/include/panfrost-job.h | 52 +++-
src/gallium/drivers/panfrost/meson.build | 3 +-
src/gallium/drivers/panfrost/pan_context.c | 101 +++---
src/gallium/drivers/panfrost/pan_context.h | 3 +-
src/gallium/drivers/panfrost/pan_drm.c | 2 +-
src/gallium/drivers/panfrost/pan_tiler.c | 291 ++++++++++++++++++
src/gallium/drivers/panfrost/pan_tiler.h | 44 +++
.../drivers/panfrost/pandecode/decode.c | 50 ++-
8 files changed, 457 insertions(+), 89 deletions(-)
create mode 100644 src/gallium/drivers/panfrost/pan_tiler.c
create mode 100644 src/gallium/drivers/panfrost/pan_tiler.h
--
2.20.1
More information about the mesa-dev
mailing list