Arvind Yadav
1fbc7337a1
radeonsi: Enable nir_lower_point_smooth lowering pass for point smoothing
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15117 >
2022-07-16 07:08:33 -04:00
Yogesh Mohan Marimuthu
2330c71751
radeonsi: remove tabs from code
...
v2: fix indentation after if (Marek Olšák)
Signed-off-by: Yogesh Mohan Marimuthu <yogesh.mohanmarimuthu@amd.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17504 >
2022-07-14 10:30:09 +00:00
Qiang Yu
05b829cd0c
radeonsi: deserialize nir binary in si_check_blend_dst_sampler_noop
...
We can do this parse with original nir instead of shader key pass
applied nir in si_get_nir_shader.
This can free si_get_nir_shader to just use si_shader as parameter.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16705 >
2022-06-27 02:38:21 +00:00
Marek Olšák
56d4e0be86
radeonsi/gfx11: synchronize correctly before setting SPI_ATTRIBUTE_RING_*
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16990 >
2022-06-15 20:52:42 +00:00
Marek Olšák
a9f7744cfe
radeonsi: rework how vs_state_bits is set and unpacked
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16885 >
2022-06-11 11:14:16 +00:00
Marek Olšák
57b7dcd9db
radeonsi: add BREAK_BATCH at the beginning of IBs
...
to fix possible issues if the previous IB comes from a different app
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16885 >
2022-06-11 11:14:16 +00:00
Marek Olšák
eea46094ff
radeonsi: set INTERPOLATE_COMP_Z to 0 to work around an EQAA bug
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16885 >
2022-06-11 11:14:16 +00:00
Marek Olšák
4f3c74ddfb
radeonsi: determine DB_SHADER_CONTROL in si_shader_ps
...
This is cleaner and more flexible.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16885 >
2022-06-11 11:14:16 +00:00
Marek Olšák
7cbea71aab
radeonsi: fix polygon stippling without color and Z outputs (v2)
...
We need to handle the fact that it kills pixels.
v2: also update si_update_ps_inputs_read_or_disabled
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16885 >
2022-06-11 11:14:16 +00:00
Marek Olšák
c1adb33a93
radeonsi: clamp against MAX_TEXEL_BUFFER_ELEMENTS correctly
...
Reviewed-by: Mihai Preda <mhpreda@gmail.com>
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16901 >
2022-06-08 10:23:20 +00:00
Qiang Yu
87dfff3e6b
radeonsi: add tcs_vgpr_only_inputs parameter to si_get_nir_shader
...
Will be used later.
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16418 >
2022-06-07 01:40:14 +00:00
Pierre-Eric Pelloux-Prayer
ef950d370a
radeonsi: don't use sel->nir in si_check_blend_dst_sampler_noop
...
We don't want to modify sel->nir so force the use of the serialized
version of the shader.
Waiting on sel->ready guarantees that sel->nir will be NULL and that
si_get_nir_shader will use sel->nir_binary.
Fixes: b78a38bd02
("radeonsi: use si_nir_is_output_const_if_tex_is_const")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6415
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16587 >
2022-05-25 12:03:34 +00:00
Pierre-Eric Pelloux-Prayer
cf9ee6d432
radeonsi: wait for PS idle in si_set_framebuffer_state
...
This is needed to avoid write-after-read hazards in
texture -> render transitions.
This fixes fbo-depth tests that were flaky on GPUs (at
least sienna_cichlid and vega20).
Reviewed-by: Mihai Preda <mhpreda@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16561 >
2022-05-19 12:22:11 +00:00
Pierre-Eric Pelloux-Prayer
74a172a448
radeonsi: fix glTexBuffer max size handling
...
The spec says the number of texels must be clamped to the value of
GL_MAX_TEXTURE_BUFFER_SIZE.
Reviewed-by: Qiang Yu <yuq825@gmail.com>
Reviewed-by: Mihai Preda <mhpreda@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16480 >
2022-05-18 10:36:01 +02:00
Marek Olšák
32c7805ccc
radeonsi: merge all preamble states into one
...
Tess registers are appended. GS registers are appended or overwritten
if they are already set. There are separate TMZ and non-TMZ preambles.
The preamble will be passed to the kernel as an IB to execute on a context
switch only.
Reviewed-by: Mihai Preda <mhpreda@gmail.com>
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16509 >
2022-05-17 10:27:04 +00:00
Marek Olšák
9b20120d57
radeonsi/gfx11: fix VM faults due to the attribute ring
...
Reviewed-by: Mihai Preda <mhpreda@gmail.com>
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16509 >
2022-05-17 10:27:04 +00:00
Marek Olšák
c74d854348
Revert "radeonsi/gfx11: limit MSAA color buffers to the RGBA channel order"
...
This reverts commit 54d85700a1
.
It's an LLVM bug. If you disable AMDGPUImageIntrinsicOptimizer in LLVM,
MSAA is fixed. There is no LLVM command line option to disable it from Mesa.
Reviewed-by: Mihai Preda <mhpreda@gmail.com>
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16509 >
2022-05-17 10:27:04 +00:00
Marek Olšák
3382af7f6a
radeonsi/gfx11: set BIG_PAGE for the attribute ring
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16466 >
2022-05-16 07:03:41 -04:00
Marek Olšák
39800f0fa3
amd: change chip_class naming to "enum amd_gfx_level gfx_level"
...
This aligns the naming with PAL.
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Acked-by: Pierre-Eric Pellou-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16469 >
2022-05-13 14:56:22 -04:00
Marek Olšák
98ea2347a0
radeonsi: report more missing/broken texture formats as unsupported on gfx6-9
...
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16386 >
2022-05-11 06:21:11 +00:00
Marek Olšák
e4283708f0
radeonsi: report 10_10_10_2 scaled formats as unsupported on gfx6-9 as well
...
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16386 >
2022-05-11 06:21:11 +00:00
Vinson Lee
997dc0a5e8
radeonsi: Move NULL check before dereference.
...
Fix defect reported by Coverity Scan.
Dereference before null check (REVERSE_INULL)
check_after_deref: Null-checking desc suggests that it may be
null, but it has already been dereferenced on all paths leading to
the check.
Fixes: 2f83dce059 ("radeonsi: don't report R64_*INT as a sampler format because it doesn't work")
Signed-off-by: Vinson Lee <vlee@freedesktop.org>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16380 >
2022-05-11 04:55:35 +00:00
Marek Olšák
d100c07c48
radeonsi: remove tautologies when setting CU_EN
...
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16328 >
2022-05-10 04:29:55 +00:00
Marek Olšák
54d85700a1
radeonsi/gfx11: limit MSAA color buffers to the RGBA channel order
...
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16328 >
2022-05-10 04:29:55 +00:00
Indrajit Kumar Das
167b378377
radeonsi/gfx11: VRS changes
...
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16328 >
2022-05-10 04:29:55 +00:00
Marek Olšák
b27b9b0c31
radeonsi/gfx11: don't set non-existent CP_COHER_START_DELAY
...
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16328 >
2022-05-10 04:29:55 +00:00
Yogesh mohan marimuthu
19a59f05a4
radeonsi/gfx11: program db render control register
...
Signed-off-by: Yogesh mohan marimuthu <yogesh.mohanmarimuthu@amd.com>
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16328 >
2022-05-10 04:29:55 +00:00
Marek Olšák
9fecac091f
radeonsi/gfx11: scattered register deltas
...
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16328 >
2022-05-10 04:29:55 +00:00
Marek Olšák
afc110a1f6
radeonsi/gfx11: implement attributes through memory
...
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16328 >
2022-05-10 04:29:55 +00:00
Marek Olšák
529eb739fc
radeonsi/gfx11: add CB deltas
...
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16328 >
2022-05-10 04:29:54 +00:00
Marek Olšák
c99b71039a
radeonsi/gfx11: buffer descriptor changes
...
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16328 >
2022-05-10 04:29:54 +00:00
Pierre-Eric Pelloux-Prayer
c87da5c80d
radeonsi/gfx11: image descriptor changes
...
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16328 >
2022-05-10 04:29:54 +00:00
Pierre-Eric Pelloux-Prayer
25a66477d0
radeonsi/gfx11: register changes
...
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16328 >
2022-05-10 04:29:54 +00:00
Marek Olšák
980620ae07
radeonsi/gfx11: program inst_pref_size for graphics
...
For gfx11, program INST_PREF_SIZE value in SPI registers.
v4: fix mask value, code indendation (Marek Olšák)
v3: improve code for readability (Indrajit Das, Marek Olšák)
v2: ngg is always enabled in gfx11 (Marek Olšák)
Signed-off-by: Yogesh mohan marimuthu <yogesh.mohanmarimuthu@amd.com>
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16328 >
2022-05-10 04:29:54 +00:00
Pierre-Eric Pelloux-Prayer
9480ad2b1c
amd: update gfx10_format_table.py for gfx11
...
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16328 >
2022-05-10 04:29:54 +00:00
Marek Olšák
980b7f75e8
amd: enable gfx11 in header generator, fix drivers with renamed gfx6-10 defs
...
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16328 >
2022-05-10 04:29:54 +00:00
Marek Olšák
584e996ddd
radeonsi: remove si_create_sampler_view_custom and related code
...
This was used for compressed and subsampled gfx copies.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16215 >
2022-05-03 11:11:08 -04:00
Marek Olšák
e0adb5be4d
radeonsi: don't expose formats that CB supports, but not shaders
...
e.g. R4G4B4A4_UINT
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16215 >
2022-05-03 11:11:08 -04:00
Marek Olšák
01d994f5e6
radeonsi: add color buffer support for R9G9B9E5_FLOAT on gfx10.3
...
This was missed when we added gfx10.3.
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16215 >
2022-05-03 11:11:08 -04:00
Marek Olšák
fd5e661954
radeonsi: add color buffer support for 2_10_10_10 pipe formats
...
The hw enum is reversed.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16215 >
2022-05-03 11:11:08 -04:00
Marek Olšák
52f83dce05
radeonsi: don't report R64_*INT as a sampler format because it doesn't work
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16215 >
2022-05-03 11:11:08 -04:00
Marek Olšák
88f22f188e
ac,radeonsi: report SCALED formats as unsupported by samplers and color buffers
...
This was never exercised and it doesn't work.
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16215 >
2022-05-03 11:11:08 -04:00
Pierre-Eric Pelloux-Prayer
f59c8c6e1c
radeonsi: drop assume_no_z_fights option
...
And garbage collect the code that was only used by this option.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16139 >
2022-04-29 07:52:59 +00:00
Pierre-Eric Pelloux-Prayer
c9a73f53e8
radeonsi: remove commutative_blend_add option
...
This is unused.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16139 >
2022-04-29 07:52:59 +00:00
Marek Olšák
4e8b8555c6
radeonsi: move si_shader_info::stage into si_shader_selector
...
This will help me see all places where we use "info", which will
be moved from si_shader_selector to shader variants.
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14414 >
2022-04-22 22:21:11 +00:00
Marek Olšák
8de5b11b29
radeonsi: move most "info" fields from si_shader_selector into si_shader_info
...
It's where they should be, and future commits might require this.
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14414 >
2022-04-22 22:21:11 +00:00
Marek Olšák
981bd8cbe2
radeonsi: apply key.ge.opt.kill_{outputs,pointsize,clipdistance} in NIR
...
This may be needed by ACO, but it doesn't do anything for LLVM yet other
than making the initial LLVM IR smaller.
It will be needed by a future commit, which rewrites ac_optimize_vs_outputs
in NIR, which relies on NIR matching the shader key.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14414 >
2022-04-22 22:21:11 +00:00
Marek Olšák
ad4b575a8c
radeonsi: initialize line stipple config registers
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15965 >
2022-04-22 20:52:26 +00:00
Marek Olšák
d54236ec41
radeonsi: set PA_SC_EDGERULE according to bottom_edge_rule state
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15965 >
2022-04-22 20:52:26 +00:00
Pierre-Eric Pelloux-Prayer
968d68125c
radeonsi: don't clear framebuffer.state before dcc decomp
...
This causes inconsistencies between sctx->framebuffer.state and other
sctx->framebuffer properties (like compressed_cb_mask).
The point of this code was to fix an issue with vi_separate_dcc_stop_query,
which was removed by 804e292440
we can safely drop it.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6099
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15261 >
2022-03-11 08:31:36 +00:00