Karol Herbst
f9b05dfd77
rusticl/mem: move MemBase::map into the users
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27376 >
2024-02-14 14:15:39 +00:00
Karol Herbst
d3c3892088
rusticl/mem: reorganize Image::map
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27376 >
2024-02-14 14:15:39 +00:00
Karol Herbst
97680ca861
rusticl/mem: move comment describing how mapping works
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27376 >
2024-02-14 14:15:39 +00:00
Karol Herbst
a9a928cbf9
rusticl/mem: remove get_res
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27376 >
2024-02-14 14:15:39 +00:00
Karol Herbst
687dea4fde
rusticl/mem: move tx into Buffer
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27376 >
2024-02-14 14:15:39 +00:00
Karol Herbst
d18333889e
rusticl/mem: move is_parent_buffer into Image
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27376 >
2024-02-14 14:15:39 +00:00
Karol Herbst
bfa342e16e
rusticl/image: call tx on the parent buffer directly
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27376 >
2024-02-14 14:15:39 +00:00
Karol Herbst
6a15d5baee
rusticl/mem: fold tx_raw into tx
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27376 >
2024-02-14 14:15:39 +00:00
Karol Herbst
790d00d3e1
rusticl/mem: move tx_image into Image
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27376 >
2024-02-14 14:15:39 +00:00
Karol Herbst
e39b6288f6
rusticl/mem: get rid of pixel_size
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27376 >
2024-02-14 14:15:39 +00:00
Karol Herbst
2db23aa207
rusticl/mem: split Image::copy_to into Buffer and Image versions
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27376 >
2024-02-14 14:15:39 +00:00
Karol Herbst
c0c6eca095
rusticl/mem: split Buffer::copy_to into Buffer and Image versions
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27376 >
2024-02-14 14:15:39 +00:00
Karol Herbst
28bff68d98
rusticl/mem: split copy_to into Buffer and Image
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27376 >
2024-02-14 14:15:39 +00:00
Karol Herbst
dd4096e7fd
rusticl/mem: move copy_to_rect into Buffer
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27376 >
2024-02-14 14:15:39 +00:00
Karol Herbst
e048d8c796
rusticl/mem: split write_from_user_rect into buffer and image
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27376 >
2024-02-14 14:15:39 +00:00
Karol Herbst
efc803175a
rusticl/mem: split read_to_user_rect into Buffer and Image versions
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27376 >
2024-02-14 14:15:39 +00:00
Karol Herbst
fdfde8a189
rusticl/mem: move copy and write buffer impls into Buffer
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27376 >
2024-02-14 14:15:39 +00:00
Karol Herbst
aaa05ffc1d
rusticl/mem: split unmap into Buffer and Image versions
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27376 >
2024-02-14 14:15:39 +00:00
Karol Herbst
a840a75d17
rusticl/mem: move shadow sync methods into concrete types
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27376 >
2024-02-14 14:15:39 +00:00
Karol Herbst
553a9e38bd
rusticl/mem: move map methods into concrete types
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27376 >
2024-02-14 14:15:39 +00:00
Karol Herbst
219d8e0dae
core/memory: drop Arc for &Arc<Queue> function parameters
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27376 >
2024-02-14 14:15:39 +00:00
Karol Herbst
5a1089b811
rusticl/mem: move fill methods into concrete types
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27376 >
2024-02-14 14:15:39 +00:00
Karol Herbst
58c042f439
rusticl/mem: use pattern matching in is_parent_buffer
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27376 >
2024-02-14 14:15:39 +00:00
Karol Herbst
d705307a72
rusticl/mem: split into Buffer and Image
...
No implementation is moved yet, but doing this first makes it easier to
move things.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27376 >
2024-02-14 14:15:38 +00:00
Karol Herbst
0125e865a1
rusticl/icd: actually allow dispatching CL types
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27376 >
2024-02-14 14:15:38 +00:00
Karol Herbst
aa5b0e7883
rusticl/device: get rid of pointless Arc overhead
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27376 >
2024-02-14 14:15:38 +00:00
Karol Herbst
7f77f91929
rusticl/icd: split Arc part out of CLObject into new trait
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27376 >
2024-02-14 14:15:38 +00:00
Karol Herbst
4807573ba7
rusticl/icd: move get_arc() and rename it
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27376 >
2024-02-14 14:15:38 +00:00
Karol Herbst
3be4f60f97
rusticl/event: drop from_cl_arr and use arcs_from_arr
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27376 >
2024-02-14 14:15:38 +00:00
Karol Herbst
57e5d377da
rusticl/icd: move from_arc() and rename it
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27376 >
2024-02-14 14:15:38 +00:00
Karol Herbst
51afd7a00c
rusticl/device: deduplicate devices with sorting
...
a HashSet was kinda overkill here to begin with.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27376 >
2024-02-14 14:15:38 +00:00
Karol Herbst
e63e21ac74
rusticl/icd: move get_ref()
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27376 >
2024-02-14 14:15:38 +00:00
Karol Herbst
13241264f1
rusticl/icd: fold leak_ref into its only consumer
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27376 >
2024-02-14 14:15:38 +00:00
Karol Herbst
4ca11d5f06
rusticl/icd: move get_arc_vec_from_arr and rename it
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27376 >
2024-02-14 14:15:38 +00:00
Karol Herbst
9b5bcbb60f
rusticl/icd: move retain() and release()
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27376 >
2024-02-14 14:15:38 +00:00
Karol Herbst
45b9fdb4e5
rusticl/icd: move refcnt() and get rid of needless atomic ops
...
The old impl used `get_arc` which internally calls into
`Arc::increment_strong_count` in order to protect against Arc::drop
deallocating our objects. We could also just not do that :)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27376 >
2024-02-14 14:15:38 +00:00
Karol Herbst
7564b81749
rusticl/icd: move get_ref_vec_from_arr into the Rusticl type
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27376 >
2024-02-14 14:15:38 +00:00
Karol Herbst
46227bf44c
rusticl/api: allow CLObjectBase to be placed anywhere
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27376 >
2024-02-14 14:15:38 +00:00
Karol Herbst
6d8b0a53c6
rusticl/util: support nested structs in offset_of!
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27376 >
2024-02-14 14:15:38 +00:00
Karol Herbst
0287aa4b34
rust/api: add RustTypes enum
...
We want to move away from a 1:1 mapping between CL and Rusticl types, so
that we can differentiate better between different memory types.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27376 >
2024-02-14 14:15:38 +00:00
Lionel Landwerlin
e54638ddf5
anv: fix buffer marker cache flush issues on MTL
...
For some yet unknown reason the CS L3 coherency setting is different
on MTL than DG2.
Fixes issues in tests from the subgroup :
dEQP-VK.api.buffer_marker.*
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Fixes: c8e122a738 ("anv: Implement rudimentary VK_AMD_buffer_marker support")
Reviewed-by: Tapani Pälli <tapani.palli@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27613 >
2024-02-14 13:45:46 +00:00
Lionel Landwerlin
34078b67ed
anv: don't allocate aux padded BOs with host pointers
...
We can't allocate additional space with host pointers anyway. These
are already allocated pieces of memory by the application.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Fixes: 646a7c864d ("anv: re-introduce BO CCS allocations")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/10608
Reviewed-by: Tapani Pälli <tapani.palli@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27612 >
2024-02-14 11:51:33 +00:00
Lionel Landwerlin
feb7cf82dc
anv: remove redundant asserts
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Tapani Pälli <tapani.palli@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27611 >
2024-02-14 11:07:10 +00:00
Iago Toral Quiroga
cc7934a89b
broadcom/compiler: fix lane selection for subgroups in fragment shaders
...
It seems the hardware behavior for this is as per-spec and we are
supposed to identify as active entire quads. Particularly, there
are some derivative tests with dynamic control flow that use
subgroup ballot and require this.
However, we still need to exclude terminted lanes (OpTerminate). For
that, we keep track of the sample mask at the start of a fagment
shader start and compare it with the current sample mask.
Fixes: ('broadcom/compiler: support subgroup reduction operations from fragment shaders')
Fixes: dEQP-VK.glsl.derivate.dynamic_loop.*
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27409 >
2024-02-14 08:02:41 +01:00
Mark Janes
2143da6d5a
intel/dev: improve meson invocation for intel_device_info gen
...
Review for related code-generation commits advised that the use of an
--outdir parameter was undesirable.
Reviewed-by: Dylan Baker <dylan@pnwbakers.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27557 >
2024-02-13 19:38:36 +00:00
Mark Janes
f95b87a3dc
intel/tools: load json device info in drm_shim
...
Enable drm_shim to parse a serialized intel_device_info structure from
json. When overriding the gpu hardware, drm_shim provides the stubbed
intel_device_info structure to mesa through an unused ioctl.
Reviewed-by: Dylan Baker <dylan@pnwbakers.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27557 >
2024-02-13 19:38:36 +00:00
Mark Janes
56da473b6f
intel/dev/tools: add json as an output format for intel_dev_info
...
intel_dev_info prints out struct intel_device_info in a user-friendly
format. Json format enables this information to be used as input for
tools.
Reviewed-by: Dylan Baker <dylan@pnwbakers.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27557 >
2024-02-13 19:38:36 +00:00
Mark Janes
1f725a222a
intel/dev: implement json serialization for intel_device_info
...
Generate intel_device_serialize.c from a mako template, providing
functions to dump and parse intel_device_info.
intel_device_info.py declares python objects representing all type
declarations associated with intel_device_info. It is used as a data
source for intel_device_serialize_c.py
intel_device_serialize_c.py emits a c++ file with routines to dump
or load all struct members to/from json. The json format is a direct
translation of the c structure, with 2 exceptions:
- When parsing json, the no_hw member is always set to true to
indicate that the driver's intel_device_info does not correspond to
the current platform.
- When dumping to json, devinfo_type_sha1 is calculated to be a
checksum which changes whenever intel_device_info is updated. This
checksum is encoded in json. When parsing json, the driver verifies
that the checksum matches before loading data into
intel_device_info. This verifies compatibility.
Reviewed-by: Dylan Baker <dylan@pnwbakers.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27557 >
2024-02-13 19:38:36 +00:00
Casey Bowman
d124542b55
anv: Override VendorID for Hitman 3
...
XeSS workaround is required for Hitman 3 to launch for Intel cards.
The following was observed during launch, coming from libxess.dll:
"Intel Plugin Extension ERROR: INTC_LoadExtensionsLibrary failed"
Signed-off-by: Casey Bowman <casey.g.bowman@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27477 >
2024-02-13 19:02:24 +00:00
Mark Janes
e56f810316
intel/tools: add intel device meson dependencies
...
idep_intel_dev ensures that headers are generated before dependent
source files are compiled. Some tools have been building without that
dependency, and encounter intermittent compilation errors on
sufficiently parallel builds.
Any target which depends on idep_intel_dev will link with
libintel_dev. Redundant link instructions can be removed.
Reviewed-by: Caio Oliveira <caio.oliveira@intel.com >
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/10604
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27600 >
2024-02-13 18:37:19 +00:00