- 28 Sep, 2018 5 commits
-
-
chadversary authored
By itself, this extension does nothing. It's only useful in its interaction with other external memory extensions. In the short term, at least, anvil will do nothing on transitions to/from the foreign queue. There does exist, though, some possibility to eventually distinguish between transitions on VK_QUEUE_FAMILY_EXTERNAL_KHR and VK_QUEUE_FAMILY_FOREIGN_EXT for ccs_e images.
-
chadversary authored
-
Samuel Pitoiset authored
We already track if the DMA engine is busy/idle with a flag, and we emit a packet that waits for all CP DMA operations to be complete. This is done at end of command buffer because the kernel doesn't wait for them, and also when emitting barriers, so it should be safe. This improves small copies for both aligned and unaligned sizes. Aligned sizes: BEFORE: 1 KB: 59.840000 ms 2 KB: 71.200000 ms AFTER: 1 KB: 31.200000 ms 2 KB: 31.040000 ms Unaligned sizes: BEFORE: 2 KB: 68.3200 ms 3 KB: 79.3600 ms 5 KB: 76.6400 ms 9 KB: 90.8800 ms 17 KB: 116.0000 ms AFTER: 2 KB: 31.0400 ms 3 KB: 32.0000 ms 5 KB: 30.8800 ms 9 KB: 30.5600 ms 17 KB: 29.6000 ms Signed-off-by:
Samuel Pitoiset <samuel.pitoiset@gmail.com> Reviewed-by:
Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
-
Samuel Pitoiset authored
According to my benchmark results, it appears that we should reduce the threshold to 1024. BEFORE: 1 KB: 68.656000 ms 2 KB: 118.368000 ms AFTER: 1 KB: 31.760000 ms 2 KB: 29.840000 ms Signed-off-by:
Samuel Pitoiset <samuel.pitoiset@gmail.com> Reviewed-by:
Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
-
Samuel Pitoiset authored
It's unnecessary because we can just check if the timestamp is to different to the default value when a pool is created or resetted. Instead of waiting for the availability bit to be 1, we have to emit a not equal WAIT_REG_MEM for checking if the timestamp is ready. Signed-off-by:
Samuel Pitoiset <samuel.pitoiset@gmail.com> Reviewed-by:
Dave Airlie <airlied@redhat.com>
-
- 27 Sep, 2018 27 commits
-
-
Kristian H. Kristensen authored
Pulling this logic out means we can share the logic and avoid a couple of temporary variables that helped make things clearer before. Note that in either vismode case, we always program vismode 0. Signed-off-by:
Kristian H. Kristensen <hoegsberg@chromium.org>
-
Kristian H. Kristensen authored
Now that we've copied the emit logic into each branch of the if (info->index_size) statement, we can simplify the logic a bit according to which case we're in. Signed-off-by:
Kristian H. Kristensen <hoegsberg@chromium.org>
-
Kristian H. Kristensen authored
Signed-off-by:
Kristian H. Kristensen <hoegsberg@chromium.org>
-
Kristian H. Kristensen authored
This splits the two code paths into separate functions and moves the "if (info->indirect)" test into draw_impl(). Signed-off-by:
Kristian H. Kristensen <hoegsberg@chromium.org>
-
Kristian H. Kristensen authored
Simplify the code a bit by inlining this helper. Signed-off-by:
Kristian H. Kristensen <hoegsberg@chromium.org>
-
Kristian H. Kristensen authored
This way the markers clearly bracket the draw call and isn't duplicated for both direct and indirect draw code. Signed-off-by:
Kristian H. Kristensen <hoegsberg@chromium.org>
-
Kristian H. Kristensen authored
Only used in fd6_draw.c so put them there. Signed-off-by:
Kristian H. Kristensen <hoegsberg@chromium.org>
-
Hyunjun Ko authored
-
Hyunjun Ko authored
According to the following definition, int AtomicCompSwap(inout int mem, uint compare, uint data); the preceding one in atomic_comp_swap of NIR is compare and data is followed, while src0 for cmpxchg needs vec2(data, compare) So for ssbo/image deref comp_swap, that should be reversed. Fixes: dEQP-GLES31.functional.image_load_store.*.atomic.comp_swap*
-
Rob Clark authored
Possibly these bits mean something else now. Blob always seems to use FOUR_QUADS, and changing to TWO_QUADS seems to cause different threads to overlap registers. Signed-off-by:
Rob Clark <robdclark@gmail.com>
-
Rob Clark authored
Signed-off-by:
Rob Clark <robdclark@gmail.com>
-
Rob Clark authored
Do a better job of skipping mem2gmem/gmem2mem.. Signed-off-by:
Rob Clark <robdclark@gmail.com>
-
Rob Clark authored
Fix a few bits of confusion, as with previous gen's constlen is aligned to 4, and value in bitfield is left-shifted by 2 (ie. divided by 4). But this is done by the CONSTLEN() accessor/builder fxn, so don't do it twice. Also HLSQ_FS_CNTL.CONSTLEN is not special. Signed-off-by:
Rob Clark <robdclark@gmail.com>
-
Rob Clark authored
Signed-off-by:
Rob Clark <robdclark@gmail.com>
-
Rob Clark authored
Signed-off-by:
Rob Clark <robdclark@gmail.com>
-
Rob Clark authored
Fixes a crash in (of all things) dEQP-GLES2.info.vendor with --deqp-surface-type=fbo.. Signed-off-by:
Rob Clark <robdclark@gmail.com>
-
Rob Clark authored
Signed-off-by:
Rob Clark <robdclark@gmail.com>
-
Rob Clark authored
batch_flush_reset_dependencies() expects to be called unlocked, and can call fd_batch_reference() which can try to aquire the screen lock again. Signed-off-by:
Rob Clark <robdclark@gmail.com>
-
Rob Clark authored
In c3d9f29b we allowed ctx->batch to be null, and started tracking the current framebuffer state in fd_context. But the existing logic in fd_blitter_pipe_begin() would, if !ctx->batch, set null fb state to be restored after blit. Which broke the world of deqp (and probably other things) Fixes: c3d9f29b freedreno: allocate ctx's batch on demand Signed-off-by:
Rob Clark <robdclark@gmail.com>
-
Rob Clark authored
This is defined to always clear the entire surface(s) specified, regardless of scissor state.. mesa/st will turn scissored clears into a draw. So rip about a bunch of unnecessary machinery. Also remove a comment that was obsolete since using u_blitter to turn clear into draw (for the cases where there isn't a hw blitter fast-path). Signed-off-by:
Rob Clark <robdclark@gmail.com>
-
Rob Clark authored
The logic to force a flush every draw was short-circuited with newer kernels. Also it should apply to clears as well. Signed-off-by:
Rob Clark <robdclark@gmail.com>
-
Rob Clark authored
The effective scissor changes based on rasterizer->scissor flag, so we need to re-emit scissor state when rasterizer state changes. Signed-off-by:
Rob Clark <robdclark@gmail.com>
-
Rob Clark authored
Signed-off-by:
Rob Clark <robdclark@gmail.com>
-
Erik Faye-Lund authored
In st_renderbuffer_alloc_storage, we avoid allocating storage for zero-sized buffers, leading to this pointer being NULL. We already take care to avoid dereferencing these pointers for color-buffers, but not for depth/stencil-buffers. So let's thread a bit more carefully here. This avoids a crash while running Piglit's glx/glx-visuals-stencil test, both on virgl and r600g. Signed-off-by:
Erik Faye-Lund <erik.faye-lund@collabora.com> Reviewed-by:
Guillaume Charifi <guillaume.charifi@sfr.fr> Reviewed-by:
Marek Olšák <marek.olsak@amd.com>
-
Maxime Lombard authored
Since the Randr lease code was added, compiling against libxcb 1.12 no longer works. CC: mesa-stable@lists.freedesktop.org Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=108024 Fixes: 7ab1fffcTested-By:
Maxime <berillions@gmail.com> Fixes: 7ab1fffc "vulkan: Add EXT_acquire_xlib_display [v5]"
-
Bas Nieuwenhuizen authored
Trivial.
-
Bas Nieuwenhuizen authored
Use sample rate shading instead, should give better locality. Makes Nier with 8x msaa on a Raven go 5 fps -> 7 fps in the menu. Reviewed-by:
Samuel Pitoiset <samuel.pitoiset@gmail.com>
-
- 26 Sep, 2018 6 commits
-
-
Jordan Justen authored
Signed-off-by:
Jordan Justen <jordan.l.justen@intel.com> Reviewed-by:
Jason Ekstrand <jason@jlekstrand.net> Reviewed-by:
Nanley Chery <nanley.g.chery@intel.com>
-
Jordan Justen authored
Signed-off-by:
Jordan Justen <jordan.l.justen@intel.com> Reviewed-by:
Jason Ekstrand <jason@jlekstrand.net> Reviewed-by:
Nanley Chery <nanley.g.chery@intel.com>
-
Dylan Baker authored
-
Dylan Baker authored
-
Dylan Baker authored
-
Jason Ekstrand authored
I was about to make the claim to someone that every field in isl_surf is either an enum or has explicit units. Then I looked at isl_surf and discovered this claim was wrong. We should fix that. This commit does a few refactors: * Add _B suffixes to some struct fields * Add _B to some variables and parameters * Rename row_pitch_tiles -> row_pitch_tl Reviewed-by:
Nanley Chery <nanley.g.chery@intel.com>
-
- 25 Sep, 2018 2 commits
-
-
Axel Davy authored
Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=105333 Fixes: https://github.com/iXit/Mesa-3D/issues/314 For this application, NaN is passed to KILL_IF and is expected to pass. v2: Explain in the code why UGE is used. Signed-off-by:
Axel Davy <davyaxel0@gmail.com> Reviewed-by:
Marek Olšák <marek.olsak@amd.com> CC: <mesa-stable@lists.freedesktop.org>
-
Axel Davy authored
Previously if only ff vs or only ff ps was used, the constants for both were marked as updated, while only the constants of the used ff shader were updated. Now that NINE_STATE_FF_VS and NINE_STATE_FF_PS do not intersect anymore, we can correctly mark the correct set of constant as updated. Fixes: https://github.com/iXit/Mesa-3D/issues/319Signed-off-by:
Axel Davy <davyaxel0@gmail.com>
-