platform/upstream/mesa.git
2 years agoasahi: Add XML for unknown 0x4a packet
Alyssa Rosenzweig [Thu, 16 Dec 2021 02:15:55 +0000 (21:15 -0500)]
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>

2 years agoasahi: Warn when hacks mode is enabled
Alyssa Rosenzweig [Sun, 16 Jan 2022 17:39:36 +0000 (12:39 -0500)]
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>

2 years agoasahi: Fake more CAPs with dEQP hacks mode
Alyssa Rosenzweig [Sun, 16 Jan 2022 17:36:38 +0000 (12:36 -0500)]
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>

2 years agofrontend/va: Setting the size of VADRMPRIMESurfaceDescriptor
Krunal Patel [Thu, 30 Dec 2021 18:48:18 +0000 (00:18 +0530)]
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>

2 years agofrontends/va: use un-padded width/height in ExportSurfaceHandle
Krunal Patel [Mon, 27 Dec 2021 20:06:44 +0000 (01:36 +0530)]
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>

2 years agobin/gen_calendar_entries: fix newlines on windows
Erik Faye-Lund [Tue, 17 Aug 2021 10:16:41 +0000 (12:16 +0200)]
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>

2 years agoensure csv-files are crlf on disk
Erik Faye-Lund [Tue, 17 Aug 2021 10:50:13 +0000 (12:50 +0200)]
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>

2 years agopan/bi: Schedule around blend shader register clobbering
Alyssa Rosenzweig [Sat, 15 Jan 2022 20:24:17 +0000 (15:24 -0500)]
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>

2 years agopan/decode: Disassemble Bifrost quietly
Alyssa Rosenzweig [Sat, 15 Jan 2022 16:48:32 +0000 (11:48 -0500)]
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>

2 years agopan/decode: Don't print Preload twice
Alyssa Rosenzweig [Sat, 15 Jan 2022 16:46:12 +0000 (11:46 -0500)]
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>

2 years agopanfrost: Remove FBD pointer on Bifrost XML
Alyssa Rosenzweig [Sat, 15 Jan 2022 16:43:40 +0000 (11:43 -0500)]
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>

2 years agopan/decode: Decode Valhall surface descriptor
Alyssa Rosenzweig [Thu, 13 Jan 2022 22:32:35 +0000 (17:32 -0500)]
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>

2 years agopan/decode: Add pandecode_dump_mappings
Alyssa Rosenzweig [Sun, 9 Jan 2022 20:14:08 +0000 (15:14 -0500)]
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>

2 years agopan/decode: Add hexdump helper
Alyssa Rosenzweig [Sun, 9 Jan 2022 20:13:18 +0000 (15:13 -0500)]
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>

2 years agopan/decode: Track mmaps with a red-black tree
Alyssa Rosenzweig [Sun, 9 Jan 2022 20:08:25 +0000 (15:08 -0500)]
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>

2 years agopan/decode: Include addresses for jobs
Alyssa Rosenzweig [Sun, 9 Jan 2022 18:04:34 +0000 (13:04 -0500)]
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>

2 years agopan/decode: Remove hierarchy mask check
Alyssa Rosenzweig [Tue, 21 Dec 2021 17:34:57 +0000 (12:34 -0500)]
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>

2 years agomesa: Remove unused src/mesa/x86-64
Adam Jackson [Thu, 13 Jan 2022 20:51:45 +0000 (15:51 -0500)]
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>

2 years agomesa: Remove unused _mesa_set_sampler_{filters,srgb_decode,wrap}
Adam Jackson [Thu, 13 Jan 2022 20:48:22 +0000 (15:48 -0500)]
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>

2 years agomesa: Remove unused _mesa_is_front_buffer_{draw,read}ing
Adam Jackson [Tue, 4 Jan 2022 21:22:11 +0000 (16:22 -0500)]
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>

2 years agomesa: Remove unused _mesa_is_alpha_to_coverage_enabled
Adam Jackson [Tue, 4 Jan 2022 21:21:27 +0000 (16:21 -0500)]
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>

2 years agomesa/math: Remove unused m_translate.c
Adam Jackson [Tue, 4 Jan 2022 20:38:52 +0000 (15:38 -0500)]
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>

2 years agomesa: Remove unused _mesa_delete_nameless_texture
Adam Jackson [Tue, 4 Jan 2022 20:35:57 +0000 (15:35 -0500)]
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>

2 years agomesa: Remove unused _mesa_all_varyings_in_vbos
Adam Jackson [Tue, 4 Jan 2022 20:23:17 +0000 (15:23 -0500)]
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>

2 years agomesa: Remove unused _mesa_convert_colors
Adam Jackson [Tue, 4 Jan 2022 20:06:35 +0000 (15:06 -0500)]
mesa: Remove unused _mesa_convert_colors

Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14545>

2 years agofreedreno/decode: Handle chip-id
Rob Clark [Fri, 14 Jan 2022 21:35:16 +0000 (13:35 -0800)]
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>

2 years agodriconf: Fix unhandled tags in static conf
Lepton Wu [Fri, 14 Jan 2022 17:57:42 +0000 (09:57 -0800)]
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: 5740ac37014 ("xmlconfig: Add static driconfig support")

Reviewed-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14562>

2 years agoanv: Don't fill lowered_storage_image_param on SKL+
Nanley Chery [Thu, 13 Jan 2022 20:16:40 +0000 (15:16 -0500)]
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>

2 years agopps: increase intel.cfg buffer size
Felix DeGrood [Tue, 7 Dec 2021 19:03:53 +0000 (11:03 -0800)]
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>

2 years agoiris: utrace/perfetto support
Lionel Landwerlin [Mon, 22 Nov 2021 22:43:36 +0000 (00:43 +0200)]
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>

2 years agotools/pps: limit intel cfg to 250ms of sampling
Lionel Landwerlin [Mon, 22 Nov 2021 14:45:45 +0000 (16:45 +0200)]
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>

2 years agopps: enable anv source in example config file
Lionel Landwerlin [Sun, 21 Nov 2021 16:24:17 +0000 (18:24 +0200)]
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>

2 years agoanv: add perfetto source
Lionel Landwerlin [Sun, 21 Nov 2021 16:23:57 +0000 (18:23 +0200)]
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>

2 years agoutil/u_process: protect entrypoints for c++
Lionel Landwerlin [Mon, 10 Jan 2022 13:34:13 +0000 (15:34 +0200)]
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>

2 years agointel/ds: use a per GPU clock ID
Lionel Landwerlin [Sun, 5 Dec 2021 14:38:20 +0000 (16:38 +0200)]
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>

2 years agointel/ds: use the right i915_drm.h include location
Lionel Landwerlin [Sun, 28 Nov 2021 19:33:04 +0000 (21:33 +0200)]
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>

2 years agointel/ds: don't forget to reset upper dword timestamp read
Lionel Landwerlin [Wed, 24 Nov 2021 06:20:20 +0000 (08:20 +0200)]
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: 4ef6698a265fd9 ("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>

2 years agointel/ds: allow user to select metric set at start time
Lionel Landwerlin [Mon, 22 Nov 2021 14:24:43 +0000 (16:24 +0200)]
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>

2 years agointel/ds: reuse intel_ioctl()
Lionel Landwerlin [Sun, 21 Nov 2021 12:16:19 +0000 (14:16 +0200)]
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>

2 years agoanv: implement u_trace support
Lionel Landwerlin [Thu, 18 Nov 2021 15:45:57 +0000 (17:45 +0200)]
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>

2 years agointel/blorp: add measure_end entry point
Lionel Landwerlin [Fri, 26 Nov 2021 16:22:40 +0000 (18:22 +0200)]
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>

2 years agointel/dev,perf: Use a single timescale function
Lionel Landwerlin [Mon, 22 Nov 2021 22:44:06 +0000 (00:44 +0200)]
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>

2 years agoanv: expose a couple of emit helper to build utrace buffer copies
Lionel Landwerlin [Fri, 19 Nov 2021 10:49:24 +0000 (12:49 +0200)]
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>

2 years agoisl: add helpers to printout ops
Lionel Landwerlin [Fri, 19 Nov 2021 09:51:31 +0000 (11:51 +0200)]
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>

2 years agoblorp: add description & helpers to printout ops
Lionel Landwerlin [Fri, 19 Nov 2021 09:51:19 +0000 (11:51 +0200)]
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>

2 years agointel/fs: disable VRS when omask is written
Lionel Landwerlin [Fri, 14 Jan 2022 09:03:34 +0000 (11:03 +0200)]
intel/fs: disable VRS when omask is written

As indicated by
VkPhysicalDeviceFragmentShadingRatePropertiesKHR::fragmentShadingRateWithShaderSampleMask
our implementation will clamp to 1x1 when reading samplemask or
writing to samplemask.

This fixes vkd3d-proton tests test_sample_mask_dxbc & test_sample_mask_dxil

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Fixes: b6332fc4a8ae58 ("intel/compiler: handle coarse pixel in render target writes descriptors")
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14553>

2 years agoanv,lavapipe,v3dv: use wsi_common_get_image
Chia-I Wu [Thu, 13 Jan 2022 20:34:41 +0000 (12:34 -0800)]
anv,lavapipe,v3dv: use wsi_common_get_image

Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> (anv)
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com> (v3dv)
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com> (lavapipe)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14544>

2 years agovulkan/wsi: add wsi_common_get_image
Chia-I Wu [Thu, 13 Jan 2022 20:44:37 +0000 (12:44 -0800)]
vulkan/wsi: add wsi_common_get_image

This can be useful with VkBindImageMemorySwapchainInfoKHR.

Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14544>

2 years agodocs: Update d3d12 feature list
Jesse Natalie [Tue, 11 Jan 2022 21:42:50 +0000 (13:42 -0800)]
docs: Update d3d12 feature list

Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14504>

2 years agod3d12: Support ARB_framebuffer_no_attachments
Jesse Natalie [Tue, 11 Jan 2022 21:39:47 +0000 (13:39 -0800)]
d3d12: Support ARB_framebuffer_no_attachments

Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14504>

2 years agod3d12: When no framebuffer attachments are present, the viewport must be clamped...
Jesse Natalie [Tue, 11 Jan 2022 21:38:45 +0000 (13:38 -0800)]
d3d12: When no framebuffer attachments are present, the viewport must be clamped to framebuffer size

GL has separate no-attachment framebuffer size parameters, but
D3D uses the viewport. Clamp the viewport dimensions to lie within
GL's default framebuffer sizes.

Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14504>

2 years agod3d12: When no framebuffer attachments are present, use ForcedSampleCount instead...
Jesse Natalie [Tue, 11 Jan 2022 21:38:04 +0000 (13:38 -0800)]
d3d12: When no framebuffer attachments are present, use ForcedSampleCount instead of SampleDesc.Count for MSAA

Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14504>

2 years agozink: update gfx_pipeline_state.vertex_strides when necessary
Mike Blumenkrantz [Fri, 14 Jan 2022 15:20:17 +0000 (10:20 -0500)]
zink: update gfx_pipeline_state.vertex_strides when necessary

only necessary without any of the dynamic states and still doesn't fix
the problem, but it's a step

cc: mesa-stable

Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14561>

2 years agodocs: Update d3d12 features
Jesse Natalie [Mon, 10 Jan 2022 22:25:03 +0000 (14:25 -0800)]
docs: Update d3d12 features

Reviewed-by: Sil Vilerino <sivileri@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14486>

2 years agod3d12: Enable draw and multi-draw indirect
Jesse Natalie [Sat, 8 Jan 2022 01:15:23 +0000 (17:15 -0800)]
d3d12: Enable draw and multi-draw indirect

Reviewed-by: Sil Vilerino <sivileri@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14486>

2 years agod3d12: Add a compute transformation to handle indirect draws that need draw params
Jesse Natalie [Mon, 10 Jan 2022 22:14:00 +0000 (14:14 -0800)]
d3d12: Add a compute transformation to handle indirect draws that need draw params

Reviewed-by: Sil Vilerino <sivileri@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14486>

2 years agod3d12: Handle indirect twoface draws
Jesse Natalie [Sat, 8 Jan 2022 02:47:05 +0000 (18:47 -0800)]
d3d12: Handle indirect twoface draws

Reviewed-by: Sil Vilerino <sivileri@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14486>

2 years agod3d12: Handle draw indirect and multi-draw indirect
Jesse Natalie [Sat, 8 Jan 2022 01:07:36 +0000 (17:07 -0800)]
d3d12: Handle draw indirect and multi-draw indirect

Reviewed-by: Sil Vilerino <sivileri@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14486>

2 years agod3d12: Add a command signature cache for indirect draws
Jesse Natalie [Sat, 8 Jan 2022 01:06:41 +0000 (17:06 -0800)]
d3d12: Add a command signature cache for indirect draws

Reviewed-by: Sil Vilerino <sivileri@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14486>

2 years agod3d12: Enable base instance and draw params extensions
Jesse Natalie [Sat, 8 Jan 2022 02:37:24 +0000 (18:37 -0800)]
d3d12: Enable base instance and draw params extensions

Reviewed-by: Sil Vilerino <sivileri@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14486>

2 years agod3d12: Upgrade first vertex state var into all vertex draw params
Jesse Natalie [Mon, 10 Jan 2022 22:09:30 +0000 (14:09 -0800)]
d3d12: Upgrade first vertex state var into all vertex draw params

Add in base instance, draw ID, and is-indexed-draw

Reviewed-by: Sil Vilerino <sivileri@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14486>

2 years agod3d12: Declare support for inverted conditional render
Jesse Natalie [Mon, 10 Jan 2022 17:39:40 +0000 (09:39 -0800)]
d3d12: Declare support for inverted conditional render

Reviewed-by: Sil Vilerino <sivileri@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14486>

2 years agod3d12: Predication fix: For boolean queries used for predication, D3D12 uses uint64...
Jesse Natalie [Mon, 10 Jan 2022 17:39:20 +0000 (09:39 -0800)]
d3d12: Predication fix: For boolean queries used for predication, D3D12 uses uint64, so clear at least a uint64 in the result

Reviewed-by: Sil Vilerino <sivileri@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14486>

2 years agod3d12: Predication fix: re-enable after restarting a batch if needed
Jesse Natalie [Mon, 10 Jan 2022 17:38:43 +0000 (09:38 -0800)]
d3d12: Predication fix: re-enable after restarting a batch if needed

Reviewed-by: Sil Vilerino <sivileri@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14486>

2 years agod3d12: Fix re-enabling predication after temporary disablement
Jesse Natalie [Mon, 10 Jan 2022 16:56:58 +0000 (08:56 -0800)]
d3d12: Fix re-enabling predication after temporary disablement

The equal-zero vs not-equal-zero property was previously lost

Reviewed-by: Sil Vilerino <sivileri@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14486>

2 years agod3d12: Export d3d12_get_state_var from d3d12_nir_passes.c
Jesse Natalie [Sat, 8 Jan 2022 14:26:46 +0000 (06:26 -0800)]
d3d12: Export d3d12_get_state_var from d3d12_nir_passes.c

Reviewed-by: Sil Vilerino <sivileri@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14486>

2 years agospirv,radv: Fix some GL enum comments
Jason Ekstrand [Fri, 10 Dec 2021 04:12:19 +0000 (22:12 -0600)]
spirv,radv: Fix some GL enum comments

GL_LINE_STRIP_ADJACENCY is 0xB.  0xA is GL_LINES_ADJACENCY.  While we're
here, drop the ARB prefixes.

Reviewed-by: Caio Oliveira <caio.oliveira@intel.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14157>

2 years agointel/fs: Use compare_func for wm_prog_key::alpha_test_func
Jason Ekstrand [Fri, 10 Dec 2021 00:21:14 +0000 (18:21 -0600)]
intel/fs: Use compare_func for wm_prog_key::alpha_test_func

Because 0 is no longer a recognizable value (it's NEVER, which isn't a
good default), we add an emit_alpha_test bool to tell the back-end when
to bother alpha testing.  This lets us only touch crocus with the
change.

Reviewed-by: Caio Oliveira <caio.oliveira@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14157>

2 years agointel/compiler: Stop using GLuint in brw_compiler.h
Jason Ekstrand [Thu, 9 Dec 2021 22:47:24 +0000 (16:47 -0600)]
intel/compiler: Stop using GLuint in brw_compiler.h

Reviewed-by: Caio Oliveira <caio.oliveira@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14157>

2 years agoaux/trace: add pipe_context::fence_server_signal tracing
Mike Blumenkrantz [Tue, 11 Jan 2022 18:07:24 +0000 (13:07 -0500)]
aux/trace: add pipe_context::fence_server_signal tracing

Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14539>

2 years agotu: implement wsi hook to decide if we can present directly on device
Danylo Piliaiev [Mon, 31 May 2021 14:35:24 +0000 (17:35 +0300)]
tu: implement wsi hook to decide if we can present directly on device

This will prevent the driver to take the prime blit path for presentation
in scenarios where it can avoid it.

Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Reviewed-by: Samuel Iglesias Gonsálvez <siglesias@igalia.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11091>

2 years agovulkan/wsi: create a common function to compare drm devices
Danylo Piliaiev [Fri, 4 Jun 2021 16:42:08 +0000 (19:42 +0300)]
vulkan/wsi: create a common function to compare drm devices

Effectively moves most of v3dv_wsi_can_present_on_device to the
common code to be used in other drivers.

Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11091>

2 years agointel/devinfo: deal with i915 topology query change
Lionel Landwerlin [Fri, 25 Jun 2021 07:46:30 +0000 (10:46 +0300)]
intel/devinfo: deal with i915 topology query change

i915 does not report slices accurately anymore on Gfx12.5+. Since this
is information we need to have for performance queries, we need to
rebuild it here.

v2: Remove invalid change to pixel pipes computations (Jordan)

v3: Fix index calculation (Curro)

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Francisco Jerez <currojerez@riseup.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14297>

2 years agointel/devinfo: split out l3/pixelpipes counting
Lionel Landwerlin [Fri, 25 Jun 2021 07:45:59 +0000 (10:45 +0300)]
intel/devinfo: split out l3/pixelpipes counting

v2: fix up subslice_total store (Lionel)

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> (v1)
Reviewed-by: Francisco Jerez <currojerez@riseup.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14297>

2 years agointel/devinfo: Adjust L3 banks for DG2
Jordan Justen [Thu, 20 Aug 2020 20:02:18 +0000 (13:02 -0700)]
intel/devinfo: Adjust L3 banks for DG2

Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Co-Authored-by: Francisco Jerez <currojerez@riseup.net>
Reviewed-by: Francisco Jerez <currojerez@riseup.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14297>

2 years agointel/dev: extract slice/subslice total computation
Lionel Landwerlin [Wed, 12 Jan 2022 20:17:06 +0000 (22:17 +0200)]
intel/dev: extract slice/subslice total computation

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Francisco Jerez <currojerez@riseup.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14297>

2 years agov3d: implement double-buffer mode
Iago Toral Quiroga [Fri, 7 Jan 2022 07:08:00 +0000 (08:08 +0100)]
v3d: implement double-buffer mode

As with Vulkan, we are not enabling this by default since it may
improve of hurt performance depending on the case. Instead, we
can selectively enable it by using the V3D_DEBUG environment
variable.

Reviewed-by: Juan A. Suarez <jasuarez@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14551>

2 years agov3dv: implement double-buffer mode
Iago Toral Quiroga [Wed, 5 Jan 2022 10:07:59 +0000 (11:07 +0100)]
v3dv: implement double-buffer mode

Double buffer mode splits the tile buffer size in half so we can
start processing the next tile while the current one is being
stored to memory. This mode is available only if MSAA is not enabled
and can, in theory, improve performance by reducing tile store
overhead, however, it comes at the cost of reducing the tile size,
which also causes some overhead of its own.

Testing shows that this helps some cases (i.e the Vulkan Quake
ports) but hurts others (i.e. Unreal Engine 4), so for the time
being we don't enable this by default but we allow to enable it
selectively by using V3D_DEBUG.

Reviewed-by: Juan A. Suarez <jasuarez@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14551>

2 years agovulkan: return default string for undefined enum
Alejandro Piñeiro [Wed, 12 Jan 2022 22:01:46 +0000 (23:01 +0100)]
vulkan: return default string for undefined enum

Instead of a unreachable.

This would avoid an assert on debug builds that uses vkfoo_to_str to
print structure types. This will become more common as some tests will
start to use VK_STRUCTURE_TYPE_MAX_ENUM to mark structures from
unsupported extensions more often.

v2 (Jason):
   * Include enum name on the default message
   * Handle MAX_ENUM as a special case

v3 (Jason):
   * vk_ObjectType_to_ObjectName don't need to use ${enum.name}

Reviewed-by: Jason Ekstrand <jason@jlekstrand.net
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14525>

2 years agov3dv: implement VK_EXT_4444_formats
Iago Toral Quiroga [Thu, 13 Jan 2022 08:00:10 +0000 (09:00 +0100)]
v3dv: implement VK_EXT_4444_formats

Because these formats are introduced trough an extension, their
enum values are exceedingly large and we cannot use them to index
directly into the format table we had for core formats. Instead,
we put these in a separate table and we always use the
VK_ENUM_OFFSET helper to index into these tables.

Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14533>

2 years agov3dv: handle formats with reverse flag
Iago Toral Quiroga [Thu, 13 Jan 2022 07:59:00 +0000 (08:59 +0100)]
v3dv: handle formats with reverse flag

Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14533>

2 years agov3dv: add swizzle helpers to identify formats wit R/B swap and reverse flags
Iago Toral Quiroga [Thu, 13 Jan 2022 07:55:42 +0000 (08:55 +0100)]
v3dv: add swizzle helpers to identify formats wit R/B swap and reverse flags

Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14533>

2 years agofreedreno, tu: Export vk_icdGetPhysicalDeviceProcAddr
Charles Giessen [Thu, 23 Dec 2021 19:40:53 +0000 (13:40 -0600)]
freedreno, tu: Export vk_icdGetPhysicalDeviceProcAddr

Support Loader ICD Interface Version 4 by exporting the function
vk_icdGetPHysicalDeviceProcAddr.

Reviewed-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14299>

2 years agopanvk: Export vk_icdGetPhysicalDeviceProcAddr
Charles Giessen [Thu, 23 Dec 2021 19:29:11 +0000 (13:29 -0600)]
panvk: Export vk_icdGetPhysicalDeviceProcAddr

Support Loader ICD Interface Version 4 by exporting the function
vk_icdGetPhysicalDeviceProcAddr.

Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14299>

2 years agov3dv: Update LoaderICDInterfaceVersion to v4
Charles Giessen [Thu, 23 Dec 2021 19:20:01 +0000 (13:20 -0600)]
v3dv: Update LoaderICDInterfaceVersion to v4

vk_icdNegotiateLoaderICDInterfaceVersion now correctly identifies the
driver as supporting v4. Before, the driver did support the
functionality but didn't report supporting it through the negotiate
function.

Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14299>

2 years agoradv: Update description of vk_icdNegotiateLoaderICDInterfaceVersion
Charles Giessen [Thu, 23 Dec 2021 19:18:23 +0000 (13:18 -0600)]
radv: Update description of vk_icdNegotiateLoaderICDInterfaceVersion

Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14299>

2 years agozink: add some nv ci results
Mike Blumenkrantz [Thu, 13 Jan 2022 21:29:53 +0000 (16:29 -0500)]
zink: add some nv ci results

just something so I have a vague idea

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14547>

2 years agozink: remove SpvMemorySemanticsMakeVisibleMask from nir_intrinsic_memory_barrier
Mike Blumenkrantz [Wed, 12 Jan 2022 20:26:22 +0000 (15:26 -0500)]
zink: remove SpvMemorySemanticsMakeVisibleMask from nir_intrinsic_memory_barrier

this is invalid since vk memory model isn't used

cc: mesa-stable

Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14540>

2 years agoradv: enable radv_disable_aniso_single_level for Battlefield 1 & V
Samuel Pitoiset [Mon, 27 Dec 2021 13:36:34 +0000 (14:36 +0100)]
radv: enable radv_disable_aniso_single_level for Battlefield 1 & V

Both games seem to have a bug. This can also be reproduced with
AMDVLK since PAL enabled anisotropic filtering for single level images.

Fixes: 5ce4017a2bf ("radv,aco: do not disable anisotropy filtering for non-mipmap images")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/5753
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14471>

2 years agoradv: allow to disable anisotropic filtering for single level image with drirc
Samuel Pitoiset [Mon, 27 Dec 2021 13:18:59 +0000 (14:18 +0100)]
radv: allow to disable anisotropic filtering for single level image with drirc

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14471>

2 years agopanfrost: Don't double-free when handling error for unsupported GPU
Carsten Haitzler [Wed, 12 Jan 2022 15:36:13 +0000 (15:36 +0000)]
panfrost: Don't double-free when handling error for unsupported GPU

Setting the screen ro member before we checked gpu id means the error
case leads to a double-free because screen->ro is set and allocated
by parent who hanbdles de-alloc a second time after we destroyed the
screen we just created because ro was set.

Cc: mesa-stable
Signed-off-by: Carsten Haitzler <carsten.haitzler@foss.arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14516>

2 years agokmsro: Add komeda DPU
Carsten Haitzler [Wed, 12 Jan 2022 11:39:19 +0000 (11:39 +0000)]
kmsro: Add komeda DPU

Arm Komeda (Mali) display units do exist on a few SoC's. This is the
first time that I've seen Mesa brought up "in anger" on one of these,
thus it has no such knowledge of these DPUs. This adds that to the
kmsro set like a lot of other fairly standard split GPU/DPU devices.

Signed-off-by: Carsten Haitzler <carsten.haitzler@foss.arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14515>

2 years agopanfrost: Add GPU G76 to the set of known ids
Carsten Haitzler [Wed, 12 Jan 2022 15:39:04 +0000 (15:39 +0000)]
panfrost: Add GPU G76 to the set of known ids

This is another working GPU so add the ID to the known set. Working on
real silicon and tested.

Signed-off-by: Carsten Haitzler <carsten.haitzler@foss.arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14517>

2 years agoutil/vbuf: fix buffer translation sizing
Mike Blumenkrantz [Mon, 10 Jan 2022 17:07:50 +0000 (12:07 -0500)]
util/vbuf: fix buffer translation sizing

the original change here attempted to fix calculating the maximum bound for the
mapped readback buffer by adding the maximum attribute size to the final element
used by readback

the calculation was erroneous, however, because it instead calculated the maximum
offset instead of the size, which would cause a different kind of overrun

Fixes: 3c5b7dca30e ("util/vbuf: fix buffer overrun in attribute conversions")

fixes #5846

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14479>

2 years agofreedreno/fdl: Fix reinterpreting "size-compatible" formats
Connor Abbott [Wed, 12 Jan 2022 17:25:57 +0000 (18:25 +0100)]
freedreno/fdl: Fix reinterpreting "size-compatible" formats

It's allowed to reinterpret compressed formats as one of a few
non-compressed formats with the same pixel size as the blocksize of the
compressed format, and vice-versa. If we did this we'd wind up with an
incorrect width/height. Fix that.

Fixes dEQP-VK.image.sample_texture.*.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14520>

2 years agov3dv: simplify v3dv_debug_ignored_stype
Alejandro Piñeiro [Wed, 12 Jan 2022 12:16:18 +0000 (13:16 +0100)]
v3dv: simplify v3dv_debug_ignored_stype

mesa_logd already handles having or not DEBUG defined, and also has a
better empty option.

Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14512>

2 years agoradv: only clear VRS_HTILE_ENCODING on GFX10.3+
Samuel Pitoiset [Thu, 13 Jan 2022 07:51:20 +0000 (08:51 +0100)]
radv: only clear VRS_HTILE_ENCODING on GFX10.3+

On older chips like GFX9, bit 19 is RB_ALIGNED.

Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/5859
Fixes: 9c746157ae4 ("radv: reset VRS if the current subpass doesn't have a VRS attachment")
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14530>

2 years agoglthread: Check out of bounds for MultiDrawElementsBaseVertex cmd
Vadym Shovkoplias [Tue, 11 Jan 2022 08:21:05 +0000 (10:21 +0200)]
glthread: Check out of bounds for MultiDrawElementsBaseVertex cmd

Make sure draw count is not high so the MultiDrawElementsBaseVertex cmd
can fit the queue buffer.

v2: add the same check for _mesa_marshal_MultiDrawArrays and add additional
    assert to _mesa_glthread_allocate_command (Pierre-Eric)

Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/5719
Signed-off-by: Vadym Shovkoplias <vadym.shovkoplias@globallogic.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14490>

2 years agointel: Add *disabled* device ids for DG2
Jordan Justen [Mon, 9 Dec 2019 18:51:40 +0000 (10:51 -0800)]
intel: Add *disabled* device ids for DG2

We are waiting for i915 to enable DG2 in upstream Linux, so for now we
use an "#if 0" around the PCI ids.

Reworks:
 * Merged Lionel's "intel/devinfo: store the different kind of DG2"

Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Acked-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14524>

2 years agointel: Add device info for DG2
Jordan Justen [Mon, 9 Dec 2019 18:51:40 +0000 (10:51 -0800)]
intel: Add device info for DG2

Reworks:
 * Lionel: simulator_id
 * Rafael: has_llc
 * Merged Lionel's "intel/devinfo: store the different kind of DG2"

Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Acked-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14524>