Sagar Ghuge
b73960fc40
intel: Add helper to create/destroy i915 VM
...
Signed-off-by: Sagar Ghuge <sagar.ghuge@intel.com >
Reviewed-by: José Roberto de Souza <jose.souza@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23661 >
2023-09-07 06:39:06 +00:00
Sagar Ghuge
13b3d7f741
anv: Handle companion RCS in end/destory/reset code path
...
If we have valid companion RCS command buffer, we should
end/destroy/reset in the same fashion as of main command buffer.
v2:
- Add lock around anv_cmd_buffer_destroy (Sagar)
Signed-off-by: Sagar Ghuge <sagar.ghuge@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: José Roberto de Souza <jose.souza@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23661 >
2023-09-07 06:39:06 +00:00
Sagar Ghuge
801523f03d
anv: Split out End/Destroy/Reset cmd buffer code into helper
...
Since we are going to have companion RCS command buffer, we need to
end/destroy/reset companion RCS command buffer similar to main (CCS/BCS)
command buffer.
It's better to split out common code into helper function so that we can
use it later in this series.
Signed-off-by: Sagar Ghuge <sagar.ghuge@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: José Roberto de Souza <jose.souza@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23661 >
2023-09-07 06:39:05 +00:00
Sagar Ghuge
edcde0679c
anv: Add helper to create companion RCS command buffer
...
This helper takes the main command buffer as input and then create a
companion RCS command buffer.
v2:
- Rename anv_get_render_queue_index helper to
anv_get_first_render_queue_index (Jose)
- Rename RCS command buffer to companion RCS command buffer (Lionel)
- Add early return in anv_get_first_render_queue_index (Lionel)
- Add lock around the function (Jose)
- Move companion rcs command pool creation in device create (Sagar)
- Reset companion RCS cmd buffer (Sagar)
Signed-off-by: Sagar Ghuge <sagar.ghuge@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: José Roberto de Souza <jose.souza@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23661 >
2023-09-07 06:39:05 +00:00
Lionel Landwerlin
ceb1c6033b
anv: split BLEND_STATE packing from BLEND_STATE_POINTERS emit
...
This way when blorp changes the 3DSTATE_BLEND_STATE_POINTERS, we can
just reemit the prior Vulkan state without repacking any of the values
in the BLEND_STATE structure.
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/24536 >
2023-09-06 20:07:02 +00:00
Lionel Landwerlin
2b5f9cc30a
anv: remove unused state emission
...
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/24536 >
2023-09-06 20:07:02 +00:00
Lionel Landwerlin
50f6903bd9
anv: add new low level emission & dirty state tracking
...
A single Vulkan state can map to multiple fields in different GPU
instructions. This change introduces the bottom half of a simplified
emission mechanism where we do the following :
Vulkan runtime state
|
V
Intermediate driver state
|
V
Instruction programming
This way we can detect that the intermediate state didn't change and
avoid HW instruction emission.
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/24536 >
2023-09-06 20:07:02 +00:00
Lionel Landwerlin
44656f98d5
anv: split pipeline programming into instructions
...
The goal of this change it to move away from a single batch buffer
containing all kind of pipeline instructions to a list of instructions
we can emit separately.
We will later implement pipeline diffing and finer state tracking that
will allow fewer instructions to be emitted.
This changes the following things :
* instead of having a batch & partially packed instructions, move
everything into the batch
* add a set of pointer in the batch that allows us to point to each
instruction (almost... we group some like URB instructions,
etc...).
At pipeline emission time, we just go through all of those pointers
and emit the instruction into the batch. No additional packing is
involved.
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/24536 >
2023-09-06 20:07:02 +00:00
Lionel Landwerlin
758540d741
anv: add a flag tracking occlusion query count change
...
We'll use this later to know when to reemit
3DSTATE_STREAMOUT::ForceRendering
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/24536 >
2023-09-06 20:07:02 +00:00
Lionel Landwerlin
0ce772bd19
anv: split 3DSTATE_VFG emission
...
Leave the static part in genX_pipeline.c and only repack the dynamic
part in genX_gfx_state.c
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/24536 >
2023-09-06 20:07:02 +00:00
Lionel Landwerlin
1e081bd680
anv: split 3DSTATE_TE packing between static & dynamic parts
...
We can reduce the amount of packing we do by only packing the dynamic
part.
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/24536 >
2023-09-06 20:07:02 +00:00
Lionel Landwerlin
19c3f3ede4
anv: categorize partial/final pipeline instruction
...
The old gfx8 field doesn't apply anymore.
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/24536 >
2023-09-06 20:07:02 +00:00
Lionel Landwerlin
b1614c4e22
anv: rename files to represent their usage
...
gfx8_cmd_buffer.c does not apply to gfx8 anymore for instance, it can
also be included in all builds.
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/24536 >
2023-09-06 20:07:01 +00:00
Lionel Landwerlin
a1f7e7d93e
anv: move all dynamic state emission to cmd_buffer_flush_dynamic_state
...
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/24536 >
2023-09-06 20:07:01 +00:00
Lionel Landwerlin
047c0ba44b
intel/decoder: implement accumulated prints
...
Useful when you want to compare 2 batches with different ordering in
instruction emission. Also when the driver tries to avoid re-emitting
state.
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/24536 >
2023-09-06 20:07:01 +00:00
Lionel Landwerlin
2c3a51573a
intel/anv: batch stats util
...
Reviewed-by: Tapani Pälli <tapani.palli@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24536 >
2023-09-06 20:07:01 +00:00
Lionel Landwerlin
1fdc089e9c
anv: change anv_batch_emit_merge to also do packing
...
Instead of having that function do only merging of 2 sets of dwords,
it can also do the packing of the new dynamic values. This saves us a
bunch of local structures to declare and calling the packing functions
ourselves.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24536 >
2023-09-06 20:07:01 +00:00
Lionel Landwerlin
5c287385c2
anv: remove ReorderMode from pipeline 3DSTATE_GS emission
...
This bit is set in the dynamic state emission. This is currently not
breaking anything because LEADING=0.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Fixes: 71ebd9b9d7 ("anv,hasvk: respect provoking vertex setting on geometry shaders")
Reviewed-by: Tapani Pälli <tapani.palli@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24536 >
2023-09-06 20:07:01 +00:00
Lionel Landwerlin
adfa4f0453
blorp: remove unused variable
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24719 >
2023-09-06 19:34:28 +00:00
Lionel Landwerlin
9231f24be1
hasvk: add state cache invalidation back before fast clears
...
Prior to 87149cc545 , blorp added a state cache invalidation prior to
fast clears. This got dropped on Hasvk.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Fixes: 87149cc545 ("blorp: update and move fast clear PIPE_CONTROLs to drivers")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24719 >
2023-09-06 19:34:28 +00:00
Lionel Landwerlin
c9739e8912
intel/fs: limit register flag interaction of FIND_*LIVE_CHANNEL
...
Those instructions do not access the flag registers on Gfx8+. Removing
the interaction enables CSE to remove more of those instructions.
Results are a bit mixed (DG2 vulkan fossils):
ACO:
Totals from 127 (5.97% of 2128) affected shaders:
Instrs: 139966 -> 138972 (-0.71%); split: -0.85%, +0.14%
Cycles: 1685747 -> 1667480 (-1.08%); split: -2.35%, +1.26%
Max live registers: 10582 -> 10544 (-0.36%)
Max dispatch width: 1048 -> 1040 (-0.76%)
Cyberpunk 2077:
Totals from 2879 (27.95% of 10301) affected shaders:
Instrs: 4264789 -> 4225666 (-0.92%); split: -1.01%, +0.09%
Cycles: 72380209 -> 71619521 (-1.05%); split: -1.63%, +0.58%
Subgroup size: 30624 -> 30632 (+0.03%)
Spill count: 98 -> 101 (+3.06%)
Fill count: 90 -> 93 (+3.33%)
Scratch Memory Size: 8192 -> 9216 (+12.50%)
Max live registers: 217807 -> 217098 (-0.33%); split: -0.59%, +0.26%
Max dispatch width: 23792 -> 24112 (+1.34%)
Gaining 40 SIMD16 shaders
Rise Of The Tomb Raider:
Totals from 622 (5.06% of 12289) affected shaders:
Instrs: 437380 -> 434760 (-0.60%); split: -0.72%, +0.12%
Cycles: 261843085 -> 261580703 (-0.10%); split: -0.73%, +0.63%
Max live registers: 27731 -> 27766 (+0.13%); split: -1.01%, +1.14%
Max dispatch width: 5832 -> 5432 (-6.86%); split: +0.27%, -7.13%
Loosing 26 SIMD32 shaders
Strange Brigade:
Totals from 1298 (31.48% of 4123) affected shaders:
Instrs: 1504408 -> 1487968 (-1.09%); split: -1.17%, +0.08%
Cycles: 20735976 -> 20443216 (-1.41%); split: -1.60%, +0.19%
Max live registers: 89911 -> 89957 (+0.05%)
DG2 shader-db run:
total instructions in shared programs: 23130895 -> 23130036 (<.01%)
instructions in affected programs: 260956 -> 260097 (-0.33%)
helped: 234
HURT: 101
helped stats (abs) min: 1 max: 54 x̄: 6.36 x̃: 4
helped stats (rel) min: 0.05% max: 8.16% x̄: 2.01% x̃: 1.90%
HURT stats (abs) min: 1 max: 37 x̄: 6.23 x̃: 3
HURT stats (rel) min: 0.02% max: 5.67% x̄: 0.89% x̃: 0.55%
95% mean confidence interval for instructions value: -3.62 -1.51
95% mean confidence interval for instructions %-change: -1.33% -0.94%
Instructions are helped.
total loops in shared programs: 6071 -> 6071 (0.00%)
loops in affected programs: 0 -> 0
helped: 0
HURT: 0
total cycles in shared programs: 898610645 -> 898557166 (<.01%)
cycles in affected programs: 18308201 -> 18254722 (-0.29%)
helped: 315
HURT: 48
helped stats (abs) min: 1 max: 19312 x̄: 404.23 x̃: 128
helped stats (rel) min: 0.02% max: 28.98% x̄: 3.92% x̃: 2.65%
HURT stats (abs) min: 2 max: 14478 x̄: 1538.60 x̃: 409
HURT stats (rel) min: <.01% max: 23.24% x̄: 3.34% x̃: 0.41%
95% mean confidence interval for cycles value: -333.68 39.03
95% mean confidence interval for cycles %-change: -3.51% -2.41%
Inconclusive result (value mean confidence interval includes 0).
total spills in shared programs: 5964 -> 5964 (0.00%)
spills in affected programs: 0 -> 0
helped: 0
HURT: 0
total fills in shared programs: 6909 -> 6909 (0.00%)
fills in affected programs: 0 -> 0
helped: 0
HURT: 0
total sends in shared programs: 1040266 -> 1040266 (0.00%)
sends in affected programs: 0 -> 0
helped: 0
HURT: 0
LOST: 3
GAINED: 1
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24553 >
2023-09-06 14:47:40 +00:00
Jordan Justen
8c8fca53fd
intel/genxml: Fix comparing xml when node counts differ
...
This fix is more relevant to MR !20593 . Normally when sorting the
number of nodes will be equivalent today, so this bug will not be
encountered. But in !20593 , we can shrink (--import) or grow the
number of elements (--flatten) when the genxml_import.py tool is used.
Fixes: e60a0b1616 ("intel/genxml: Move sorting & writing into GenXml class")
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24902 >
2023-09-06 07:18:47 +00:00
Jordan Justen
d8038c8d09
intel/genxml: Ignore tail leading/trailing whitespace in node_validator()
...
When importing or flattening genxml with the genxml_import.py script
in MR !20593 , it can lead to the tail portion of xml items differing
in whitespace.
If we strip the trailing and leading whitespace from the tail string,
and the strings are equivalent, then we can consider the xml items to
be equivalent.
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24903 >
2023-09-06 06:51:48 +00:00
Jordan Justen
5d37359f32
intel/dev/xe: Move placeholder subslice info into XEHP_FEATURES
...
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24418 >
2023-09-05 23:02:42 -07:00
Chris Spencer
c29e3d5205
anv/video: use correct enum value for max level IDC
...
Signed-off-by: Chris Spencer <spencercw@gmail.com >
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24649 >
2023-09-06 05:10:33 +00:00
Jordan Justen
2b128c570b
intel/clflush: Add support for clflushopt instruction
...
Rework:
* Split clflushopt into a separate file as recommended by Ken.
If we enable -mclflush on all driver source compilation, then
gcc may insert uses of it on processors that don't support it.
* Add uintptr_t casting to cpu_caps->cacheline usage
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22379 >
2023-09-06 01:39:53 +00:00
Jordan Justen
e111d3241a
anvil,hasvk: Use intel_flush_range_no_fence to flush command buffers
...
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22379 >
2023-09-06 01:39:53 +00:00
Jordan Justen
9f20be64e6
intel/common: Add intel_flush_range_no_fence
...
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22379 >
2023-09-06 01:39:53 +00:00
Jordan Justen
486e7bdbd8
anvil,hasvk: Replace intel_clflush_range with intel_flush_range
...
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22379 >
2023-09-06 01:39:53 +00:00
Jordan Justen
543a707b7b
intel/common: Move intel_clflush.h to intel_mem.h/intel_mem.c
...
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22379 >
2023-09-06 01:39:53 +00:00
Jordan Justen
735026e811
anvil,hasvk: Rename need_clflush to need_flush
...
$ git grep -l need_clflush | xargs sed -i 's/need_clflush/need_flush/g'
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22379 >
2023-09-06 01:39:53 +00:00
antonino
aa657247ce
vulkan/wsi: add vk_wsi_force_swapchain_to_current_extent driconf
...
Add a driconf to force the swapchain size to match
`VkSurfaceCapabilities2KHR::currentExtent` as a workaround for
misbehaved games
Fixes: 6139493ae3 ("vulkan/wsi: return VK_SUBOPTIMAL_KHR for sw/x11 on window resize")
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24818 >
2023-09-06 00:10:41 +00:00
Lionel Landwerlin
10e75aae1b
intel/nir: rerun lower_tex if it lowers something
...
nir_lower_tex can lower tg4 coords into tg4 offset which on DG2+ we
also need to lower into constant offsets.
Unfortunately the nir_lower_tex pass is not able to lower the
instructions it itself generates, so the easy fix for when
nir_lower_tex lowers tg4 coords into tg4 offsets is to rerun the pass.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/9735
Cc: mesa-stable
Reviewed-by: Tapani Pälli <tapani.palli@intel.com >
Tested-by: Yiwei Zhang <zzyiwei@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25015 >
2023-09-05 13:35:51 +00:00
Lionel Landwerlin
40d7cb4000
intel/measure: track batch buffer sizes
...
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/24628 >
2023-09-05 11:50:02 +00:00
Lionel Landwerlin
2108742257
anv: reuse cmd_buffer::total_batch_size
...
This was left unused after 624ac55721 ("anv: move total_batch_size to
anv_batch"). We're now going to use it to store the total amount of
commands written in a command buffer.
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/24628 >
2023-09-05 11:50:02 +00:00
Lionel Landwerlin
94e3e05b93
anv: rename total_batch_size
...
This name is confusing, the real thing it represents is the allocated
amount of batch space.
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/24628 >
2023-09-05 11:50:02 +00:00
Chris Spencer
b492f73f87
anv/android: Enable shared presentable image support
...
Signed-off-by: Chris Spencer <spencercw@gmail.com >
Reviewed-by: Roman Stratiienko <r.stratiienko@gmail.com >
Reviewed-by: Tapani Pälli <tapani.palli@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24941 >
2023-09-05 10:02:24 +00:00
Tapani Pälli
672155ee04
anv: implement Wa_14018912822
...
When MSAA is enabled, instead of using BLENDFACTOR_ZERO use CONST_COLOR,
CONST_ALPHA and supply zero by using blend constants.
Signed-off-by: Tapani Pälli <tapani.palli@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24714 >
2023-09-04 18:57:33 +00:00
Lionel Landwerlin
8a32614a18
isl/tilememcpy_test: add multiple tile testing
...
Also verify that there is no out-of-bounds accesses.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Aditya Swarup <aditya.swarup@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13391 >
2023-09-02 21:49:05 -07:00
Aditya Swarup
a6c8ddb596
intel/isl: Linear to Tile-4 conversion unittest
...
Add unittest to test conversion of data from linear to
Tile-4 format based on bit swizzling conversion info
mentioned in Bspec.
Signed-off-by: Aditya Swarup <aditya.swarup@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13391 >
2023-09-02 21:49:05 -07:00
Aditya Swarup
4f0d02902e
intel/isl: Convert Tile4 texture to linear format
...
Add memcpy function to convert Tile-4 4KB texture to linear
format.
Signed-off-by: Aditya Swarup <aditya.swarup@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13391 >
2023-09-02 21:49:05 -07:00
Aditya Swarup
a648ee7a70
intel/isl: Convert linear texture to Tile4 format
...
Add memcpy function to convert linear data to Tile 4 format.
Tile 4 format consists of 4KB block divided into chunks of 512B.
Each 512B chunk/block is comprised of 8 64B blocks arranged in
Y-tile format.
Signed-off-by: Aditya Swarup <aditya.swarup@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13391 >
2023-09-02 21:49:05 -07:00
Aditya Swarup
d16eac17d8
intel/isl: Unittest for linear to Ytile conversion
...
Add unittests for linear to tiled and tiled to linear texture
conversions for Ytile. The test prints the source/output buffer
in hex format with debug flags to verify the result.
Linear to tile conversion fills the linear buffer with values
based on the OWORD index number i.e., OWORD3 will contain
all values filled as 0x03 and
OWORD3 = 0x03030303030303030303030303030303.
The Y-tile to Linear tile conversion uses a similar logic to place
the tiled values in a manner that will result in a linear buffer with
OWORDs filled according to index number as mentioned above.
Signed-off-by: Aditya Swarup <aditya.swarup@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13391 >
2023-09-02 21:49:03 -07:00
Rohan Garg
ca7ae1a53f
blorp: drop undefined macro
...
Signed-off-by: Rohan Garg <rohan.garg@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Fixes: 97d6ceaf04 ("intel: Remove GEN_IS_HASWELL macro")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25011 >
2023-09-03 03:04:26 +00:00
Rohan Garg
86e8ba4d32
anv: use the lineage number for WA
...
Signed-off-by: Rohan Garg <rohan.garg@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Fixes: d0669f3ede ("intel/dev: switch defect identifiers to use lineage numbers")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25011 >
2023-09-03 03:04:26 +00:00
Rohan Garg
cbc4916661
anv: drop dead ifdef
...
The GFX_VERX10 macro doesn't exist and we no longer use
SCRATCH_SURFACE_STATE_POOL_SIZE.
Signed-off-by: Rohan Garg <rohan.garg@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Fixes: b3f6e5dc70 ('anv: remove incorrect ifdef')
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25011 >
2023-09-03 03:04:26 +00:00
Alyssa Rosenzweig
fd114ab706
ci: Disable WHL jobs
...
Timing out all day.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
2023-09-02 15:43:01 -04:00
Lionel Landwerlin
4066f05fe4
anv: enable standard Y tiles
...
We kept those tilings disabled up to know. Now that ISL has proper
support for them, remove this.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Nanley Chery <nanley.g.chery@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23620 >
2023-09-01 23:22:18 +00:00
Jason Ekstrand
db4488a2dc
anv: Align memory VA to support for Ys, Tile64 tiled images
...
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Nanley Chery <nanley.g.chery@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23620 >
2023-09-01 23:22:18 +00:00
Aditya Swarup
e03f3b646c
isl: enable Tile64 for 3D images
...
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Nanley Chery <nanley.g.chery@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23620 >
2023-09-01 23:22:18 +00:00