Alyssa Rosenzweig
6dfd0998f2
pan/decode: Unify SFBD/MFBD decoding
...
It's the same core logic. Unify and let GenXML do its thing.
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18094 >
2022-08-17 17:25:55 +00:00
Alyssa Rosenzweig
e88b4949de
pan/decode: Reorder MFBD decoding
...
Eliminate some #ifdef by grouping v5 and v6 state separately.
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18094 >
2022-08-17 17:25:55 +00:00
Alyssa Rosenzweig
504022454c
pan/decode: Simplify pandecode_fbd
...
Remove unsued width/height properties, and use cleaner C syntax to build the
return value.
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18094 >
2022-08-17 17:25:55 +00:00
Alyssa Rosenzweig
9621df9637
pan/decode: Stop passing suffixes around
...
Unused.
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18094 >
2022-08-17 17:25:55 +00:00
Alyssa Rosenzweig
42319c6b6d
pan/decode: Stop passing job index around
...
There are a lot of problems with passing job_index around:
* Almost entirely unused
* Not particularly helpful even when used
* Mostly ignored for Valhall already
* Doesn't extend to CSF
It only really exists due to the early days of pandecode generating valid C code
as the trace format. With GenXML instead, that's not applicable.
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18094 >
2022-08-17 17:25:55 +00:00
Alyssa Rosenzweig
3298ac4b12
pan/decode: Remove pandecode_msg
...
It hasn't had a consistent semantic meaning since we've switched decoding over
to GenXML.
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18094 >
2022-08-17 17:25:55 +00:00
Alyssa Rosenzweig
c4c3f246fe
pan/decode: Don't pass around memory handles
...
The hardware doesn't care what BO a given buffer resides in, only what GPU
address it's at. It's simpler to fetch from a GPU address, rather than the pair
of a GPU address and a backing allocation. This cleans up a lot of cruft in
pandecode.
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18094 >
2022-08-17 17:25:55 +00:00
Alyssa Rosenzweig
07e9543270
pan/decode: Fix overrun decoding planes
...
We need to calculate the # of descriptors like we do on Midgard.
Fixes: ae9316f812 ("pan/decode: Decode Valhall surface descriptor")
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17842 >
2022-08-02 21:11:06 +00:00
Icecream95
91d9a34925
pan/decode: Change indent when decoding resources
...
Make the separation between entries in the resource table more
obvious.
Increase the indent by two levels to keep descriptors distinct from
the resource entry itself.
Reviewed-by: Alyssa Rosenzweig <alyssa@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17371 >
2022-07-08 01:30:23 +00:00
Icecream95
e05889c8c9
pan/decode: Use tag bits for resource entry count
...
Fixes crashes when decoding the blob, which sometimes uses fewer than
9 entries.
Reviewed-by: Alyssa Rosenzweig <alyssa@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17371 >
2022-07-08 01:30:23 +00:00
Icecream95
f7da4eade4
pan/decode: fflush buffers after dumping and before aborts
...
Otherwise trace files or other files being written (dEQP TestResults?)
might be truncated.
Reviewed-by: Alyssa Rosenzweig <alyssa@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17371 >
2022-07-08 01:30:23 +00:00
Alyssa Rosenzweig
f45816181f
pan/decode: Print row strides, not line strides
...
I.e. what's actually passed to the hardware, in case of compression or tiling.
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16201 >
2022-05-03 14:20:15 +00:00
Alyssa Rosenzweig
508335c927
panfrost: Add Tiler Job to v9 XML
...
Legacy tiling job, semantics are the same as on Midgard. Useful for blits and
transform feedback.
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15461 >
2022-03-18 18:52:05 +00:00
Alyssa Rosenzweig
e635dc9ea5
panfrost: Refactor XML to permit non-IDVS jobs
...
Tiler jobs look similar, but don't have the Allocations fields. Refactor to make
this possible to express.
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15461 >
2022-03-18 18:52:05 +00:00
Alyssa Rosenzweig
53f1fa9219
panfrost: Fix definition of DCD on v9
...
The position and varying shader environment descriptors are additional sections
of the job, rather than part of the (fragment only) DCD. This distinction
matters for non-IDVS jobs.
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15461 >
2022-03-18 18:52:05 +00:00
Alyssa Rosenzweig
fd87135852
pan/decode: Unify tiler job handling
...
Instead of adding a third Valhall path, let's use GenXML to unify our paths.
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15461 >
2022-03-18 18:52:05 +00:00
Alyssa Rosenzweig
a9ca751a8f
pan/decode: Handle blend arrays on Valhall
...
Required for MRT.
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15461 >
2022-03-18 18:52:05 +00:00
Alyssa Rosenzweig
8c51b54bd1
panfrost: Update supported job types
...
Remove a few that no longer exist, and rename IDVS helper to Malloc Vertex. The
distinction between Malloc Vertex jobs and regular Indexed Vertex jobs is that
the hardware allocates varying buffers dynamically for Malloc Vertex jobs.
Regular IDVS and even legacy tiler jobs are also supported where desired.
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14935 >
2022-02-08 20:27:09 +00:00
Alyssa Rosenzweig
bfba7533c7
panfrost: Add Valhall Plane Descriptor XML
...
This looks superficially like the Bifrost "Surface" descriptor, but it
additionally specifies the in-memory representation of blocks (clumps). If I
understand correctly, decompression is controlled by the plane descriptor,
rather than the texture descriptor level. This is a bit more flexible than
Bifrost.
Once the new fields here are wired up to Mesa, my
dEQP-GLES2.functional.texture.* failures should go away... I hope!
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14851 >
2022-02-03 15:43:27 +00:00
Alyssa Rosenzweig
c85df67f27
pan/decode: Fix missing newlines in error messages
...
Otherwise these error message lines end up truncated, which is a bit
annoying.
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Reported-by: Icecream95 <ixn@disroot.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14575 >
2022-01-24 16:20:49 +00:00
Alyssa Rosenzweig
77a1514a37
pan/decode: Disassemble Bifrost quietly
...
Although Bifrost clause packing and register assignment is tricky, the
relevant code is by now extensively tested, and there's no remaining
reverse-engineering here. So disassembling verbosely just adds tons of
noise to pandecode without increasing the useful information.
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Suggested-by: Icecream95 <ixn@disroot.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14543 >
2022-01-15 11:48:32 -05:00
Alyssa Rosenzweig
58accc995b
pan/decode: Don't print Preload twice
...
It's already printed in the RSD itself, no need to print it out-of-band
a second time. Removes noise in the pandecode.
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14543 >
2022-01-15 11:46:12 -05:00
Alyssa Rosenzweig
ae9316f812
pan/decode: Decode Valhall surface descriptor
...
Instead of incorrectly falling down the Bifrost path.
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14543 >
2022-01-15 11:40:14 -05:00
Alyssa Rosenzweig
a07473b79d
pan/decode: Include addresses for jobs
...
Helpful for contextualizing fault pointers.
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14543 >
2022-01-15 11:40:13 -05:00
Alyssa Rosenzweig
4af20895c5
pan/decode: Remove hierarchy mask check
...
This has never been meaningful.
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14543 >
2022-01-15 11:40:13 -05:00
Alyssa Rosenzweig
9b068f186a
panfrost: Add Valhall support to pandecode
...
Valhall v9 introduces a number of new data structures since Bifrost v7,
and removes a number of traditional data structures. Add decode routines
for the new Valhall data structures, and condition the old routines on
(PAN_ARCH <= 7) to remain buildable and warning-free.
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14063 >
2021-12-06 20:46:09 +00:00
Alyssa Rosenzweig
244f3704d4
panfrost: Zero initialize disassembler stats
...
Keep it simple for introducing new support.
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14063 >
2021-12-06 20:46:09 +00:00
Boris Brezillon
8276a8eb55
panfrost: Move genxml related files to a subdir
...
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12208 >
2021-09-30 10:30:19 +00:00