mesa.git
7 years agoradv: use defines for ring descriptor offsets.
Dave Airlie [Thu, 30 Mar 2017 06:49:59 +0000 (07:49 +0100)]
radv: use defines for ring descriptor offsets.

Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Signed-off-by: Dave Airlie <airlied@redhat.com>
7 years agoradv: add helper function to denote if tess is enabled on a pipeline.
Dave Airlie [Thu, 30 Mar 2017 06:44:20 +0000 (07:44 +0100)]
radv: add helper function to denote if tess is enabled on a pipeline.

Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Signed-off-by: Dave Airlie <airlied@redhat.com>
7 years agoradv: handle clip dist in es outputs.
Dave Airlie [Thu, 30 Mar 2017 07:51:42 +0000 (08:51 +0100)]
radv: handle clip dist in es outputs.

Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Signed-off-by: Dave Airlie <airlied@redhat.com>
7 years agoradv: drop unneeded start
Dave Airlie [Thu, 30 Mar 2017 07:51:31 +0000 (08:51 +0100)]
radv: drop unneeded start

Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Signed-off-by: Dave Airlie <airlied@redhat.com>
7 years agoradv: fixup geometry clip emission since using the geom pass
Dave Airlie [Fri, 31 Mar 2017 20:56:46 +0000 (06:56 +1000)]
radv: fixup geometry clip emission since using the geom pass

Fixes: 2b35b60d: radv: move to using nir clip/cull merge pass.
Signed-off-by: Dave Airlie <airlied@redhat.com>
7 years agoradeonsi/gfx9: allow CMASK fast clear with RB+
Marek Olšák [Tue, 28 Mar 2017 01:38:47 +0000 (03:38 +0200)]
radeonsi/gfx9: allow CMASK fast clear with RB+

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
7 years agoradeonsi/gfx9: don't compare src_va w/ dst_va for CP_DMA_CLEAR
Marek Olšák [Tue, 28 Mar 2017 17:06:31 +0000 (19:06 +0200)]
radeonsi/gfx9: don't compare src_va w/ dst_va for CP_DMA_CLEAR

src_va contains the clear value in this case.

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
7 years agoradeonsi/gfx9: fix 1D array fetches with derivs, bias, or Z compare value
Marek Olšák [Tue, 28 Mar 2017 14:18:45 +0000 (16:18 +0200)]
radeonsi/gfx9: fix 1D array fetches with derivs, bias, or Z compare value

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
7 years agoradeonsi/gfx9: fix and enable single-sample CMASK fast clear
Marek Olšák [Tue, 28 Mar 2017 01:34:06 +0000 (03:34 +0200)]
radeonsi/gfx9: fix and enable single-sample CMASK fast clear

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
7 years agoradeonsi/gfx9: fix and enable MSAA compression
Marek Olšák [Tue, 28 Mar 2017 08:58:02 +0000 (10:58 +0200)]
radeonsi/gfx9: fix and enable MSAA compression

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
7 years agoradeonsi/gfx9: disable CE
Marek Olšák [Mon, 20 Mar 2017 15:22:16 +0000 (16:22 +0100)]
radeonsi/gfx9: disable CE

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
7 years agoradeonsi/gfx9: fix linear mipmap CPU access
Marek Olšák [Mon, 27 Feb 2017 21:25:43 +0000 (22:25 +0100)]
radeonsi/gfx9: fix linear mipmap CPU access

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
7 years agoradeonsi: add tests verifying that VM faults don't hang
Marek Olšák [Mon, 27 Mar 2017 14:53:19 +0000 (16:53 +0200)]
radeonsi: add tests verifying that VM faults don't hang

GFX9 hangs instead of writing VM faults to dmesg.

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
7 years agoradeonsi: unify HS max_offchip_buffers workarounds
Marek Olšák [Mon, 27 Feb 2017 22:49:19 +0000 (23:49 +0100)]
radeonsi: unify HS max_offchip_buffers workarounds

Vulkan doesn't set more than 508.

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
7 years agoradeonsi: adjust checking for SC bug workarounds
Marek Olšák [Mon, 27 Feb 2017 22:17:07 +0000 (23:17 +0100)]
radeonsi: adjust checking for SC bug workarounds

no change in behavior, just making sure that no later chips will use
the workarounds

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
7 years agoglsl: use -O1 optimization for builtin_functions.cpp with MinGW
Brian Paul [Fri, 31 Mar 2017 03:14:08 +0000 (21:14 -0600)]
glsl: use -O1 optimization for builtin_functions.cpp with MinGW

Some versions of MinGW-w64 such as 5.3.1 and 6.2.0 produce bad code
with -O2 or -O3 causing a random driver crash when running programs
that use GLSL.  Most Mesa demos in the glsl/ directory trigger the
bug, but not the fragcoord.c test.

Use a #pragma to force -O1 for this file for later MinGW versions.
Luckily, this is basically one-time setup code.  I suspect the bug
is related to the sheer size of this file.

This should let us move to newer versions of MinGW-w64 for Mesa.

Reviewed-by: Jose Fonseca <jfonseca@vmware.com>
Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
7 years agotnl: remove unused var to silence warning
Brian Paul [Wed, 29 Mar 2017 16:50:00 +0000 (10:50 -0600)]
tnl: remove unused var to silence warning

Trivial.

7 years agost/wgl: Replace variable name hdc with hDrawDC
Neha Bhende [Fri, 24 Mar 2017 20:53:00 +0000 (14:53 -0600)]
st/wgl: Replace variable name hdc with hDrawDC

Reviewed-by: Brian Paul <brianp@vmware.com>
7 years agost/wgl: add support for WGL_ARB_make_current_read
Brian Paul [Thu, 16 Mar 2017 17:40:02 +0000 (11:40 -0600)]
st/wgl: add support for WGL_ARB_make_current_read

This adds the wglMakeContextCurrentARB() and wglGetCurrentReadDCARB()
functions.

Signed-off-by: Brian Paul <brianp@vmware.com>
7 years agostw/wgl: add null context check in wglBindTexImageARB()
Brian Paul [Mon, 10 Oct 2016 21:54:09 +0000 (15:54 -0600)]
stw/wgl: add null context check in wglBindTexImageARB()

To avoid dereferencing a null pointer in case wglMakeCurrent() wasn't
called.  Found while debugging SWKOTOR game.

Reviewed-by: Neha Bhende <bhenden@vmware.com>
Reviewed-by: Charmaine Lee <charmainel@vmware.com>
7 years agoradeonsi: decompress DCC in set_sampler_view instead of create_sampler_view (v2)
Marek Olšák [Fri, 24 Mar 2017 02:16:41 +0000 (03:16 +0100)]
radeonsi: decompress DCC in set_sampler_view instead of create_sampler_view (v2)

v2: don't add a new decompress helper function

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
7 years agoradeonsi: decompress DCC in set_framebuffer_state instead of create_surface (v2)
Marek Olšák [Fri, 24 Mar 2017 02:02:53 +0000 (03:02 +0100)]
radeonsi: decompress DCC in set_framebuffer_state instead of create_surface (v2)

for threaded gallium, which can't use pipe_context in create_surface

v2: don't add a new decompress helper function

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
7 years agost/glsl_to_tgsi: fix 64-bit integer bit shifts
Nicolai Hähnle [Thu, 30 Mar 2017 15:07:34 +0000 (17:07 +0200)]
st/glsl_to_tgsi: fix 64-bit integer bit shifts

Fix a bug that was caused by a type mismatch in the shift count between
GLSL and TGSI. I briefly considered adjusting the TGSI semantics, but
since both LLVM and AMD GCN require both arguments to be of the same type,
it makes more sense to keep TGSI as-is -- it reflects the underlying
implementation better.

I'm also sending out piglit tests that expose this error.

v2: use the right number of components for the temporary register

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
7 years agotgsi: fix printing of 64-bit integer immediates
Nicolai Hähnle [Thu, 30 Mar 2017 12:11:12 +0000 (14:11 +0200)]
tgsi: fix printing of 64-bit integer immediates

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
7 years agointel: genxml: fix out of tree builds
Lionel Landwerlin [Fri, 31 Mar 2017 10:05:42 +0000 (11:05 +0100)]
intel: genxml: fix out of tree builds

v2: use Emil's recommendation
    change rule to closer to genxml/genX_bits.h

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
7 years agogbm/dri: Check dri extension version before flush after unmap
Thomas Hellstrom [Thu, 30 Mar 2017 14:33:47 +0000 (16:33 +0200)]
gbm/dri: Check dri extension version before flush after unmap

The commit mentioned below required the __DRI2FlushExtension to have
version 4 or above, for GBM functionality. That broke GBM with some
classic dri drivers. Relax that requirement so that we only flush
after unmap if we have version 4 or above. Drivers that require the flush
for correct functionality should implement the desired version.

Fixes: ba8df228 ("gbm/dri: Flush after unmap")
Cc: <mesa-stable@lists.freedesktop.org>
Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com>
Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
Tested-by: Dylan Baker <dylan@pnwbakers.com>
7 years agoradeonsi: implement ARB_shader_group_vote
Nicolai Hähnle [Wed, 29 Mar 2017 18:29:37 +0000 (20:29 +0200)]
radeonsi: implement ARB_shader_group_vote

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
7 years agoradeonsi: enable ARB_shader_clock
Nicolai Hähnle [Thu, 30 Mar 2017 06:55:22 +0000 (08:55 +0200)]
radeonsi: enable ARB_shader_clock

Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
7 years agoradeonsi: emit TGSI_OPCODE_CLOCK
Nicolai Hähnle [Thu, 30 Mar 2017 07:24:24 +0000 (09:24 +0200)]
radeonsi: emit TGSI_OPCODE_CLOCK

Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
7 years agost/mesa: implement ARB_shader_clock
Nicolai Hähnle [Thu, 30 Mar 2017 06:55:05 +0000 (08:55 +0200)]
st/mesa: implement ARB_shader_clock

Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
7 years agotgsi: add CLOCK opcode
Ilia Mirkin [Thu, 9 Feb 2017 23:37:48 +0000 (18:37 -0500)]
tgsi: add CLOCK opcode

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
7 years agogallium: add PIPE_CAP_TGSI CLOCK
Nicolai Hähnle [Wed, 29 Mar 2017 18:44:57 +0000 (20:44 +0200)]
gallium: add PIPE_CAP_TGSI CLOCK

Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
7 years agoglsl: fix clockARB builtin function
Nicolai Hähnle [Thu, 30 Mar 2017 06:54:46 +0000 (08:54 +0200)]
glsl: fix clockARB builtin function

The underlying intrinsic is defined to always have a uvec2 return type.

Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
7 years agoanv: change BLOCK_POOL_MEMFD_SIZE to 1GB
Tapani Pälli [Thu, 30 Mar 2017 10:56:25 +0000 (13:56 +0300)]
anv: change BLOCK_POOL_MEMFD_SIZE to 1GB

This allows us to run 32bit Vulkan apps on Android, ftruncate
call would fail on 2GB (max size being 2GB - 1).

Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
7 years agoandroid: add libmesa_genxml as dep to libmesa_isl
Tapani Pälli [Thu, 30 Mar 2017 05:51:25 +0000 (08:51 +0300)]
android: add libmesa_genxml as dep to libmesa_isl

This is to fix following compile error with libmesa_isl:
   mesa/src/intel/isl/isl.c:28:10: fatal error: 'genxml/genX_bits.h' file not found

Fixes: f0eaf38 ("genxml: New generated header genX_bits.h (v6)")
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Reviewed-by: Emli Velikov <emil.velikov@collabora.com>
7 years agomesa: remove MESA_GLSL=opt
Timothy Arceri [Thu, 30 Mar 2017 11:21:32 +0000 (22:21 +1100)]
mesa: remove MESA_GLSL=opt

This is unused.

Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
Reviewed-by: Emil Velikov <emli.velikov@collabora.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
7 years agomesa: remove MESA_GLSL=no_opts env option
Timothy Arceri [Thu, 30 Mar 2017 11:14:21 +0000 (22:14 +1100)]
mesa: remove MESA_GLSL=no_opts env option

This is confusing because is only applys to GL_ARB_vertex/fragment_program,
and because of that its also not very useful.

If someone requires this for debugging they can just make an ad-hoc
code change.

Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
7 years agomesa: move FLUSH_VERTICES() call to meta
Timothy Arceri [Thu, 30 Mar 2017 10:24:13 +0000 (21:24 +1100)]
mesa: move FLUSH_VERTICES() call to meta

There is no need for this to be in the common code.

Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
7 years agomesa/vbo: remove redundant _mesa_is_bufferobj() calls
Timothy Arceri [Thu, 30 Mar 2017 10:14:43 +0000 (21:14 +1100)]
mesa/vbo: remove redundant _mesa_is_bufferobj() calls

This is already called inside the vbo_exec_vtx_{unmap,map}()
functions.

Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
7 years agomesa/glthread: add async support to ARB_gpu_shader_int64 uniform functions
Timothy Arceri [Thu, 30 Mar 2017 09:43:08 +0000 (20:43 +1100)]
mesa/glthread: add async support to ARB_gpu_shader_int64 uniform functions

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
7 years agomesa/glthread: add async support to ARB_gpu_shader_fp64 uniform functions
Timothy Arceri [Thu, 30 Mar 2017 09:43:07 +0000 (20:43 +1100)]
mesa/glthread: add async support to ARB_gpu_shader_fp64 uniform functions

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
7 years agoaubinator: enable snb/ilk through --gen
Lionel Landwerlin [Sat, 25 Mar 2017 13:59:52 +0000 (13:59 +0000)]
aubinator: enable snb/ilk through --gen

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
7 years agointel: genxml: compress all gen files into one
Lionel Landwerlin [Sat, 25 Mar 2017 02:52:33 +0000 (02:52 +0000)]
intel: genxml: compress all gen files into one

Combining all the files into a single string didn't make any
difference in the size of the aubinator binary.

With this change we now also embed gen4/4.5/5 descriptions, which
increases the aubinator size by ~16Kb.

v2 (Lionel): rebase makefiles

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
7 years agoradv: Use the guard band.
Bas Nieuwenhuizen [Wed, 1 Mar 2017 08:32:19 +0000 (09:32 +0100)]
radv: Use the guard band.

Signed-off-by: Bas Nieuwenhuizen <basni@google.com>
Reviewed-by: Dave Airlie <airlied@redhat.com>
7 years agoradv: Prepare for not using the guard band for lines & points.
Bas Nieuwenhuizen [Wed, 29 Mar 2017 20:58:10 +0000 (22:58 +0200)]
radv: Prepare for not using the guard band for lines & points.

Vulkan Clipping is defined in terms of vertices, the scissor based
clipping happens on pixels. There is a difference with points and
lines, as a vertex can be outside the viewport while some pixels are in.
On Vulkan thoise pixels shouldn't be drawn, while they would be with
the guardband.

Signed-off-by: Bas Nieuwenhuizen <basni@google.com>
Reviewed-by: Dave Airlie <airlied@redhat.com>
7 years agoradv: Drop the default viewport when 0 viewports are given.
Bas Nieuwenhuizen [Wed, 1 Mar 2017 01:14:08 +0000 (02:14 +0100)]
radv: Drop the default viewport when 0 viewports are given.

Signed-off-by: Bas Nieuwenhuizen <basni@google.com>
Reviewed-by: Dave Airlie <airlied@redhat.com>
7 years agoradv: Set proper viewport & scissor for meta draws.
Bas Nieuwenhuizen [Tue, 28 Feb 2017 23:39:58 +0000 (00:39 +0100)]
radv: Set proper viewport & scissor for meta draws.

Signed-off-by: Bas Nieuwenhuizen <basni@google.com>
Reviewed-by: Dave Airlie <airlied@redhat.com>
7 years agomesa: Fix trailing whitespace in polygon.c
Lyude [Thu, 23 Mar 2017 00:51:09 +0000 (20:51 -0400)]
mesa: Fix trailing whitespace in polygon.c

Signed-off-by: Lyude <lyude@redhat.com>
Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu>
7 years agomesa: Fix gross indenting in _mesa_PolygonMode()
Lyude [Thu, 23 Mar 2017 00:51:08 +0000 (20:51 -0400)]
mesa: Fix gross indenting in _mesa_PolygonMode()

Signed-off-by: Lyude <lyude@redhat.com>
Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu>
7 years agor300: Fix indenting in r300_get_param()
Lyude [Thu, 23 Mar 2017 00:51:07 +0000 (20:51 -0400)]
r300: Fix indenting in r300_get_param()

Signed-off-by: Lyude <lyude@redhat.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu>
7 years agovc4: Fix indenting in vc4_screen_get_param()
Lyude [Thu, 23 Mar 2017 00:51:06 +0000 (20:51 -0400)]
vc4: Fix indenting in vc4_screen_get_param()

Signed-off-by: Lyude <lyude@redhat.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu>
7 years agointel: Add INTEL_CFLAGS to aubinator CFLAGS.
Kenneth Graunke [Thu, 30 Mar 2017 18:55:33 +0000 (11:55 -0700)]
intel: Add INTEL_CFLAGS to aubinator CFLAGS.

It still needs intel_aub.h.  Fixes the build.

7 years agonir: Add support for 8 and 16-bit types
Jason Ekstrand [Thu, 9 Mar 2017 04:34:28 +0000 (20:34 -0800)]
nir: Add support for 8 and 16-bit types

Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Reviewed-by: Eduardo Lima Mitev <elima@igalia.com>
7 years agonir/constant_expressions: Don't switch on bit size when not needed
Jason Ekstrand [Tue, 14 Mar 2017 17:31:21 +0000 (10:31 -0700)]
nir/constant_expressions: Don't switch on bit size when not needed

For opcodes such as the nir_op_pack_64_2x32 for which all sources and
destinations have explicit sizes, the bit_size parameter to the evaluate
function is pointless and *should* do nothing.  Previously, we were
always switching on the bit_size and asserting if it isn't one of the
sizes in the list.  This generates way more code than needed and is a
bit cruel because it doesn't let us have a bit_size of zero on an ALU op
which shouldn't need a bit_size.

Reviewed-by: Eduardo Lima Mitev <elima@igalia.com>
7 years agonir/constant_expressions: Pull the guts out into a helper block
Jason Ekstrand [Tue, 14 Mar 2017 17:27:38 +0000 (10:27 -0700)]
nir/constant_expressions: Pull the guts out into a helper block

Reviewed-by: Eduardo Lima Mitev <elima@igalia.com>
7 years agoi965: Stop using legacy dri_bufmgr_* and intel_* names.
Kenneth Graunke [Tue, 21 Mar 2017 21:46:39 +0000 (14:46 -0700)]
i965: Stop using legacy dri_bufmgr_* and intel_* names.

Eric renamed these from dri_bufmgr_* and intel_bufmgr_* to drm_intel_*
in libdrm commit 4b9826408f65976a1a13387beda748b65e03ec52, circa 2008,
but we've been using the legacy names this whole time.

Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
7 years agointel: automake: move INTEL_CFLAGS as applicable
Emil Velikov [Fri, 17 Mar 2017 16:55:25 +0000 (16:55 +0000)]
intel: automake: move INTEL_CFLAGS as applicable

Only common/decoder.[ch] requires it [for intel_aub.h].

v2: The code was moved to from intel/tools to intel/common,
update accordingly.

Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
7 years agointel: android: remove libdrm_intel requirement
Emil Velikov [Fri, 17 Mar 2017 16:55:24 +0000 (16:55 +0000)]
intel: android: remove libdrm_intel requirement

The only part which requires libdrm_intel tools/aubinator is not built
on Android.

Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
7 years agoPartially revert "amd/addrlib: silence warnings" to fix builds with DEBUG
Marek Olšák [Thu, 30 Mar 2017 17:01:02 +0000 (19:01 +0200)]
Partially revert "amd/addrlib: silence warnings" to fix builds with DEBUG

This partially reverts commit 8a74140a21fe6b0d2e8a60b065b890f797f2db51.

7 years agoddebug: implement clear_texture
Marek Olšák [Tue, 28 Mar 2017 00:15:23 +0000 (02:15 +0200)]
ddebug: implement clear_texture

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
7 years agoradeonsi: fix an unused-variable warning in a release build
Marek Olšák [Thu, 30 Mar 2017 15:21:47 +0000 (17:21 +0200)]
radeonsi: fix an unused-variable warning in a release build

7 years agovdpau: fix a maybe-uninitialized warning
Marek Olšák [Thu, 30 Mar 2017 15:11:41 +0000 (17:11 +0200)]
vdpau: fix a maybe-uninitialized warning

7 years agosoftpipe: fix a maybe-uninitialized warning
Marek Olšák [Thu, 30 Mar 2017 15:11:41 +0000 (17:11 +0200)]
softpipe: fix a maybe-uninitialized warning

/home/marek/dev/mesa-main/src/gallium/drivers/softpipe/sp_compute.c:178:
 warning: 'grid_size' may be used uninitialized in this function
 [-Wmaybe-uninitialized]

7 years agogallivm: fix a maybe-uninitialized warning
Marek Olšák [Thu, 30 Mar 2017 15:11:41 +0000 (17:11 +0200)]
gallivm: fix a maybe-uninitialized warning

/home/marek/dev/mesa-main/src/gallium/auxiliary/gallivm/lp_bld_sample_soa.c:3598:
 warning: 'level' may be used uninitialized in this function [-Wmaybe-uninitialized]
       out1 = lp_build_cmp(&leveli_bld, PIPE_FUNC_GREATER, level, last_level);
            ^

7 years agogallium/radeon: s/dcc_disable/disable_dcc/
Marek Olšák [Wed, 29 Mar 2017 17:41:48 +0000 (19:41 +0200)]
gallium/radeon: s/dcc_disable/disable_dcc/

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
Tested-by: Edmondo Tommasina <edmondo.tommasina@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
7 years agoradeonsi: handle incompatible DCC formats in resource_copy_region
Marek Olšák [Fri, 24 Mar 2017 11:21:20 +0000 (12:21 +0100)]
radeonsi: handle incompatible DCC formats in resource_copy_region

Required because of later commits.

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
Tested-by: Edmondo Tommasina <edmondo.tommasina@gmail.com>
7 years agoradeonsi: remove a workaround for inexact *8_SNORM blits
Marek Olšák [Fri, 24 Mar 2017 11:31:34 +0000 (12:31 +0100)]
radeonsi: remove a workaround for inexact *8_SNORM blits

All tests pass on Fiji now. This prevents DCC disablement due to
incompatible DCC formats due to the fallback.

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
Tested-by: Edmondo Tommasina <edmondo.tommasina@gmail.com>
7 years agogallium/radeon: add and use a new helper vi_dcc_enabled
Marek Olšák [Fri, 24 Mar 2017 01:58:54 +0000 (02:58 +0100)]
gallium/radeon: add and use a new helper vi_dcc_enabled

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
Tested-by: Edmondo Tommasina <edmondo.tommasina@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
7 years agogallium/radeon: formalize that r600_query_hw_add_result doesn't need a context
Marek Olšák [Sun, 12 Mar 2017 20:26:22 +0000 (21:26 +0100)]
gallium/radeon: formalize that r600_query_hw_add_result doesn't need a context

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
Tested-by: Edmondo Tommasina <edmondo.tommasina@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
7 years agoradeonsi: don't make a copy of pipe_index_buffer in draw_vbo
Marek Olšák [Tue, 28 Mar 2017 20:19:29 +0000 (22:19 +0200)]
radeonsi: don't make a copy of pipe_index_buffer in draw_vbo

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
Tested-by: Edmondo Tommasina <edmondo.tommasina@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
7 years agogallium/util: use const in u_index_modify helpers
Marek Olšák [Tue, 28 Mar 2017 20:20:56 +0000 (22:20 +0200)]
gallium/util: use const in u_index_modify helpers

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
Tested-by: Edmondo Tommasina <edmondo.tommasina@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
7 years agowinsys/amdgpu: remove AMDGPU_INFO_NUM_EVICTIONS
Samuel Pitoiset [Wed, 29 Mar 2017 19:06:38 +0000 (21:06 +0200)]
winsys/amdgpu: remove AMDGPU_INFO_NUM_EVICTIONS

This is now exposed with libdrm_amdgpu 2.4.76.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
7 years agoradeonsi: add Vega10 PCI IDs
Marek Olšák [Tue, 13 Dec 2016 17:35:35 +0000 (18:35 +0100)]
radeonsi: add Vega10 PCI IDs

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
7 years agoradeon/uvd: set correct vega10 db pitch alignment
Boyuan Zhang [Thu, 16 Mar 2017 21:52:33 +0000 (17:52 -0400)]
radeon/uvd: set correct vega10 db pitch alignment

Create new function to get correct alignment based on Asics, and change
the corresponding decode message buffer and dpb buffer size calculations

Signed-off-by: Boyuan Zhang <boyuan.zhang@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
7 years agoradeon/vce: add vce support for firmware 53.19.4
Leo Liu [Fri, 10 Feb 2017 15:44:05 +0000 (10:44 -0500)]
radeon/vce: add vce support for firmware 53.19.4

v2: squashed with other similar commits

Signed-off-by: Leo Liu <leo.liu@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
7 years agoradeon/vce: adapt gfx9 surface to vce
Leo Liu [Fri, 10 Feb 2017 15:41:31 +0000 (10:41 -0500)]
radeon/vce: adapt gfx9 surface to vce

Signed-off-by: Leo Liu <leo.liu@amd.com>
Acked-by: Alex Deucher <alexander.deucher@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
7 years agowinsys/surface: add height pitch for gfx9
Leo Liu [Fri, 10 Feb 2017 15:36:21 +0000 (10:36 -0500)]
winsys/surface: add height pitch for gfx9

Signed-off-by: Leo Liu <leo.liu@amd.com>
Acked-by: Alex Deucher <alexander.deucher@amd.com>
7 years agoradeon/uvd: clear message buffer when reuse
Leo Liu [Thu, 9 Feb 2017 15:30:21 +0000 (10:30 -0500)]
radeon/uvd: clear message buffer when reuse

As required by firmware

Signed-off-by: Leo Liu <leo.liu@amd.com>
Acked-by: Alex Deucher <alexander.deucher@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
7 years agoradeon/uvd: adapt gfx9 surface to uvd
Leo Liu [Thu, 9 Feb 2017 15:25:20 +0000 (10:25 -0500)]
radeon/uvd: adapt gfx9 surface to uvd

Signed-off-by: Leo Liu <leo.liu@amd.com>
Acked-by: Alex Deucher <alexander.deucher@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
7 years agoradeon/uvd: add uvd soc15 register
Leo Liu [Thu, 9 Feb 2017 15:16:06 +0000 (10:16 -0500)]
radeon/uvd: add uvd soc15 register

Signed-off-by: Leo Liu <leo.liu@amd.com>
Acked-by: Alex Deucher <alexander.deucher@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
7 years agoradeonsi/gfx9: disable features that don't work
Marek Olšák [Tue, 14 Mar 2017 22:26:30 +0000 (23:26 +0100)]
radeonsi/gfx9: disable features that don't work

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
7 years agoradeonsi/gfx9: only allow GL 3.1
Marek Olšák [Sat, 15 Oct 2016 14:07:58 +0000 (16:07 +0200)]
radeonsi/gfx9: only allow GL 3.1

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
7 years agoradeonsi/gfx9: add linear address computations for texture transfers
Marek Olšák [Wed, 26 Oct 2016 22:10:13 +0000 (00:10 +0200)]
radeonsi/gfx9: add linear address computations for texture transfers

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
7 years agoradeonsi/gfx9: don't generate LS and ES states
Marek Olšák [Wed, 23 Nov 2016 01:41:14 +0000 (02:41 +0100)]
radeonsi/gfx9: don't generate LS and ES states

these shaders don't exist on GFX9

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
7 years agoradeonsi/gfx9: SPI_SHADER_USER_DATA changes
Marek Olšák [Sat, 15 Oct 2016 12:38:59 +0000 (14:38 +0200)]
radeonsi/gfx9: SPI_SHADER_USER_DATA changes

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
7 years agowinsys/amdgpu: set/get BO tiling flags for GFX9
Marek Olšák [Wed, 23 Nov 2016 17:42:53 +0000 (18:42 +0100)]
winsys/amdgpu: set/get BO tiling flags for GFX9

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
7 years agoradeonsi/gfx9: handle pitch and offset overrides for texture_from_handle
Marek Olšák [Thu, 27 Oct 2016 15:33:42 +0000 (17:33 +0200)]
radeonsi/gfx9: handle pitch and offset overrides for texture_from_handle

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
7 years agoradeonsi/gfx9: set/validate GFX9 BO metadata
Marek Olšák [Sun, 6 Nov 2016 14:46:26 +0000 (15:46 +0100)]
radeonsi/gfx9: set/validate GFX9 BO metadata

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
7 years agoradeonsi/gfx9: add radeon_surf.gfx9.surf_offset
Marek Olšák [Wed, 15 Feb 2017 23:11:58 +0000 (00:11 +0100)]
radeonsi/gfx9: add radeon_surf.gfx9.surf_offset

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
7 years agoradeonsi/gfx9: don't write mipmap level offsets to BO metadata
Marek Olšák [Sat, 15 Oct 2016 13:27:57 +0000 (15:27 +0200)]
radeonsi/gfx9: don't write mipmap level offsets to BO metadata

GFX9 doesn't have (usable) mipmap offsets.

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
7 years agoradeonsi/gfx9: flush CB & DB caches with an EOP TS event
Marek Olšák [Sat, 15 Oct 2016 14:21:20 +0000 (16:21 +0200)]
radeonsi/gfx9: flush CB & DB caches with an EOP TS event

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
7 years agoradeonsi/gfx9: use ACQUIRE_MEM
Marek Olšák [Sat, 15 Oct 2016 14:09:26 +0000 (16:09 +0200)]
radeonsi/gfx9: use ACQUIRE_MEM

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
7 years agoradeonsi/gfx9: only use CE RAM for most-used descriptors
Marek Olšák [Sun, 6 Nov 2016 19:22:12 +0000 (20:22 +0100)]
radeonsi/gfx9: only use CE RAM for most-used descriptors

because the CE RAM size decreased to 4 KB.

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
7 years agoradeonsi/gfx9: emit FLUSH_DFSM where required
Marek Olšák [Sun, 6 Nov 2016 18:27:09 +0000 (19:27 +0100)]
radeonsi/gfx9: emit FLUSH_DFSM where required

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
7 years agoradeonsi/gfx9: emit BREAK_BATCH in emit_framebuffer_state
Marek Olšák [Sun, 6 Nov 2016 18:25:12 +0000 (19:25 +0100)]
radeonsi/gfx9: emit BREAK_BATCH in emit_framebuffer_state

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
7 years agoradeonsi/gfx9: fix MIP0_WIDTH & MIP0_HEIGHT for compressed texture blits
Marek Olšák [Mon, 30 Jan 2017 23:56:34 +0000 (00:56 +0100)]
radeonsi/gfx9: fix MIP0_WIDTH & MIP0_HEIGHT for compressed texture blits

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
7 years agoradeonsi/gfx9: fix textureSize/imageSize for 1D textures
Marek Olšák [Tue, 31 Jan 2017 20:02:19 +0000 (21:02 +0100)]
radeonsi/gfx9: fix textureSize/imageSize for 1D textures

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
7 years agoradeonsi/gfx9: add a workaround for 1D depth textures
Marek Olšák [Tue, 24 Jan 2017 20:39:42 +0000 (21:39 +0100)]
radeonsi/gfx9: add a workaround for 1D depth textures

The same workaround is used by Vulkan.

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
7 years agoradeonsi/gfx9: enable clamping for Z UNORM formats promoted to Z32F
Marek Olšák [Tue, 31 Jan 2017 21:56:38 +0000 (22:56 +0100)]
radeonsi/gfx9: enable clamping for Z UNORM formats promoted to Z32F

so that shaders don't have to do it.

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
7 years agoradeonsi/gfx9: image descriptor changes in mutable fields
Marek Olšák [Sat, 15 Oct 2016 13:27:18 +0000 (15:27 +0200)]
radeonsi/gfx9: image descriptor changes in mutable fields

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>