- 24 Sep, 2020 40 commits
-
-
Eric Anholt authored
We can pretty easily handle merging the driver's driconf with the common driverconf right there, rather than pushing that to each driver. Part-of: <!6751>
-
Eric Anholt authored
This cuts even more code duplication. Part-of: <!6751>
-
Eric Anholt authored
This gives me one place to document why it works this way. This does make the debug message a little less helpful ("etna" instead of "etnaviv" and "vmwgfx" instead of "svga", but you should only be able to reach this when doing something like trying the radeon/nouveau vdpau target on the wrong DRM device for example. Part-of: <!6751>
-
Eric Anholt authored
We can just reuse drm_helper.h, which has either the real code or the stub for all pipe_screens based on the GALLIUM_* driver defines, and the dynamic pipe loader's .c build will only define one GALLIUM_* driver define. The remaining stubs should get GCed by the linker. Part-of: <!6751>
-
Jason Ekstrand authored
In 283ad859, radeonsi started using nir_find_var_copies. However, it was also calling nir_lower_var_copies in the optimization loop and the two can end up fighting. The simple solution is to wait to lower copies until the end of the optimization loop. Fixes: 283ad859 Closes: #3550Reviewed-by:
Marek Olšák <marek.olsak@amd.com> Part-of: <!6841>
-
Mike Blumenkrantz authored
the previous version of this leaked a reference to the streamout buffer here thanks to deltragon on my blog for pointing this out! Fixes: 37778fcd ("zink: implement transform feedback support to finish off opengl 3.0") Reviewed-by:
Erik Faye-Lund <erik.faye-lund@collabora.com> Part-of: <!6457>
-
Mike Blumenkrantz authored
without VK_EXT_extended_dynamic_state, we need to pass this directly or else only the first viewport will work Reviewed-by:
Erik Faye-Lund <erik.faye-lund@collabora.com> Part-of: <!6349>
-
Mike Blumenkrantz authored
each viewport must have a corresponding scissor, so we need to generate an array of these to ensure our states match up Reviewed-by:
Erik Faye-Lund <erik.faye-lund@collabora.com> Part-of: <!6349>
-
Mike Blumenkrantz authored
this cap varies based on the shader stage, but it must be enabled any time this output is written Reviewed-by:
Erik Faye-Lund <erik.faye-lund@collabora.com> Part-of: <!6349>
-
Mike Blumenkrantz authored
this is part of the pipeline state (there's an extension for setting it dynamically but we don't supprot that atm Reviewed-by:
Erik Faye-Lund <erik.faye-lund@collabora.com> Part-of: <!6349>
-
Mike Blumenkrantz authored
this is just a simple case of connecting up the vertex state to the pipeline state Reviewed-by:
Erik Faye-Lund <erik.faye-lund@collabora.com> Part-of: <!6270>
-
Mike Blumenkrantz authored
this is required by spec Reviewed-by:
Erik Faye-Lund <erik.faye-lund@collabora.com> Part-of: <!6263>
-
Mike Blumenkrantz authored
this is required by spec Reviewed-by:
Erik Faye-Lund <erik.faye-lund@collabora.com> Part-of: <!6263>
-
Mike Blumenkrantz authored
pipe_framebuffer_state::layers doesn't necessarily reflect the value we need to use here, so we can use the util function to verify Reviewed-by:
Erik Faye-Lund <erik.faye-lund@collabora.com> Part-of: <!6263>
-
Mike Blumenkrantz authored
state->samples doesn't necessarily reflect the correct value here, so we need to use the util function Reviewed-by:
Erik Faye-Lund <erik.faye-lund@collabora.com> Part-of: <!6263>
-
Mike Blumenkrantz authored
nr_samples is valid on the texture pipe_resource, not the surface Reviewed-by:
Erik Faye-Lund <erik.faye-lund@collabora.com> Part-of: <!6263>
-
Kenneth Graunke authored
This reverts commit 939ddf3f. Intel has a separate pass for fusing FFMAs selectively. We split these flags in commit 1b72c31e and the reasoning still stands. The patch being reverted was just a cleanup, so there should be no issue with reverting it. Acked-by:
Matt Turner <mattst88@gmail.com> Reviewed-by:
Marek Olšák <marek.olsak@amd.com> Part-of: <!6849>
-
Jonathan Marek authored
Note: this also fixes vk_object_base_init() not being called for the wsi fences, now that it goes through radv_CreateFence(). Signed-off-by:
Jonathan Marek <jonathan@marek.ca> Reviewed-by:
Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Part-of: <!6846>
-
Jonathan Marek authored
Looks like this path is meant for RADV_FENCE_WINSYS type fences. Signed-off-by:
Jonathan Marek <jonathan@marek.ca> Reviewed-by:
Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Part-of: <!6846>
-
Pierre-Eric Pelloux-Prayer authored
This allows to inline radeon_uses_secure_bos calls and reduce CPU overhead. Reviewed-by:
Marek Olšák <marek.olsak@amd.com> Part-of: <!6049>
-
Pierre-Eric Pelloux-Prayer authored
Subtitles are rendering with an upload through a staging texture. So the sequence is: 1. draw video (with a secure cs) 2. copy staging texture to the real texture (via si_resource_copy_region) in a non-secure cs. 3. draw video (with a secure cs) Step 2 and 3 both generates a flush with RADEON_FLUSH_TOGGLE_SECURE_SUBMISSION. These flushes are executed quite late: right before doing the draw/dispatch, so maybe the issue here is the handling of dependencies. Reviewed-by:
Marek Olšák <marek.olsak@amd.com> Part-of: <!6049>
-
Pierre-Eric Pelloux-Prayer authored
Reviewed-by:
Marek Olšák <marek.olsak@amd.com> Part-of: <!6049>
-
Pierre-Eric Pelloux-Prayer authored
Reviewed-by:
Marek Olšák <marek.olsak@amd.com> Part-of: <!6049>
-
Pierre-Eric Pelloux-Prayer authored
tess_rings must be encrypted when used in a secure job so this commit introduces a tess_rings_tmz resource. The cs_preamble_state doesn't contain the tess_rings address anymore since it can change. The tess_rings related registers go in a separate preamble. Reviewed-by:
Marek Olšák <marek.olsak@amd.com> Part-of: <!6049>
-
Pierre-Eric Pelloux-Prayer authored
Reviewed-by:
Marek Olšák <marek.olsak@amd.com> Part-of: <!6049>
-
Pierre-Eric Pelloux-Prayer authored
Reviewed-by:
Marek Olšák <marek.olsak@amd.com> Part-of: <!6049>
-
Pierre-Eric Pelloux-Prayer authored
Instead of exposing a cs_set_secure() callback that always needs a call to si_flush_gfx_cs before a switch, this commit introduces a new flag to switch between secure and non-secure on submissions. Reviewed-by:
Marek Olšák <marek.olsak@amd.com> Part-of: <!6049>
-
Pierre-Eric Pelloux-Prayer authored
This commit makes TMZ always allowed instead of being either off or forced-on with AMD_DEBUG=tmz. With this change: - secure job can be used as soon as the application made a tmz allocation. Driver internal allocations are not enough to enable secure jobs (if tmz is supported and enabled by the kernel) - AMD_DEBUG=tmz forces all scanout/depth/stencil buffers to be allocated as TMZ. This is useful to test app thats don't explicitely support protected content. Reviewed-by:
Marek Olšák <marek.olsak@amd.com> Part-of: <!6049>
-
Pierre-Eric Pelloux-Prayer authored
Reviewed-by:
Marek Olšák <marek.olsak@amd.com> Part-of: <!6049>
-
Pierre-Eric Pelloux-Prayer authored
Reviewed-by:
Marek Olšák <marek.olsak@amd.com> Part-of: <!6049>
-
Pierre-Eric Pelloux-Prayer authored
Tag allocations as driver internal. Some of these allocations will need to be doubled to handle TMZ (one secure bo, one normal bo) but these allocations shouldn't switch the winsys in "the app is using TMZ". Reviewed-by:
Marek Olšák <marek.olsak@amd.com> Part-of: <!6049>
-
Pierre-Eric Pelloux-Prayer authored
Reviewed-by:
Marek Olšák <marek.olsak@amd.com> Part-of: <!6049>
-
Pierre-Eric Pelloux-Prayer authored
This commit adds asserts verifying the following conditions when using a secure job: - fb textures are encrypted (both colors and depth/stencil buffers) - all writeable bo are encrypted Reviewed-by:
Marek Olšák <marek.olsak@amd.com> Part-of: <!6049>
-
Pierre-Eric Pelloux-Prayer authored
Reviewed-by:
Marek Olšák <marek.olsak@amd.com> Part-of: <!6049>
-
Pierre-Eric Pelloux-Prayer authored
Fixes a hang with DCC. Reviewed-by:
Marek Olšák <marek.olsak@amd.com> Part-of: <!6049>
-
Jonathan Marek authored
Fences are now just a syncobj, which makes our life easier. The next step will be to fill out ImportFenceFdKHR()/GetFenceFdKHR(). Signed-off-by:
Jonathan Marek <jonathan@marek.ca> Part-of: <!6683>
-
Jonathan Marek authored
Note: this means turnip requires kernel 5.8 (or older with syncobj patch). Signed-off-by:
Jonathan Marek <jonathan@marek.ca> Part-of: <!6683>
-
Jonathan Marek authored
Avoid the extra indirect for this commonly used field. Signed-off-by:
Jonathan Marek <jonathan@marek.ca> Part-of: <!6683>
-
Jonathan Marek authored
Signed-off-by:
Jonathan Marek <jonathan@marek.ca> Part-of: <!6683>
-
Erik Faye-Lund authored
Without this, we end up throwing errors on code along these lines when rendering using single-buffering: GLint att; glGetIntegerv(GL_READ_BUFFER, &att); glGetFramebufferAttachmentParameteriv(GL_READ_FRAMEBUFFER, att, ...); This is because we internally translate GL_BACK (which is what glGetIntegerv returned) to GL_FRONT, which we don't handle in the Desktop GL case. So let's start handling it. This fixes the GLTF-GL33.gtf21.GL2FixedTests.buffer_color.blend_color test for me. Fixes: e6ca6e58 ("mesa: Handle pbuffers in desktop GL framebuffer attachment queries") Reviewed-by:
Marek Olšák <marek.olsak@amd.com> Part-of: <!6815>
-