Alyssa Rosenzweig
9645fa9107
agx: Handle discard intrinsics
...
Lower to `sample_mask = 0`. Actually that implements a demote... doing
discard correctly probably requires rewriting the shader control flow to
insert a return where necessary...
Also, possibly we should be lowering this in NIR to play nice with
gl_SampleMask writes but that's a problem for when we understand the
hardware better.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14219 >
2022-01-16 18:23:28 +00:00
Alyssa Rosenzweig
f248f6623c
agx: Add sample_mask instruction
...
Sets the output sample mask to a given 8-bit immediate or 16-bit
register. Also used to implement discards, which is my ES2 interest.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14219 >
2022-01-16 18:23:28 +00:00
Alyssa Rosenzweig
dcc12656e3
asahi: Route sample mask from shader
...
Compiler-controlled bit in the cmdstream.
Some other magic bits are needed for sample mask writes to work
properly.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14219 >
2022-01-16 18:23:28 +00:00
Alyssa Rosenzweig
9b57600502
asahi: Rectify confusing XML comment
...
The field was split up...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14219 >
2022-01-16 18:23:28 +00:00
Alyssa Rosenzweig
3341abc5d7
asahi: Break out Fragment Parameters word
...
What the other 31 bits are for is anyone's guess.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14219 >
2022-01-16 18:23:28 +00:00
Alyssa Rosenzweig
fc5a72be2f
asahi: Add XML for unknown 0x4a packet
...
Enough bits of this packet are known that open-coding hex bytes for it
is annoying. Add some XML correpsonding to what we know.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14219 >
2022-01-16 18:23:28 +00:00
Alyssa Rosenzweig
054c5be102
asahi: Warn when hacks mode is enabled
...
I don't want your pesky bug report.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14579 >
2022-01-16 12:43:55 -05:00
Alyssa Rosenzweig
011106640f
asahi: Fake more CAPs with dEQP hacks mode
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14579 >
2022-01-16 12:43:55 -05:00
Krunal Patel
13b79266e4
frontend/va: Setting the size of VADRMPRIMESurfaceDescriptor
...
Issue: objects[i].size is returned as '0' for all
Root cause: The value of objects.size is hard coded to '0' in
vlVaExportSurfaceHandle()
Fix: Assigning the value by multiplying height and width of the surface
Signed-off-by: Krunal Patel <krunalkumarmukeshkumar.patel@amd.corp-partner.google.com >
Reviewed-by: Leo Liu <leo.liu@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14313 >
2022-01-16 15:44:17 +00:00
Krunal Patel
76b7e39354
frontends/va: use un-padded width/height in ExportSurfaceHandle
...
Issue: VADRMPRIMESurfaceDescriptor width and height are rounded up to
macroblock size (16).
Rootcause: surf->buffer's width/height are rounded up to macroblock size (16),
so they shouldn't be used here.
Fix: Using surf->templ's width/height instead fixes incorrect surface
dimensions being sent via VADRMPRIMESurfaceDescriptor.
Signed-off-by: Krunal Patel <krunalkumarmukeshkumar.patel@amd.corp-partner.google.com >
Reviewed-by: Leo Liu <leo.liu@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14313 >
2022-01-16 15:44:17 +00:00
Erik Faye-Lund
b6cc240db1
bin/gen_calendar_entries: fix newlines on windows
...
The documentation[1] for the csv module specifies that we should specify
newline='' when opening the output file. Without that, the module
garbles the newlines, writing them as \r\r\n on Windows instead of \r\n.
So let's do what the documentation says, and specify newline=''
[1]: https://docs.python.org/3/library/csv.html#id3
Reviewed-by: Eric Engestrom <eric@engestrom.ch >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12405 >
2022-01-16 08:39:44 +00:00
Erik Faye-Lund
493f688331
ensure csv-files are crlf on disk
...
According to RFC 4189 CSV files should be encoded using CRLF newlines,
not LF. This helps compatibility with tools, like python's csv module,
who always uses CRLF.
While we're at it, normalize the one CSV that was CRLF in-repo to LF,
and let git do the newline-normalization when needed instead.
Reviewed-by: Eric Engestrom <eric@engestrom.ch >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12405 >
2022-01-16 08:39:44 +00:00
Alyssa Rosenzweig
b8d37eb1bb
pan/bi: Schedule around blend shader register clobbering
...
By software ABI, a blend shader is permitted to clobber registers
R0-R15. The scheduler needs to be aware of this, to avoid moving a write
to one of these registers past the BLEND itself. Otherwise the schedule
is invalid.
This bug affects GLES3.0, but is rare enough in practice that we had
missed it. It requires a fragment shader to write to multiple render
targets with attached blend shaders, and have temporaries register
allocated to R0-R15 that are not read by the blend shader, but are sunk
past the BLEND instruction by the scheduler. Prevents a regression when
switching boolean representations on:
dEQP-GLES31.functional.shaders.builtin_functions.integer.uaddcarry.uvec4_lowp_fragment
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14577 >
2022-01-15 21:51:57 +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
330bb2c58b
panfrost: Remove FBD pointer on Bifrost XML
...
It's a pointer to a thread storage descriptor, not a framebuffer
descriptor. Unlike Midgard, these don't have to alias. The FBD pointer
was unused anyway, so remove it to reduce noise in pandecode dumps.
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14543 >
2022-01-15 11:43:40 -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
c947a52df4
pan/decode: Add pandecode_dump_mappings
...
Add a helper to dump all mapped GPU memory. This is a blunt, seldom
useful instrument ... but when it /is/ useful it's your only option.
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
861fa2baec
pan/decode: Add hexdump helper
...
I think I originally wrote this for Asahi? Should probably be moved to
util/...
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
6752fcf179
pan/decode: Track mmaps with a red-black tree
...
Rather than emulating page tables, poorly, with a hash table, use a
red-black tree and store the intervals directly. This is deterministic
instead of probabilistic, attaining O(log n) performance for n mapped
intervals which is good enough. Unlike the hash table approach, this
allows us to iterate intervals easily.
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
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
Adam Jackson
01f5fffbc6
mesa: Remove unused src/mesa/x86-64
...
Reviewed-by: Emma Anholt <emma@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14545 >
2022-01-15 03:14:00 +00:00
Adam Jackson
a686946553
mesa: Remove unused _mesa_set_sampler_{filters,srgb_decode,wrap}
...
Reviewed-by: Emma Anholt <emma@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14545 >
2022-01-15 03:14:00 +00:00
Adam Jackson
2db87ad344
mesa: Remove unused _mesa_is_front_buffer_{draw,read}ing
...
Reviewed-by: Emma Anholt <emma@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14545 >
2022-01-15 03:14:00 +00:00
Adam Jackson
203df8c264
mesa: Remove unused _mesa_is_alpha_to_coverage_enabled
...
Reviewed-by: Emma Anholt <emma@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14545 >
2022-01-15 03:14:00 +00:00
Adam Jackson
c630408945
mesa/math: Remove unused m_translate.c
...
Reviewed-by: Emma Anholt <emma@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14545 >
2022-01-15 03:14:00 +00:00
Adam Jackson
c828490b26
mesa: Remove unused _mesa_delete_nameless_texture
...
meta was the last user.
Reviewed-by: Emma Anholt <emma@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14545 >
2022-01-15 03:14:00 +00:00
Adam Jackson
c1fa6bbecf
mesa: Remove unused _mesa_all_varyings_in_vbos
...
Reviewed-by: Emma Anholt <emma@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14545 >
2022-01-15 03:14:00 +00:00
Adam Jackson
6e3cd05870
mesa: Remove unused _mesa_convert_colors
...
Reviewed-by: Emma Anholt <emma@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14545 >
2022-01-15 03:14:00 +00:00
Rob Clark
fcb3b87553
freedreno/decode: Handle chip-id
...
For cmdstream traces from newer devices, we need to identify the gpu
based on chip-id.
Signed-off-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14564 >
2022-01-14 23:17:03 +00:00
Lepton Wu
d15021435e
driconf: Fix unhandled tags in static conf
...
A rule with executable_regexp tag would match every executable
without this fix and force_glsl_extensions_warn would be always
set to true which breaks some dEQP tests.
Fixes: 5740ac3701 ("xmlconfig: Add static driconfig support")
Reviewed-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14562 >
2022-01-14 22:09:50 +00:00
Nanley Chery
fe0a6b9606
anv: Don't fill lowered_storage_image_param on SKL+
...
The switch statement in anv_descriptor_data_for_type() shows that this
field isn't used on SKL+.
On XeHP, this avoids assert failures by preventing
isl_surf_fill_image_param() from being called. That function doesn't
expect Tile4 surfaces.
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14546 >
2022-01-14 21:47:48 +00:00
Felix DeGrood
1027655810
pps: increase intel.cfg buffer size
...
Reviewed-by: Rohan Garg <rohan.garg@intel.com >
Acked-by: Antonio Caggiano <antonio.caggiano@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13996 >
2022-01-14 20:17:44 +00:00
Lionel Landwerlin
2e3490dd0f
iris: utrace/perfetto support
...
v2: Fixup gpu_id computation, use minor of /dev/dri/* % 128 since we
don't know whether we get card0 or renderD128 for instance.
(Lionel)
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Rohan Garg <rohan.garg@intel.com > (v1)
Acked-by: Antonio Caggiano <antonio.caggiano@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13996 >
2022-01-14 20:17:44 +00:00
Lionel Landwerlin
1d2fea6eae
tools/pps: limit intel cfg to 250ms of sampling
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Rohan Garg <rohan.garg@intel.com >
Acked-by: Antonio Caggiano <antonio.caggiano@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13996 >
2022-01-14 20:17:44 +00:00
Lionel Landwerlin
b462dafbd6
pps: enable anv source in example config file
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Rohan Garg <rohan.garg@intel.com >
Acked-by: Antonio Caggiano <antonio.caggiano@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13996 >
2022-01-14 20:17:44 +00:00
Lionel Landwerlin
e760c5b37b
anv: add perfetto source
...
v2: Increase custom stall data (Felix)
Fixup build (Felix)
v3: Add API enum (Rohan)
Fixup old comment (Rohan)
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Rohan Garg <rohan.garg@intel.com >
Acked-by: Antonio Caggiano <antonio.caggiano@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13996 >
2022-01-14 20:17:44 +00:00
Lionel Landwerlin
b70143f4e3
util/u_process: protect entrypoints for c++
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Rohan Garg <rohan.garg@intel.com >
Acked-by: Antonio Caggiano <antonio.caggiano@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13996 >
2022-01-14 20:17:44 +00:00
Lionel Landwerlin
cf9956a8c5
intel/ds: use a per GPU clock ID
...
Multi-GPU setups :)
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Rohan Garg <rohan.garg@intel.com >
Acked-by: Antonio Caggiano <antonio.caggiano@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13996 >
2022-01-14 20:17:44 +00:00
Lionel Landwerlin
61766f9f90
intel/ds: use the right i915_drm.h include location
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Rohan Garg <rohan.garg@intel.com >
Acked-by: Antonio Caggiano <antonio.caggiano@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13996 >
2022-01-14 20:17:44 +00:00
Lionel Landwerlin
e35a65ae45
intel/ds: don't forget to reset upper dword timestamp read
...
This could lead to confusing if the 32bits roll over (every ~6mn or
so).
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Fixes: 4ef6698a26 ("intel/ds: drop timestamp correlation code")
Reviewed-by: Rohan Garg <rohan.garg@intel.com >
Acked-by: Antonio Caggiano <antonio.caggiano@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13996 >
2022-01-14 20:17:44 +00:00
Lionel Landwerlin
6eb554a9c7
intel/ds: allow user to select metric set at start time
...
Rather than using always the same metric set, let the user choose when
starting the producer with :
INTEL_PERFETTO_METRIC_SET=RasterizerAndPixelBackend ./build/src/tool/pps/pps-producer
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Rohan Garg <rohan.garg@intel.com >
Acked-by: Antonio Caggiano <antonio.caggiano@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13996 >
2022-01-14 20:17:44 +00:00
Lionel Landwerlin
69df00b33b
intel/ds: reuse intel_ioctl()
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Rohan Garg <rohan.garg@intel.com >
Acked-by: Antonio Caggiano <antonio.caggiano@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13996 >
2022-01-14 20:17:44 +00:00
Lionel Landwerlin
cc5843a573
anv: implement u_trace support
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Rohan Garg <rohan.garg@intel.com >
Acked-by: Antonio Caggiano <antonio.caggiano@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13996 >
2022-01-14 20:17:44 +00:00
Lionel Landwerlin
bb541d1159
intel/blorp: add measure_end entry point
...
Will be useful to figure out when blorp operations end.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Rohan Garg <rohan.garg@intel.com >
Acked-by: Antonio Caggiano <antonio.caggiano@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13996 >
2022-01-14 20:17:44 +00:00
Lionel Landwerlin
d3724de894
intel/dev,perf: Use a single timescale function
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Rohan Garg <rohan.garg@intel.com >
Acked-by: Antonio Caggiano <antonio.caggiano@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13996 >
2022-01-14 20:17:44 +00:00
Lionel Landwerlin
02a4d622ed
anv: expose a couple of emit helper to build utrace buffer copies
...
We'll want to copy timestamp buffers when commands buffers are
resubmitted multiple times.
v2: Merge a couple of #if GFX_VER >= 8 (Rohan)
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Rohan Garg <rohan.garg@intel.com >
Acked-by: Antonio Caggiano <antonio.caggiano@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13996 >
2022-01-14 20:17:44 +00:00
Lionel Landwerlin
246e2c74d3
isl: add helpers to printout ops
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Rohan Garg <rohan.garg@intel.com >
Acked-by: Antonio Caggiano <antonio.caggiano@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13996 >
2022-01-14 20:17:44 +00:00
Lionel Landwerlin
e8ea6a899f
blorp: add description & helpers to printout ops
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Rohan Garg <rohan.garg@intel.com >
Acked-by: Antonio Caggiano <antonio.caggiano@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13996 >
2022-01-14 20:17:44 +00:00