Mesa (master): radeonsi/nir: set TGSI_PROPERTY_FS_EARLY_DEPTH_STENCIL correctly

2018-02-15 Thread Timothy Arceri
Module: Mesa
Branch: master
Commit: 2f5d3df9fcb7e5576952791762c1c0c7d8266acd
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=2f5d3df9fcb7e5576952791762c1c0c7d8266acd

Author: Timothy Arceri 
Date:   Thu Feb 15 15:08:49 2018 +1100

radeonsi/nir: set TGSI_PROPERTY_FS_EARLY_DEPTH_STENCIL correctly

We set this for post_depth_coverage in addition to early_fragment_tests.

Reviewed-by: Marek Olšák 

---

 src/gallium/drivers/radeonsi/si_shader_nir.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/gallium/drivers/radeonsi/si_shader_nir.c 
b/src/gallium/drivers/radeonsi/si_shader_nir.c
index 0a09963e91..1ac6903bbc 100644
--- a/src/gallium/drivers/radeonsi/si_shader_nir.c
+++ b/src/gallium/drivers/radeonsi/si_shader_nir.c
@@ -277,7 +277,8 @@ void si_nir_scan_shader(const struct nir_shader *nir,
}
 
if (nir->info.stage == MESA_SHADER_FRAGMENT) {
-   info->properties[TGSI_PROPERTY_FS_EARLY_DEPTH_STENCIL] = 
nir->info.fs.early_fragment_tests;
+   info->properties[TGSI_PROPERTY_FS_EARLY_DEPTH_STENCIL] =
+   nir->info.fs.early_fragment_tests | 
nir->info.fs.post_depth_coverage;
info->properties[TGSI_PROPERTY_FS_POST_DEPTH_COVERAGE] = 
nir->info.fs.post_depth_coverage;
 
if (nir->info.fs.depth_layout != FRAG_DEPTH_LAYOUT_NONE) {

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): virgl: remap query types to hw support.

2018-02-15 Thread Dave Airlie
Module: Mesa
Branch: master
Commit: 60c14a0db25d3dd246744858179a52548325c25f
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=60c14a0db25d3dd246744858179a52548325c25f

Author: Dave Airlie 
Date:   Wed Feb 14 12:52:27 2018 +1000

virgl: remap query types to hw support.

The gallium query types changed, so we need to remap from the
gallium ones to the virgl ones.

Fixes:
dEQP-GLES3.functional.transform_feedback.basic_types*

"This also fixes:

dEQP-GLES3.functional.transform_feedback.array.separate*
dEQP-GLES3.functional.transform_feedback.array_element*
dEQP-GLES3.functional.transform_feedback.interpolation.*

Gallium's p_defines.h and virglrenderer's p_defines.h have diverged
quite a bit, so not including
PIPE_QUERY_OCCLUSION_PREDICATE_CONSERVATIVE there makes sense for now."
 - Gurchetan Singh

Fixes: 3f6b3d9db (gallium: add PIPE_QUERY_OCCLUSION_PREDICATE_CONSERVATIVE)
Reviewed-by: Gurchetan Singh 
Tested-by: Gurchetan Singh 
Signed-off-by: Dave Airlie 

---

 src/gallium/drivers/virgl/virgl_query.c | 37 +++--
 1 file changed, 35 insertions(+), 2 deletions(-)

diff --git a/src/gallium/drivers/virgl/virgl_query.c 
b/src/gallium/drivers/virgl/virgl_query.c
index e6ca4609c0..3a930d2966 100644
--- a/src/gallium/drivers/virgl/virgl_query.c
+++ b/src/gallium/drivers/virgl/virgl_query.c
@@ -37,6 +37,39 @@ struct virgl_query {
unsigned result_size;
unsigned result_gotten_sent;
 };
+#define VIRGL_QUERY_OCCLUSION_COUNTER 0
+#define VIRGL_QUERY_OCCLUSION_PREDICATE   1
+#define VIRGL_QUERY_TIMESTAMP 2
+#define VIRGL_QUERY_TIMESTAMP_DISJOINT3
+#define VIRGL_QUERY_TIME_ELAPSED  4
+#define VIRGL_QUERY_PRIMITIVES_GENERATED  5
+#define VIRGL_QUERY_PRIMITIVES_EMITTED6
+#define VIRGL_QUERY_SO_STATISTICS 7
+#define VIRGL_QUERY_SO_OVERFLOW_PREDICATE 8
+#define VIRGL_QUERY_GPU_FINISHED  9
+#define VIRGL_QUERY_PIPELINE_STATISTICS  10
+
+static const int pquery_map[] =
+{
+   VIRGL_QUERY_OCCLUSION_COUNTER,
+   VIRGL_QUERY_OCCLUSION_PREDICATE,
+   -1,
+   VIRGL_QUERY_TIMESTAMP,
+   VIRGL_QUERY_TIMESTAMP_DISJOINT,
+   VIRGL_QUERY_TIME_ELAPSED,
+   VIRGL_QUERY_PRIMITIVES_GENERATED,
+   VIRGL_QUERY_PRIMITIVES_EMITTED,
+   VIRGL_QUERY_SO_STATISTICS,
+   VIRGL_QUERY_SO_OVERFLOW_PREDICATE,
+   -1,
+   VIRGL_QUERY_GPU_FINISHED,
+   VIRGL_QUERY_PIPELINE_STATISTICS,
+};
+
+static int pipe_to_virgl_query(enum pipe_query_type ptype)
+{
+   return pquery_map[ptype];
+}
 
 static inline struct virgl_query *virgl_query(struct pipe_query *q)
 {
@@ -75,11 +108,11 @@ static struct pipe_query *virgl_create_query(struct 
pipe_context *ctx,
}
 
handle = virgl_object_assign_handle();
-   query->type = query_type;
+   query->type = pipe_to_virgl_query(query_type);
query->index = index;
query->handle = handle;
query->buf->clean = FALSE;
-   virgl_encoder_create_query(vctx, handle, query_type, index, query->buf, 0);
+   virgl_encoder_create_query(vctx, handle, query->type, index, query->buf, 0);
 
return (struct pipe_query *)query;
 }

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): intel/isl/icl: Add the maximum surface size limit

2018-02-15 Thread Anuj Phogat
Module: Mesa
Branch: master
Commit: 0427bd4954acfd99c3b00b8a0993ca3c9e816d47
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=0427bd4954acfd99c3b00b8a0993ca3c9e816d47

Author: Anuj Phogat 
Date:   Fri May 19 12:13:40 2017 -0700

intel/isl/icl: Add the maximum surface size limit

Signed-off-by: Anuj Phogat 
Reviewed-by: Kenneth Graunke 

---

 src/intel/isl/isl.c | 6 +-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/src/intel/isl/isl.c b/src/intel/isl/isl.c
index 59f512fc05..f70ac22aac 100644
--- a/src/intel/isl/isl.c
+++ b/src/intel/isl/isl.c
@@ -1483,7 +1483,7 @@ isl_surf_init_s(const struct isl_device *dev,
*/
   if (size > (uint64_t) 1 << 31)
  return false;
-   } else {
+   } else if (ISL_DEV_GEN(dev) < 11) {
   /* From the Skylake PRM Vol 5, Maximum Surface Size in Bytes:
*"In addition to restrictions on maximum height, width, and depth,
* surfaces are also restricted to a maximum size of 2^38 bytes.
@@ -1492,6 +1492,10 @@ isl_surf_init_s(const struct isl_device *dev,
*/
   if (size > (uint64_t) 1 << 38)
  return false;
+   } else {
+  /* gen11+ platforms raised this limit to 2^44 bytes. */
+  if (size > (uint64_t) 1 << 44)
+ return false;
}
 
*surf = (struct isl_surf) {

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): intel/isl/icl: Build and use gen11 surface state emit functions

2018-02-15 Thread Anuj Phogat
Module: Mesa
Branch: master
Commit: bff24e2173543a0329347ad95be86c1db60f2f0e
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=bff24e2173543a0329347ad95be86c1db60f2f0e

Author: Anuj Phogat 
Date:   Thu Jul 20 15:59:49 2017 -0700

intel/isl/icl: Build and use gen11 surface state emit functions

Signed-off-by: Anuj Phogat 
Reviewed-by: Kenneth Graunke 
Reviewed-by: Emil Velikov 
Reviewed-by: Dylan Baker 

---

 src/intel/Android.isl.mk   | 20 
 src/intel/Makefile.isl.am  |  4 
 src/intel/Makefile.sources |  4 
 src/intel/isl/isl.c|  3 +++
 src/intel/isl/isl_priv.h   |  3 +++
 src/intel/isl/meson.build  |  2 +-
 6 files changed, 35 insertions(+), 1 deletion(-)

diff --git a/src/intel/Android.isl.mk b/src/intel/Android.isl.mk
index 516ac3a210..23cff55d25 100644
--- a/src/intel/Android.isl.mk
+++ b/src/intel/Android.isl.mk
@@ -180,6 +180,25 @@ include $(MESA_COMMON_MK)
 include $(BUILD_STATIC_LIBRARY)
 
 # ---
+# Build libmesa_isl_gen11
+# ---
+
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := libmesa_isl_gen11
+
+LOCAL_SRC_FILES := $(ISL_GEN11_FILES)
+
+LOCAL_CFLAGS := -DGEN_VERSIONx10=110
+
+LOCAL_C_INCLUDES := $(LIBISL_GENX_COMMON_INCLUDES)
+
+LOCAL_WHOLE_STATIC_LIBRARIES := libmesa_genxml
+
+include $(MESA_COMMON_MK)
+include $(BUILD_STATIC_LIBRARY)
+
+# ---
 # Build libmesa_isl
 # ---
 
@@ -207,6 +226,7 @@ LOCAL_WHOLE_STATIC_LIBRARIES := \
libmesa_isl_gen8 \
libmesa_isl_gen9 \
libmesa_isl_gen10 \
+   libmesa_isl_gen11 \
libmesa_genxml
 
 # Autogenerated sources
diff --git a/src/intel/Makefile.isl.am b/src/intel/Makefile.isl.am
index 31273af36c..9525f9e990 100644
--- a/src/intel/Makefile.isl.am
+++ b/src/intel/Makefile.isl.am
@@ -28,6 +28,7 @@ ISL_GEN_LIBS =   \
isl/libisl-gen8.la   \
isl/libisl-gen9.la   \
isl/libisl-gen10.la  \
+   isl/libisl-gen11.la  \
$(NULL)
 
 noinst_LTLIBRARIES += $(ISL_GEN_LIBS) isl/libisl.la
@@ -59,6 +60,9 @@ isl_libisl_gen9_la_CFLAGS = $(AM_CFLAGS) -DGEN_VERSIONx10=90
 isl_libisl_gen10_la_SOURCES = $(ISL_GEN10_FILES)
 isl_libisl_gen10_la_CFLAGS = $(AM_CFLAGS) -DGEN_VERSIONx10=100
 
+isl_libisl_gen11_la_SOURCES = $(ISL_GEN11_FILES)
+isl_libisl_gen11_la_CFLAGS = $(AM_CFLAGS) -DGEN_VERSIONx10=110
+
 BUILT_SOURCES += $(ISL_GENERATED_FILES)
 
 isl/isl_format_layout.c: isl/gen_format_layout.py \
diff --git a/src/intel/Makefile.sources b/src/intel/Makefile.sources
index 4c0240bdf1..22563cac6a 100644
--- a/src/intel/Makefile.sources
+++ b/src/intel/Makefile.sources
@@ -203,6 +203,10 @@ ISL_GEN10_FILES = \
isl/isl_emit_depth_stencil.c \
isl/isl_surface_state.c
 
+ISL_GEN11_FILES = \
+   isl/isl_emit_depth_stencil.c \
+   isl/isl_surface_state.c
+
 ISL_GENERATED_FILES = \
isl/isl_format_layout.c
 
diff --git a/src/intel/isl/isl.c b/src/intel/isl/isl.c
index f70ac22aac..4dce0596d2 100644
--- a/src/intel/isl/isl.c
+++ b/src/intel/isl/isl.c
@@ -1778,6 +1778,9 @@ isl_surf_get_ccs_surf(const struct isl_device *dev,
case 10:\
   isl_gen10_##func(__VA_ARGS__);   \
   break;   \
+   case 11:\
+  isl_gen11_##func(__VA_ARGS__);   \
+  break;   \
default:\
   assert(!"Unknown hardware generation");  \
}
diff --git a/src/intel/isl/isl_priv.h b/src/intel/isl/isl_priv.h
index 2122e7cb75..b86167bb3a 100644
--- a/src/intel/isl/isl_priv.h
+++ b/src/intel/isl/isl_priv.h
@@ -190,6 +190,9 @@ isl_extent3d_el_to_sa(enum isl_format fmt, struct 
isl_extent3d extent_el)
 #  define genX(x) gen10_##x
 #  include "isl_genX_priv.h"
 #  undef genX
+#  define genX(x) gen11_##x
+#  include "isl_genX_priv.h"
+#  undef genX
 #endif
 
 #endif /* ISL_PRIV_H */
diff --git a/src/intel/isl/meson.build b/src/intel/isl/meson.build
index 0838c32af3..36b8b8ffa2 100644
--- a/src/intel/isl/meson.build
+++ b/src/intel/isl/meson.build
@@ -51,7 +51,7 @@ isl_gen9_files = files(
 isl_gen_libs = []
 foreach g : [['40', isl_gen4_files], ['50', []], ['60', isl_gen6_files],
  ['70', isl_gen7_files], ['75', []], ['80', isl_gen8_files],
- ['90', isl_gen9_files], ['100', []]]
+ ['90', isl_gen9_files], ['100', []], ['110', []]]
   _gen = g[0]
   isl_gen_libs += static_library(
 'libisl_gen@0@'.format(_gen),

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): i965/icl: Don't set ResetGatewayTimer

2018-02-15 Thread Anuj Phogat
Module: Mesa
Branch: master
Commit: 85f319155feec92d7249352513b4ab17a73d7c42
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=85f319155feec92d7249352513b4ab17a73d7c42

Author: Anuj Phogat 
Date:   Wed May 24 13:58:37 2017 -0700

i965/icl: Don't set ResetGatewayTimer

This field is removed in gen11+

Signed-off-by: Anuj Phogat 
Reviewed-by: Kenneth Graunke 

---

 src/mesa/drivers/dri/i965/genX_state_upload.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/mesa/drivers/dri/i965/genX_state_upload.c 
b/src/mesa/drivers/dri/i965/genX_state_upload.c
index 498c3979ad..f1842b36c0 100644
--- a/src/mesa/drivers/dri/i965/genX_state_upload.c
+++ b/src/mesa/drivers/dri/i965/genX_state_upload.c
@@ -4220,8 +4220,10 @@ genX(upload_cs_state)(struct brw_context *brw)
   const uint32_t subslices = MAX2(brw->screen->subslice_total, 1);
   vfe.MaximumNumberofThreads = devinfo->max_cs_threads * subslices - 1;
   vfe.NumberofURBEntries = GEN_GEN >= 8 ? 2 : 0;
+#if GEN_GEN < 11
   vfe.ResetGatewayTimer =
  Resettingrelativetimerandlatchingtheglobaltimestamp;
+#endif
 #if GEN_GEN < 9
   vfe.BypassGatewayControl = BypassingOpenGatewayCloseGatewayprotocol;
 #endif

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): intel/genxml/icl: Generate packing headers

2018-02-15 Thread Anuj Phogat
Module: Mesa
Branch: master
Commit: 165a68b05aab6e4c75c83ec664be33c4e97f7f67
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=165a68b05aab6e4c75c83ec664be33c4e97f7f67

Author: Anuj Phogat 
Date:   Wed May 10 10:50:15 2017 -0700

intel/genxml/icl: Generate packing headers

Move build system changes in to one patch (Ken, Emil)

Signed-off-by: Anuj Phogat 
Reviewed-by: Kenneth Graunke 
Reviewed-by: Emil Velikov 
Reviewed-by: Dylan Baker 

---

 src/intel/Android.genxml.mk   | 5 +
 src/intel/Makefile.sources| 6 --
 src/intel/genxml/genX_pack.h  | 2 ++
 src/intel/genxml/gen_macros.h | 3 +++
 src/intel/genxml/meson.build  | 1 +
 5 files changed, 15 insertions(+), 2 deletions(-)

diff --git a/src/intel/Android.genxml.mk b/src/intel/Android.genxml.mk
index e4d8dd8b94..8b867920c3 100644
--- a/src/intel/Android.genxml.mk
+++ b/src/intel/Android.genxml.mk
@@ -101,6 +101,11 @@ $(intermediates)/genxml/gen10_pack.h: PRIVATE_XML := 
$(LOCAL_PATH)/genxml/gen10.
 $(intermediates)/genxml/gen10_pack.h: $(LOCAL_PATH)/genxml/gen10.xml 
$(LOCAL_PATH)/genxml/gen_pack_header.py
$(call header-gen)
 
+$(intermediates)/genxml/gen11_pack.h: PRIVATE_SCRIPT := $(MESA_PYTHON2) 
$(LOCAL_PATH)/genxml/gen_pack_header.py
+$(intermediates)/genxml/gen11_pack.h: PRIVATE_XML := 
$(LOCAL_PATH)/genxml/gen11.xml
+$(intermediates)/genxml/gen11_pack.h: $(LOCAL_PATH)/genxml/gen11.xml 
$(LOCAL_PATH)/genxml/gen_pack_header.py
+   $(call header-gen)
+
 $(intermediates)/genxml/genX_xml.h: $(addprefix 
$(MESA_TOP)/src/intel/,$(GENXML_XML_FILES)) 
$(MESA_TOP)/src/intel/genxml/gen_zipped_file.py
@mkdir -p $(dir $@)
@echo "Gen Header: $(PRIVATE_MODULE) <= $(notdir $(@))"
diff --git a/src/intel/Makefile.sources b/src/intel/Makefile.sources
index 9595bf4258..4c0240bdf1 100644
--- a/src/intel/Makefile.sources
+++ b/src/intel/Makefile.sources
@@ -132,7 +132,8 @@ GENXML_XML_FILES = \
genxml/gen75.xml \
genxml/gen8.xml \
genxml/gen9.xml \
-   genxml/gen10.xml
+   genxml/gen10.xml \
+   genxml/gen11.xml
 
 GENXML_GENERATED_PACK_FILES = \
genxml/gen4_pack.h \
@@ -143,7 +144,8 @@ GENXML_GENERATED_PACK_FILES = \
genxml/gen75_pack.h \
genxml/gen8_pack.h \
genxml/gen9_pack.h \
-   genxml/gen10_pack.h
+   genxml/gen10_pack.h \
+   genxml/gen11_pack.h
 
 GENXML_GENERATED_FILES = \
$(GENXML_GENERATED_PACK_FILES) \
diff --git a/src/intel/genxml/genX_pack.h b/src/intel/genxml/genX_pack.h
index 187e75c598..cf39973db1 100644
--- a/src/intel/genxml/genX_pack.h
+++ b/src/intel/genxml/genX_pack.h
@@ -46,6 +46,8 @@
 #  include "genxml/gen9_pack.h"
 #elif (GEN_VERSIONx10 == 100)
 #  include "genxml/gen10_pack.h"
+#elif (GEN_VERSIONx10 == 110)
+#  include "genxml/gen11_pack.h"
 #else
 #  error "Need to add a pack header include for this gen"
 #endif
diff --git a/src/intel/genxml/gen_macros.h b/src/intel/genxml/gen_macros.h
index a85c08250c..43449a41a4 100644
--- a/src/intel/genxml/gen_macros.h
+++ b/src/intel/genxml/gen_macros.h
@@ -88,6 +88,9 @@
 #elif (GEN_VERSIONx10 == 100)
 #  define GENX(X) GEN10_##X
 #  define genX(x) gen10_##x
+#elif (GEN_VERSIONx10 == 110)
+#  define GENX(X) GEN11_##X
+#  define genX(x) gen11_##x
 #else
 #  error "Need to add prefixing macros for this gen"
 #endif
diff --git a/src/intel/genxml/meson.build b/src/intel/genxml/meson.build
index 371f85307c..970d565471 100644
--- a/src/intel/genxml/meson.build
+++ b/src/intel/genxml/meson.build
@@ -28,6 +28,7 @@ gen_xml_files = [
   'gen8.xml',
   'gen9.xml',
   'gen10.xml',
+  'gen11.xml',
 ]
 
 genX_xml_h = custom_target(

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): intel/common/icl: Add has_sample_with_hiz flag in gen_device_info

2018-02-15 Thread Anuj Phogat
Module: Mesa
Branch: master
Commit: ba3cbee6c56a31ca1513f9c2b205f2c0174d9e60
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=ba3cbee6c56a31ca1513f9c2b205f2c0174d9e60

Author: Anuj Phogat 
Date:   Wed Feb 14 14:30:27 2018 -0800

intel/common/icl: Add has_sample_with_hiz flag in gen_device_info

Sampling from hiz is enabled in i965 for GEN9+ but this feature has
been removed from gen11. So, this new flag will be useful to turn
the feature on/off for different gen h/w. It will be used later
in a patch adding device info for gen11.

Suggested-by: Kenneth Graunke 
Signed-off-by: Anuj Phogat 
Reviewed-by: Kenneth Graunke 

---

 src/intel/common/gen_device_info.c| 7 +++
 src/intel/common/gen_device_info.h| 2 +-
 src/mesa/drivers/dri/i965/intel_mipmap_tree.c | 5 +
 3 files changed, 9 insertions(+), 5 deletions(-)

diff --git a/src/intel/common/gen_device_info.c 
b/src/intel/common/gen_device_info.c
index c0eb7c3c35..a08a13a32a 100644
--- a/src/intel/common/gen_device_info.c
+++ b/src/intel/common/gen_device_info.c
@@ -311,12 +311,16 @@ static const struct gen_device_info 
gen_device_info_hsw_gt3 = {
},
 };
 
+/* It's unclear how well supported sampling from the hiz buffer is on GEN8,
+ * so keep things conservative for now and set has_sample_with_hiz = false.
+ */
 #define GEN8_FEATURES   \
.gen = 8,\
.has_hiz_and_separate_stencil = true,\
.has_resource_streamer = true,   \
.must_use_separate_stencil = true,   \
.has_llc = true, \
+   .has_sample_with_hiz = false,\
.has_pln = true, \
.supports_simd16_3src = true,\
.has_surface_tile_offset = true, \
@@ -451,6 +455,7 @@ static const struct gen_device_info gen_device_info_chv = {
GEN9_HW_INFO,   \
.gt = 1,\
.has_llc = false,   \
+   .has_sample_with_hiz = true,\
.num_slices = 1,\
.num_thread_per_eu = 6, \
.max_vs_threads = 112,  \
@@ -502,6 +507,7 @@ static const struct gen_device_info gen_device_info_chv = {
 #define GEN9_FEATURES   \
GEN8_FEATURES,   \
GEN9_HW_INFO,\
+   .has_sample_with_hiz = true, \
.num_thread_per_eu = 7
 
 static const struct gen_device_info gen_device_info_skl_gt1 = {
@@ -695,6 +701,7 @@ static const struct gen_device_info gen_device_info_cfl_gt3 
= {
 #define GEN10_FEATURES(_gt, _slices, _subslices, _l3) \
GEN8_FEATURES,   \
GEN10_HW_INFO,   \
+   .has_sample_with_hiz = true, \
.gt = _gt,   \
.num_slices = _slices,   \
.num_subslices = _subslices, \
diff --git a/src/intel/common/gen_device_info.h 
b/src/intel/common/gen_device_info.h
index 30ddd905be..fd9c17531d 100644
--- a/src/intel/common/gen_device_info.h
+++ b/src/intel/common/gen_device_info.h
@@ -55,7 +55,7 @@ struct gen_device_info
 
bool has_hiz_and_separate_stencil;
bool must_use_separate_stencil;
-
+   bool has_sample_with_hiz;
bool has_llc;
 
bool has_pln;
diff --git a/src/mesa/drivers/dri/i965/intel_mipmap_tree.c 
b/src/mesa/drivers/dri/i965/intel_mipmap_tree.c
index da5e3b0989..6d35c9d392 100644
--- a/src/mesa/drivers/dri/i965/intel_mipmap_tree.c
+++ b/src/mesa/drivers/dri/i965/intel_mipmap_tree.c
@@ -1911,10 +1911,7 @@ intel_miptree_sample_with_hiz(struct brw_context *brw,
 {
const struct gen_device_info *devinfo = &brw->screen->devinfo;
 
-   /* It's unclear how well supported sampling from the hiz buffer is on GEN8,
-* so keep things conservative for now and never enable it unless we're 
SKL+.
-*/
-   if (devinfo->gen < 9) {
+   if (!devinfo->has_sample_with_hiz) {
   return false;
}
 

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): i965/icl: Update the comment for maximum number of threads per PSD

2018-02-15 Thread Anuj Phogat
Module: Mesa
Branch: master
Commit: e9ad5c9a5d71e7c4312a1ad025b9e5a9c26a10f4
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=e9ad5c9a5d71e7c4312a1ad025b9e5a9c26a10f4

Author: Anuj Phogat 
Date:   Fri May  5 13:55:10 2017 -0700

i965/icl: Update the comment for maximum number of threads per PSD

Signed-off-by: Anuj Phogat 
Reviewed-by: Kenneth Graunke 

---

 src/intel/blorp/blorp_genX_exec.h | 9 +
 src/mesa/drivers/dri/i965/genX_state_upload.c | 9 +
 2 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/src/intel/blorp/blorp_genX_exec.h 
b/src/intel/blorp/blorp_genX_exec.h
index ec08b92aad..0fcb94f1c5 100644
--- a/src/intel/blorp/blorp_genX_exec.h
+++ b/src/intel/blorp/blorp_genX_exec.h
@@ -738,11 +738,12 @@ blorp_emit_ps_config(struct blorp_batch *batch,
 params->wm_prog_kernel + prog_data->prog_offset_2;
   }
 
-  /* 3DSTATE_PS expects the number of threads per PSD, which is always 64;
-   * it implicitly scales for different GT levels (which have some # of
-   * PSDs).
+  /* 3DSTATE_PS expects the number of threads per PSD, which is always 64
+   * for pre Gen11 and 128 for gen11+; On gen11+ If a programmed value is
+   * k, it implies 2(k+1) threads. It implicitly scales for different GT
+   * levels (which have some # of PSDs).
*
-   * In Gen8 the format is U8-2 whereas in Gen9 it is U8-1.
+   * In Gen8 the format is U8-2 whereas in Gen9+ it is U9-1.
*/
   if (GEN_GEN >= 9)
  ps.MaximumNumberofThreadsPerPSD = 64 - 1;
diff --git a/src/mesa/drivers/dri/i965/genX_state_upload.c 
b/src/mesa/drivers/dri/i965/genX_state_upload.c
index f1842b36c0..3cb8256807 100644
--- a/src/mesa/drivers/dri/i965/genX_state_upload.c
+++ b/src/mesa/drivers/dri/i965/genX_state_upload.c
@@ -3815,11 +3815,12 @@ genX(upload_ps)(struct brw_context *brw)
   ps.SampleMask = genX(determine_sample_mask(brw));
 #endif
 
-  /* 3DSTATE_PS expects the number of threads per PSD, which is always 64;
-   * it implicitly scales for different GT levels (which have some # of
-   * PSDs).
+  /* 3DSTATE_PS expects the number of threads per PSD, which is always 64
+   * for pre Gen11 and 128 for gen11+; On gen11+ If a programmed value is
+   * k, it implies 2(k+1) threads. It implicitly scales for different GT
+   * levels (which have some # of PSDs).
*
-   * In Gen8 the format is U8-2 whereas in Gen9 it is U8-1.
+   * In Gen8 the format is U8-2 whereas in Gen9+ it is U9-1.
*/
 #if GEN_GEN >= 9
   ps.MaximumNumberofThreadsPerPSD = 64 - 1;

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): i965/icl: Add assertions to check dispatch mode is SIMD8

2018-02-15 Thread Anuj Phogat
Module: Mesa
Branch: master
Commit: 9c144dc81e11658c868867052d14d60cca55a641
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=9c144dc81e11658c868867052d14d60cca55a641

Author: Anuj Phogat 
Date:   Tue Feb  6 16:47:04 2018 -0800

i965/icl: Add assertions to check dispatch mode is SIMD8

SIMD4x2 dispatch mode has been removed in GEN11. We're not using
it anyways in Mesa. Adding few asserts to make it explicit.

Use GEN_GEN macro in place of devinfo->gen (Ken)

Signed-off-by: Anuj Phogat 
Reviewed-by: Kenneth Graunke 

---

 src/intel/blorp/blorp_genX_exec.h | 2 ++
 src/mesa/drivers/dri/i965/genX_state_upload.c | 5 +
 2 files changed, 7 insertions(+)

diff --git a/src/intel/blorp/blorp_genX_exec.h 
b/src/intel/blorp/blorp_genX_exec.h
index 0fcb94f1c5..737720a70c 100644
--- a/src/intel/blorp/blorp_genX_exec.h
+++ b/src/intel/blorp/blorp_genX_exec.h
@@ -572,6 +572,8 @@ blorp_emit_vs_config(struct blorp_batch *batch,
  const struct blorp_params *params)
 {
struct brw_vs_prog_data *vs_prog_data = params->vs_prog_data;
+   assert(!vs_prog_data || GEN_GEN < 11 ||
+  vs_prog_data->base.dispatch_mode == DISPATCH_MODE_SIMD8);
 
blorp_emit(batch, GENX(3DSTATE_VS), vs) {
   if (vs_prog_data) {
diff --git a/src/mesa/drivers/dri/i965/genX_state_upload.c 
b/src/mesa/drivers/dri/i965/genX_state_upload.c
index b171c4f171..8668abd591 100644
--- a/src/mesa/drivers/dri/i965/genX_state_upload.c
+++ b/src/mesa/drivers/dri/i965/genX_state_upload.c
@@ -2050,6 +2050,8 @@ genX(upload_vs_state)(struct brw_context *brw)
 
assert(vue_prog_data->dispatch_mode == DISPATCH_MODE_SIMD8 ||
   vue_prog_data->dispatch_mode == DISPATCH_MODE_4X2_DUAL_OBJECT);
+   assert(GEN_GEN < 11 ||
+  vue_prog_data->dispatch_mode == DISPATCH_MODE_SIMD8);
 
 #if GEN_GEN == 6
/* From the BSpec, 3D Pipeline > Geometry > Vertex Shader > State,
@@ -3967,6 +3969,9 @@ genX(upload_ds_state)(struct brw_context *brw)
if (!tes_prog_data) {
   brw_batch_emit(brw, GENX(3DSTATE_DS), ds);
} else {
+  assert(GEN_GEN < 11 ||
+ vue_prog_data->dispatch_mode == DISPATCH_MODE_SIMD8);
+
   brw_batch_emit(brw, GENX(3DSTATE_DS), ds) {
  INIT_THREAD_DISPATCH_FIELDS(ds, Patch);
 

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): intel/genxml/icl: Update genx_bits header

2018-02-15 Thread Anuj Phogat
Module: Mesa
Branch: master
Commit: c68ede0be765be882795ea23e4deac4539cf9b98
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=c68ede0be765be882795ea23e4deac4539cf9b98

Author: Anuj Phogat 
Date:   Tue May 16 16:47:07 2017 -0700

intel/genxml/icl: Update genx_bits header

Signed-off-by: Anuj Phogat 
Reviewed-by: Kenneth Graunke 

---

 src/intel/genxml/gen_bits_header.py | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/intel/genxml/gen_bits_header.py 
b/src/intel/genxml/gen_bits_header.py
index 1b3504073b..965a74ed89 100644
--- a/src/intel/genxml/gen_bits_header.py
+++ b/src/intel/genxml/gen_bits_header.py
@@ -80,6 +80,7 @@ static inline uint32_t ATTRIBUTE_PURE
 ${item.token_name}_${prop}(const struct gen_device_info *devinfo)
 {
switch (devinfo->gen) {
+   case 11: return ${item.get_prop(prop, 11)};
case 10: return ${item.get_prop(prop, 10)};
case 9: return ${item.get_prop(prop, 9)};
case 8: return ${item.get_prop(prop, 8)};

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): i965/icl: Define and use icl mocs settings

2018-02-15 Thread Anuj Phogat
Module: Mesa
Branch: master
Commit: d6b26649a6af8dee47a28b98df457b995e946722
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=d6b26649a6af8dee47a28b98df457b995e946722

Author: Anuj Phogat 
Date:   Wed May 10 10:49:04 2017 -0700

i965/icl: Define and use icl mocs settings

Gen11 MOCS settings are duplicate of Gen10 MOCS settings.

Signed-off-by: Anuj Phogat 
Reviewed-by: Kenneth Graunke 

---

 src/mesa/drivers/dri/i965/brw_state.h| 6 ++
 src/mesa/drivers/dri/i965/brw_wm_surface_state.c | 2 ++
 src/mesa/drivers/dri/i965/genX_state_upload.c| 4 +++-
 3 files changed, 11 insertions(+), 1 deletion(-)

diff --git a/src/mesa/drivers/dri/i965/brw_state.h 
b/src/mesa/drivers/dri/i965/brw_state.h
index dd3c3c36d2..9acb625740 100644
--- a/src/mesa/drivers/dri/i965/brw_state.h
+++ b/src/mesa/drivers/dri/i965/brw_state.h
@@ -386,6 +386,12 @@ void gen11_init_atoms(struct brw_context *brw);
 /* TC=LLC/eLLC, LeCC=PTE, LRUM=3, L3CC=WB */
 #define CNL_MOCS_PTE (1 << 1)
 
+/* Ice Lake uses same MOCS settings as Cannonlake */
+/* TC=LLC/eLLC, LeCC=WB, LRUM=3, L3CC=WB */
+#define ICL_MOCS_WB  (2 << 1)
+/* TC=LLC/eLLC, LeCC=PTE, LRUM=3, L3CC=WB */
+#define ICL_MOCS_PTE (1 << 1)
+
 uint32_t brw_get_bo_mocs(const struct gen_device_info *devinfo,
  struct brw_bo *bo);
 
diff --git a/src/mesa/drivers/dri/i965/brw_wm_surface_state.c 
b/src/mesa/drivers/dri/i965/brw_wm_surface_state.c
index 92ac1e45a3..44c87df17d 100644
--- a/src/mesa/drivers/dri/i965/brw_wm_surface_state.c
+++ b/src/mesa/drivers/dri/i965/brw_wm_surface_state.c
@@ -60,6 +60,7 @@ uint32_t wb_mocs[] = {
[8] = BDW_MOCS_WB,
[9] = SKL_MOCS_WB,
[10] = CNL_MOCS_WB,
+   [11] = ICL_MOCS_WB,
 };
 
 uint32_t pte_mocs[] = {
@@ -67,6 +68,7 @@ uint32_t pte_mocs[] = {
[8] = BDW_MOCS_PTE,
[9] = SKL_MOCS_PTE,
[10] = CNL_MOCS_PTE,
+   [11] = ICL_MOCS_PTE,
 };
 
 uint32_t
diff --git a/src/mesa/drivers/dri/i965/genX_state_upload.c 
b/src/mesa/drivers/dri/i965/genX_state_upload.c
index 3cb8256807..b171c4f171 100644
--- a/src/mesa/drivers/dri/i965/genX_state_upload.c
+++ b/src/mesa/drivers/dri/i965/genX_state_upload.c
@@ -334,7 +334,9 @@ genX(emit_vertex_buffer_state)(struct brw_context *brw,
 #endif
 #endif
 
-#if GEN_GEN == 10
+#if GEN_GEN == 11
+  .VertexBufferMOCS = ICL_MOCS_WB,
+#elif GEN_GEN == 10
   .VertexBufferMOCS = CNL_MOCS_WB,
 #elif GEN_GEN == 9
   .VertexBufferMOCS = SKL_MOCS_WB,

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): i965/icl: Build and use gen11 functions for genxml state-upload and blorp

2018-02-15 Thread Anuj Phogat
Module: Mesa
Branch: master
Commit: 93f601d7ed13d65394d8bdcc385f596bfa180ddf
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=93f601d7ed13d65394d8bdcc385f596bfa180ddf

Author: Anuj Phogat 
Date:   Thu Jul 20 16:00:36 2017 -0700

i965/icl: Build and use gen11 functions for genxml state-upload and blorp

Signed-off-by: Anuj Phogat 
Reviewed-by: Kenneth Graunke 
Reviewed-by: Dylan Baker 

---

 src/mesa/drivers/dri/i965/Android.mk | 24 +++-
 src/mesa/drivers/dri/i965/Makefile.am|  6 +-
 src/mesa/drivers/dri/i965/Makefile.sources   |  4 
 src/mesa/drivers/dri/i965/brw_blorp.c|  4 
 src/mesa/drivers/dri/i965/brw_blorp.h|  2 ++
 src/mesa/drivers/dri/i965/brw_state.h|  1 +
 src/mesa/drivers/dri/i965/brw_state_upload.c |  4 +++-
 src/mesa/drivers/dri/i965/meson.build|  2 +-
 8 files changed, 43 insertions(+), 4 deletions(-)

diff --git a/src/mesa/drivers/dri/i965/Android.mk 
b/src/mesa/drivers/dri/i965/Android.mk
index 39aa33fa9f..83959cbf6c 100644
--- a/src/mesa/drivers/dri/i965/Android.mk
+++ b/src/mesa/drivers/dri/i965/Android.mk
@@ -48,7 +48,8 @@ I965_PERGEN_LIBS := \
libmesa_i965_gen75 \
libmesa_i965_gen8 \
libmesa_i965_gen9 \
-   libmesa_i965_gen10
+   libmesa_i965_gen10 \
+   libmesa_i965_gen11
 
 # ---
 # Build libmesa_i965_gen4
@@ -240,6 +241,27 @@ include $(MESA_COMMON_MK)
 include $(BUILD_STATIC_LIBRARY)
 
 # ---
+# Build libmesa_i965_gen11
+# ---
+
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := libmesa_i965_gen11
+
+LOCAL_C_INCLUDES := $(I965_PERGEN_COMMON_INCLUDES)
+
+LOCAL_SRC_FILES := $(i965_gen11_FILES)
+
+LOCAL_SHARED_LIBRARIES := $(I965_PERGEN_SHARED_LIBRARIES)
+
+LOCAL_STATIC_LIBRARIES := $(I965_PERGEN_STATIC_LIBRARIES)
+
+LOCAL_CFLAGS := -DGEN_VERSIONx10=110
+
+include $(MESA_COMMON_MK)
+include $(BUILD_STATIC_LIBRARY)
+
+# ---
 # Build i965_dri
 # ---
 
diff --git a/src/mesa/drivers/dri/i965/Makefile.am 
b/src/mesa/drivers/dri/i965/Makefile.am
index 79be769c9b..da56f67fa5 100644
--- a/src/mesa/drivers/dri/i965/Makefile.am
+++ b/src/mesa/drivers/dri/i965/Makefile.am
@@ -57,7 +57,8 @@ I965_PERGEN_LIBS = \
libi965_gen75.la \
libi965_gen8.la \
libi965_gen9.la \
-   libi965_gen10.la
+   libi965_gen10.la \
+   libi965_gen11.la
 
 libi965_gen4_la_SOURCES = $(i965_gen4_FILES)
 libi965_gen4_la_CFLAGS = $(AM_CFLAGS) -DGEN_VERSIONx10=40
@@ -86,6 +87,9 @@ libi965_gen9_la_CFLAGS = $(AM_CFLAGS) -DGEN_VERSIONx10=90
 libi965_gen10_la_SOURCES = $(i965_gen10_FILES)
 libi965_gen10_la_CFLAGS = $(AM_CFLAGS) -DGEN_VERSIONx10=100
 
+libi965_gen11_la_SOURCES = $(i965_gen11_FILES)
+libi965_gen11_la_CFLAGS = $(AM_CFLAGS) -DGEN_VERSIONx10=110
+
 noinst_LTLIBRARIES = \
libi965_dri.la \
$(I965_PERGEN_LIBS)
diff --git a/src/mesa/drivers/dri/i965/Makefile.sources 
b/src/mesa/drivers/dri/i965/Makefile.sources
index d928f71b43..def5ce701e 100644
--- a/src/mesa/drivers/dri/i965/Makefile.sources
+++ b/src/mesa/drivers/dri/i965/Makefile.sources
@@ -150,6 +150,10 @@ i965_gen10_FILES = \
genX_blorp_exec.c \
genX_state_upload.c
 
+i965_gen11_FILES = \
+   genX_blorp_exec.c \
+   genX_state_upload.c
+
 i965_oa_GENERATED_FILES = \
brw_oa_hsw.h \
brw_oa_hsw.c \
diff --git a/src/mesa/drivers/dri/i965/brw_blorp.c 
b/src/mesa/drivers/dri/i965/brw_blorp.c
index aa62abde9c..1d586e5ef3 100644
--- a/src/mesa/drivers/dri/i965/brw_blorp.c
+++ b/src/mesa/drivers/dri/i965/brw_blorp.c
@@ -106,6 +106,10 @@ brw_blorp_init(struct brw_context *brw)
case 10:
   brw->blorp.exec = gen10_blorp_exec;
   break;
+   case 11:
+  brw->blorp.exec = gen11_blorp_exec;
+  break;
+
default:
   unreachable("Invalid gen");
}
diff --git a/src/mesa/drivers/dri/i965/brw_blorp.h 
b/src/mesa/drivers/dri/i965/brw_blorp.h
index a2eeb3994a..551e1fcdcb 100644
--- a/src/mesa/drivers/dri/i965/brw_blorp.h
+++ b/src/mesa/drivers/dri/i965/brw_blorp.h
@@ -129,6 +129,8 @@ void gen9_blorp_exec(struct blorp_batch *batch,
  const struct blorp_params *params);
 void gen10_blorp_exec(struct blorp_batch *batch,
   const struct blorp_params *params);
+void gen11_blorp_exec(struct blorp_batch *batch,
+  const struct blorp_params *params);
 
 #ifdef __cplusplus
 } /* extern "C" */
diff --git a/src/mesa/drivers/dri/i965/brw_state.h 
b/src/mesa/drivers/dri/i965/brw_state.h
index d29ae6b972..dd3c3c36d2 100644
--- a/src/mesa/drivers/dri/i965/brw_state.h
+++ b/src/mesa/drivers/dri/i965/brw_state.h
@@ -334,6 +334,7 @@ void gen75_init_atoms(struct brw_context *brw);
 void gen8_init_atoms(struct brw_context *brw);
 void gen9_init_atoms(struct brw_context *brw);
 void gen10_init_atoms(struct brw_context *brw);
+void gen11_in

Mesa (master): i965/icl: Update the assert in brw_memory_barrier()

2018-02-15 Thread Anuj Phogat
Module: Mesa
Branch: master
Commit: 27d0034938a8cee86a5a85cc22f610b1afdc9530
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=27d0034938a8cee86a5a85cc22f610b1afdc9530

Author: Anuj Phogat 
Date:   Thu Jul 20 16:21:03 2017 -0700

i965/icl: Update the assert in brw_memory_barrier()

Nothing is changed here from gen10 to gen11. So, just update
the assert.

Signed-off-by: Anuj Phogat 
Reviewed-by: Kenneth Graunke 

---

 src/mesa/drivers/dri/i965/brw_program.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/mesa/drivers/dri/i965/brw_program.c 
b/src/mesa/drivers/dri/i965/brw_program.c
index 9aaffc37bd..a513499516 100644
--- a/src/mesa/drivers/dri/i965/brw_program.c
+++ b/src/mesa/drivers/dri/i965/brw_program.c
@@ -280,7 +280,7 @@ brw_memory_barrier(struct gl_context *ctx, GLbitfield 
barriers)
unsigned bits = (PIPE_CONTROL_DATA_CACHE_FLUSH |
 PIPE_CONTROL_NO_WRITE |
 PIPE_CONTROL_CS_STALL);
-   assert(devinfo->gen >= 7 && devinfo->gen <= 10);
+   assert(devinfo->gen >= 7 && devinfo->gen <= 11);
 
if (barriers & (GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT |
GL_ELEMENT_ARRAY_BARRIER_BIT |

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): i965/icl: Enable float blend optimization and Wa3DStateMode

2018-02-15 Thread Anuj Phogat
Module: Mesa
Branch: master
Commit: 3f8289164f6d910bdf62e4b55c6ccb22dec90417
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=3f8289164f6d910bdf62e4b55c6ccb22dec90417

Author: Anuj Phogat 
Date:   Fri Nov  3 14:48:29 2017 -0700

i965/icl: Enable float blend optimization and Wa3DStateMode

Signed-off-by: Anuj Phogat 
Reviewed-by: Kenneth Graunke 

---

 src/mesa/drivers/dri/i965/brw_state_upload.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/mesa/drivers/dri/i965/brw_state_upload.c 
b/src/mesa/drivers/dri/i965/brw_state_upload.c
index 2c8c0f4b27..86c12e4d35 100644
--- a/src/mesa/drivers/dri/i965/brw_state_upload.c
+++ b/src/mesa/drivers/dri/i965/brw_state_upload.c
@@ -62,7 +62,7 @@ brw_upload_initial_gpu_state(struct brw_context *brw)
 
brw_upload_invariant_state(brw);
 
-   if (devinfo->gen == 10) {
+   if (devinfo->gen == 10 || devinfo->gen == 11) {
   brw_load_register_imm32(brw, GEN10_CACHE_MODE_SS,
   REG_MASK(GEN10_FLOAT_BLEND_OPTIMIZATION_ENABLE) |
   GEN10_FLOAT_BLEND_OPTIMIZATION_ENABLE);

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): i965/icl: Add render target flush after uploading binding table

2018-02-15 Thread Anuj Phogat
Module: Mesa
Branch: master
Commit: 8a05b06146c005c0381b4784b4731e7dee8484aa
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=8a05b06146c005c0381b4784b4731e7dee8484aa

Author: Anuj Phogat 
Date:   Wed Jan 17 14:33:17 2018 -0800

i965/icl: Add render target flush after uploading binding table

From PIPE_CONTROL command description in gfxspecs:

"Whenever a Binding Table Index (BTI) used by a Render Taget Message
 points to a different RENDER_SURFACE_STATE, SW must issue a Render
 Target Cache Flush by enabling this bit. When render target flush
 is set due to new association of BTI, PS Scoreboard Stall bit must
 be set in this packet."

V2: Move the PIPE_CONTROL to update_renderbuffer_surfaces() in
brw_wm_surface_state.c (Ken).

Fixes a fulsim error and a GPU hang described in below JIRA.
JIRA: MD5-322
Signed-off-by: Anuj Phogat 
Reviewed-by: Kenneth Graunke 

---

 src/mesa/drivers/dri/i965/brw_wm_surface_state.c | 14 ++
 1 file changed, 14 insertions(+)

diff --git a/src/mesa/drivers/dri/i965/brw_wm_surface_state.c 
b/src/mesa/drivers/dri/i965/brw_wm_surface_state.c
index 44c87df17d..a5424ae320 100644
--- a/src/mesa/drivers/dri/i965/brw_wm_surface_state.c
+++ b/src/mesa/drivers/dri/i965/brw_wm_surface_state.c
@@ -971,6 +971,20 @@ update_renderbuffer_surfaces(struct brw_context *brw)
   emit_null_surface_state(brw, fb, &surf_offsets[rt_start]);
}
 
+   /* The PIPE_CONTROL command description says:
+*
+* "Whenever a Binding Table Index (BTI) used by a Render Taget Message
+*  points to a different RENDER_SURFACE_STATE, SW must issue a Render
+*  Target Cache Flush by enabling this bit. When render target flush
+*  is set due to new association of BTI, PS Scoreboard Stall bit must
+*  be set in this packet."
+   */
+   if (devinfo->gen >= 11) {
+  brw_emit_pipe_control_flush(brw,
+  PIPE_CONTROL_RENDER_TARGET_FLUSH |
+  PIPE_CONTROL_STALL_AT_SCOREBOARD);
+   }
+
brw->ctx.NewDriverState |= BRW_NEW_SURFACES;
 }
 

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): intel/genxml/icl: Add gen11.xml

2018-02-15 Thread Anuj Phogat
Module: Mesa
Branch: master
Commit: 7ed27d8cbf2febbe69ce1586d5d67c1bba126bc7
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=7ed27d8cbf2febbe69ce1586d5d67c1bba126bc7

Author: Anuj Phogat 
Date:   Thu Feb 15 10:39:00 2018 -0800

intel/genxml/icl: Add gen11.xml

Signed-off-by: Anuj Phogat 
Reviewed-by: Kenneth Graunke 
Reviewed-by: Emil Velikov 

---

 src/intel/genxml/gen11.xml | 3765 
 1 file changed, 3765 insertions(+)

Diff:   
http://cgit.freedesktop.org/mesa/mesa/diff/?id=7ed27d8cbf2febbe69ce1586d5d67c1bba126bc7
___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): i965/icl: Update switch statements

2018-02-15 Thread Anuj Phogat
Module: Mesa
Branch: master
Commit: 02e91b6d62b121d7bd8574d708ea3aa826eaadab
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=02e91b6d62b121d7bd8574d708ea3aa826eaadab

Author: Anuj Phogat 
Date:   Fri Aug 18 12:11:38 2017 -0700

i965/icl: Update switch statements

Signed-off-by: Anuj Phogat 
Reviewed-by: Kenneth Graunke 

---

 src/mesa/drivers/dri/i965/brw_formatquery.c | 1 +
 src/mesa/drivers/dri/i965/intel_screen.c| 1 +
 2 files changed, 2 insertions(+)

diff --git a/src/mesa/drivers/dri/i965/brw_formatquery.c 
b/src/mesa/drivers/dri/i965/brw_formatquery.c
index 4f3b9e467b..0599184802 100644
--- a/src/mesa/drivers/dri/i965/brw_formatquery.c
+++ b/src/mesa/drivers/dri/i965/brw_formatquery.c
@@ -38,6 +38,7 @@ brw_query_samples_for_format(struct gl_context *ctx, GLenum 
target,
(void) internalFormat;
 
switch (devinfo->gen) {
+   case 11:
case 10:
case 9:
   samples[0] = 16;
diff --git a/src/mesa/drivers/dri/i965/intel_screen.c 
b/src/mesa/drivers/dri/i965/intel_screen.c
index 1c0fffa2e9..cc9b348674 100644
--- a/src/mesa/drivers/dri/i965/intel_screen.c
+++ b/src/mesa/drivers/dri/i965/intel_screen.c
@@ -2251,6 +2251,7 @@ set_max_gl_versions(struct intel_screen *screen)
const bool has_astc = screen->devinfo.gen >= 9;
 
switch (screen->devinfo.gen) {
+   case 11:
case 10:
case 9:
case 8:

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): intel/icl: Do StateCacheInvalidation for indirect clear color

2018-02-15 Thread Anuj Phogat
Module: Mesa
Branch: master
Commit: 772a75be46788c5359c03f875cb0af4bbaa411d2
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=772a75be46788c5359c03f875cb0af4bbaa411d2

Author: Anuj Phogat 
Date:   Tue Jun 27 14:46:26 2017 -0700

intel/icl: Do StateCacheInvalidation for indirect clear color

StateCacheInvalidation is required on all gen7+ platforms. We
don't need to update this check for every new gen h/w unless
this requirement is changed. So, dropping the check for latest
gen h/w.

Signed-off-by: Anuj Phogat 
Reviewed-by: Kenneth Graunke 

---

 src/intel/blorp/blorp_genX_exec.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/intel/blorp/blorp_genX_exec.h 
b/src/intel/blorp/blorp_genX_exec.h
index 5e1312aa30..ec08b92aad 100644
--- a/src/intel/blorp/blorp_genX_exec.h
+++ b/src/intel/blorp/blorp_genX_exec.h
@@ -1391,7 +1391,7 @@ blorp_emit_surface_states(struct blorp_batch *batch,
   }
}
 
-#if GEN_GEN >= 7 && GEN_GEN <= 10
+#if GEN_GEN >= 7
if (has_indirect_clear_color) {
   /* Updating a surface state object may require that the state cache be
* invalidated. From the SKL PRM, Shared Functions -> State -> State

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): i965: Drop EXEC_OBJECT_CAPTURE defines.

2018-02-15 Thread Kenneth Graunke
Module: Mesa
Branch: master
Commit: 4dee8f0548e5ace53fede421e4d97ff840ca287c
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=4dee8f0548e5ace53fede421e4d97ff840ca287c

Author: Kenneth Graunke 
Date:   Mon Feb 12 07:14:22 2018 -0800

i965: Drop EXEC_OBJECT_CAPTURE defines.

These only existed to avoid making people update libdrm for new uABI
headers.  A while ago we imported those headers into the Mesa repo,
so the dependency is gone and these are no longer useful.

Reviewed-by: Jason Ekstrand 

---

 src/mesa/drivers/dri/i965/brw_bufmgr.h | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/src/mesa/drivers/dri/i965/brw_bufmgr.h 
b/src/mesa/drivers/dri/i965/brw_bufmgr.h
index a3745d6667..005ff19798 100644
--- a/src/mesa/drivers/dri/i965/brw_bufmgr.h
+++ b/src/mesa/drivers/dri/i965/brw_bufmgr.h
@@ -120,9 +120,6 @@ struct brw_bo {
int refcount;
const char *name;
 
-#ifndef EXEC_OBJECT_CAPTURE
-#define EXEC_OBJECT_CAPTURE(1<<7)
-#endif
uint64_t kflags;
 
/**

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): clover: Fix build after llvm r325155 and r325160

2018-02-15 Thread Jan Vesely
Module: Mesa
Branch: master
Commit: 78673b614b01a8a416367db23937743c0e1aaa36
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=78673b614b01a8a416367db23937743c0e1aaa36

Author: Jan Vesely 
Date:   Thu Feb 15 14:00:38 2018 -0500

clover: Fix build after llvm r325155 and r325160

r325155 ("Pass a reference to a module to the bitcode writer.")
and
r325160 ("Pass module reference to CloneModule")

change function interface from pointer to reference.

v2: Fix indentation (tab instead of spaces)

Signed-off-by: Jan Vesely 
Reviewed-by: Francisco Jerez 

---

 .../state_trackers/clover/llvm/codegen/bitcode.cpp |  2 +-
 .../state_trackers/clover/llvm/codegen/native.cpp  |  2 +-
 src/gallium/state_trackers/clover/llvm/compat.hpp  | 28 ++
 3 files changed, 30 insertions(+), 2 deletions(-)

diff --git a/src/gallium/state_trackers/clover/llvm/codegen/bitcode.cpp 
b/src/gallium/state_trackers/clover/llvm/codegen/bitcode.cpp
index 679ecd8758..40bb426218 100644
--- a/src/gallium/state_trackers/clover/llvm/codegen/bitcode.cpp
+++ b/src/gallium/state_trackers/clover/llvm/codegen/bitcode.cpp
@@ -66,7 +66,7 @@ namespace {
emit_code(const ::llvm::Module &mod) {
   ::llvm::SmallVector data;
   ::llvm::raw_svector_ostream os { data };
-  WriteBitcodeToFile(&mod, os);
+  compat::write_bitcode_to_file(mod, os);
   return { os.str().begin(), os.str().end() };
}
 }
diff --git a/src/gallium/state_trackers/clover/llvm/codegen/native.cpp 
b/src/gallium/state_trackers/clover/llvm/codegen/native.cpp
index 12c83a92b6..409f8ac32f 100644
--- a/src/gallium/state_trackers/clover/llvm/codegen/native.cpp
+++ b/src/gallium/state_trackers/clover/llvm/codegen/native.cpp
@@ -156,7 +156,7 @@ clover::llvm::print_module_native(const ::llvm::Module &mod,
   const target &target) {
std::string log;
try {
-  std::unique_ptr< ::llvm::Module> cmod { CloneModule(&mod) };
+  std::unique_ptr< ::llvm::Module> cmod { compat::clone_module(mod) };
   return as_string(emit_code(*cmod, target,
  TargetMachine::CGFT_AssemblyFile, log));
} catch (...) {
diff --git a/src/gallium/state_trackers/clover/llvm/compat.hpp 
b/src/gallium/state_trackers/clover/llvm/compat.hpp
index 6fc75fb250..19528a0133 100644
--- a/src/gallium/state_trackers/clover/llvm/compat.hpp
+++ b/src/gallium/state_trackers/clover/llvm/compat.hpp
@@ -36,9 +36,17 @@
 
 #include "util/algorithm.hpp"
 
+#if HAVE_LLVM < 0x0400
+#include 
+#else
+#include 
+#include 
+#endif
+
 #include 
 #include 
 #include 
+#include 
 #include 
 #if HAVE_LLVM >= 0x0400
 #include 
@@ -217,6 +225,26 @@ namespace clover {
ctx.setDiagnosticHandler(diagnostic_handler, data);
 #endif
 }
+
+   inline std::unique_ptr< ::llvm::Module>
+   clone_module(const ::llvm::Module &mod)
+   {
+#if HAVE_LLVM >= 0x0700
+   return ::llvm::CloneModule(mod);
+#else
+   return ::llvm::CloneModule(&mod);
+#endif
+   }
+
+   template void
+   write_bitcode_to_file(const ::llvm::Module &mod, T &os)
+   {
+#if HAVE_LLVM >= 0x0700
+   ::llvm::WriteBitcodeToFile(mod, os);
+#else
+   ::llvm::WriteBitcodeToFile(&mod, os);
+#endif
+   }
   }
}
 }

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): radv: Always lower indirect derefs after nir_lower_global_vars_to_local.

2018-02-15 Thread Bas Nieuwenhuizen
Module: Mesa
Branch: master
Commit: 05d84ed68add9e6adfcc602a274405e04226c1b7
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=05d84ed68add9e6adfcc602a274405e04226c1b7

Author: Bas Nieuwenhuizen 
Date:   Thu Feb 15 21:24:35 2018 +0100

radv: Always lower indirect derefs after nir_lower_global_vars_to_local.

Otherwise new local variables can cause hangs on vega.

CC: 
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=105098
Reviewed-by: Timothy Arceri 

---

 src/amd/vulkan/radv_pipeline.c | 11 +--
 src/amd/vulkan/radv_shader.c   | 74 +++---
 src/amd/vulkan/radv_shader.h   |  4 +++
 3 files changed, 53 insertions(+), 36 deletions(-)

diff --git a/src/amd/vulkan/radv_pipeline.c b/src/amd/vulkan/radv_pipeline.c
index 8f872e7c14..0d1958fc93 100644
--- a/src/amd/vulkan/radv_pipeline.c
+++ b/src/amd/vulkan/radv_pipeline.c
@@ -1525,9 +1525,16 @@ radv_link_shaders(struct radv_pipeline *pipeline, 
nir_shader **shaders)
   ordered_shaders[i - 
1]);
 
if (progress) {
-   nir_lower_global_vars_to_local(ordered_shaders[i]);
+   if (nir_lower_global_vars_to_local(ordered_shaders[i])) 
{
+   radv_lower_indirect_derefs(ordered_shaders[i],
+  
pipeline->device->physical_device);
+   }
radv_optimize_nir(ordered_shaders[i]);
-   nir_lower_global_vars_to_local(ordered_shaders[i - 1]);
+
+   if (nir_lower_global_vars_to_local(ordered_shaders[i - 
1])) {
+   radv_lower_indirect_derefs(ordered_shaders[i - 
1],
+  
pipeline->device->physical_device);
+   }
radv_optimize_nir(ordered_shaders[i - 1]);
}
}
diff --git a/src/amd/vulkan/radv_shader.c b/src/amd/vulkan/radv_shader.c
index 42f83bb335..d9b8e209a9 100644
--- a/src/amd/vulkan/radv_shader.c
+++ b/src/amd/vulkan/radv_shader.c
@@ -114,6 +114,45 @@ void radv_DestroyShaderModule(
vk_free2(&device->alloc, pAllocator, module);
 }
 
+bool
+radv_lower_indirect_derefs(struct nir_shader *nir,
+   struct radv_physical_device *device)
+{
+   /* While it would be nice not to have this flag, we are constrained
+* by the reality that LLVM 5.0 doesn't have working VGPR indexing
+* on GFX9.
+*/
+   bool llvm_has_working_vgpr_indexing =
+   device->rad_info.chip_class <= VI;
+
+   /* TODO: Indirect indexing of GS inputs is unimplemented.
+*
+* TCS and TES load inputs directly from LDS or offchip memory, so
+* indirect indexing is trivial.
+*/
+   nir_variable_mode indirect_mask = 0;
+   if (nir->info.stage == MESA_SHADER_GEOMETRY ||
+   (nir->info.stage != MESA_SHADER_TESS_CTRL &&
+nir->info.stage != MESA_SHADER_TESS_EVAL &&
+!llvm_has_working_vgpr_indexing)) {
+   indirect_mask |= nir_var_shader_in;
+   }
+   if (!llvm_has_working_vgpr_indexing &&
+   nir->info.stage != MESA_SHADER_TESS_CTRL)
+   indirect_mask |= nir_var_shader_out;
+
+   /* TODO: We shouldn't need to do this, however LLVM isn't currently
+* smart enough to handle indirects without causing excess spilling
+* causing the gpu to hang.
+*
+* See the following thread for more details of the problem:
+* https://lists.freedesktop.org/archives/mesa-dev/2017-July/162106.html
+*/
+   indirect_mask |= nir_var_local;
+
+   return nir_lower_indirect_derefs(nir, indirect_mask);
+}
+
 void
 radv_optimize_nir(struct nir_shader *shader)
 {
@@ -254,40 +293,6 @@ radv_shader_compile_to_nir(struct radv_device *device,
 
nir_shader_gather_info(nir, entry_point->impl);
 
-   /* While it would be nice not to have this flag, we are constrained
-* by the reality that LLVM 5.0 doesn't have working VGPR indexing
-* on GFX9.
-*/
-   bool llvm_has_working_vgpr_indexing =
-   device->physical_device->rad_info.chip_class <= VI;
-
-   /* TODO: Indirect indexing of GS inputs is unimplemented.
-*
-* TCS and TES load inputs directly from LDS or offchip memory, so
-* indirect indexing is trivial.
-*/
-   nir_variable_mode indirect_mask = 0;
-   if (nir->info.stage == MESA_SHADER_GEOMETRY ||
-   (nir->info.stage != MESA_SHADER_TESS_CTRL &&
-nir->info.stage != MESA_SHADER_TESS_EVAL &&
-!llvm_has_working_vgpr_indexing)) {
-   indirect_mask |= nir_var_shader_in;
-   }
-   if (!llvm_has_working_vgpr_indexing &&
-   nir->info.stage != MESA_SHADER_TESS_CTRL)
-   indirect_mask |= n

Mesa (master): meson: add libswdri and libswkmsdri to d3dadaptor link_with

2018-02-15 Thread Dylan Baker
Module: Mesa
Branch: master
Commit: be879f9f290c5277097ec82ffb7d8d2de2e2707a
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=be879f9f290c5277097ec82ffb7d8d2de2e2707a

Author: Dylan Baker 
Date:   Mon Feb 12 10:58:58 2018 -0800

meson: add libswdri and libswkmsdri to d3dadaptor link_with

v5: - Fix libswdi -> libswdri typo

Fixes: 6b4c7047d571 ("meson: build gallium nine state_tracker")
Signed-off-by: Dylan Baker 
Acked-by: Eric Engestrom 
Reviewed-by: Emil Velikov 

---

 src/gallium/targets/d3dadapter9/meson.build | 13 +++--
 1 file changed, 3 insertions(+), 10 deletions(-)

diff --git a/src/gallium/targets/d3dadapter9/meson.build 
b/src/gallium/targets/d3dadapter9/meson.build
index 5476e80e70..fd608be9bf 100644
--- a/src/gallium/targets/d3dadapter9/meson.build
+++ b/src/gallium/targets/d3dadapter9/meson.build
@@ -1,4 +1,5 @@
 # Copyright © 2017 Dylan Baker
+# Copyright © 2018 Intel Corporation
 
 # Permission is hereby granted, free of charge, to any person obtaining a copy
 # of this software and associated documentation files (the "Software"), to deal
@@ -31,20 +32,12 @@ gallium_nine_c_args = [
 ]
 gallium_nine_ld_args = []
 gallium_nine_link_depends = []
-gallium_nine_link_with = []
 
 if with_ld_version_script
   gallium_nine_ld_args += ['-Wl,--version-script', 
join_paths(meson.current_source_dir(), 'd3dadapter9.sym')]
   gallium_nine_link_depends += files('d3dadapter9.sym')
 endif
 
-if with_dri
-  gallium_nine_link_with += libswdri
-endif
-if with_gallium_drisw_kms
-  gallium_nine_link_with += libswkmsdri
-endif
-
 libgallium_nine = shared_library(
   'd3dadapter9',
   [files('description.c', 'getproc.c', 'drm.c'), xmlpool_options_h],
@@ -60,8 +53,8 @@ libgallium_nine = shared_library(
   link_depends : gallium_nine_link_depends,
   link_with : [
 libgalliumvl_stub, libgallium, libnine_st, libmesa_util, libddebug,
-librbug, libtrace, libpipe_loader_static, libws_null, libwsw,
-gallium_nine_link_with,
+librbug, libtrace, libpipe_loader_static, libws_null, libwsw, libswdri,
+libswkmsdri,
   ],
   dependencies : [
 dep_selinux, dep_expat, dep_libdrm, dep_llvm,

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): meson: link dri3 xcb libs into vlwinsys instead of into each target

2018-02-15 Thread Dylan Baker
Module: Mesa
Branch: master
Commit: 7023b373ec76a2ea25b1bd0a7501276de9007047
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=7023b373ec76a2ea25b1bd0a7501276de9007047

Author: Dylan Baker 
Date:   Wed Jan 17 10:26:58 2018 -0800

meson: link dri3 xcb libs into vlwinsys instead of into each target

This makes the dependencies easier to manage, since each media target
doesn't need to worry about linking to half a dozen libraries.

Fixes: b1b65397d0c4978e3 ("meson: Build gallium auxiliary")
Signed-off-by: Dylan Baker 
Acked-by: Eric Engestrom 
Reviewed-by: Emil Velikov 

---

 src/gallium/auxiliary/meson.build| 7 ++-
 src/gallium/targets/omx-bellagio/meson.build | 5 +
 src/gallium/targets/va/meson.build   | 6 +-
 src/gallium/targets/vdpau/meson.build| 3 +--
 src/gallium/targets/xa/meson.build   | 3 +--
 src/gallium/targets/xvmc/meson.build | 5 +
 6 files changed, 11 insertions(+), 18 deletions(-)

diff --git a/src/gallium/auxiliary/meson.build 
b/src/gallium/auxiliary/meson.build
index 6f1542d7ad..5908f9c430 100644
--- a/src/gallium/auxiliary/meson.build
+++ b/src/gallium/auxiliary/meson.build
@@ -452,10 +452,15 @@ files_libgalliumvl = files(
   'vl/vl_zscan.h',
 )
 
+vlwinsys_deps = []
 files_libgalliumvlwinsys = files('vl/vl_winsys.h')
 if with_dri2
   files_libgalliumvlwinsys += files('vl/vl_winsys_dri.c')
   if with_dri3
+vlwinsys_deps += [
+  dep_xcb_sync, dep_xcb_present, dep_xshmfence, dep_xcb_xfixes,
+  dep_xcb_dri3, 
+]
 files_libgalliumvlwinsys += files('vl/vl_winsys_dri3.c')
   endif
 endif
@@ -526,6 +531,6 @@ libgalliumvlwinsys = static_library(
   'galliumvlwinsys',
   files_libgalliumvlwinsys,
   include_directories : [inc_gallium, inc_include, inc_loader, inc_src],
-  dependencies : [dep_libdrm],
+  dependencies : [dep_libdrm, vlwinsys_deps],
   build_by_default : false,
 )
diff --git a/src/gallium/targets/omx-bellagio/meson.build 
b/src/gallium/targets/omx-bellagio/meson.build
index a3fba3f2e4..c9e8eb8fa5 100644
--- a/src/gallium/targets/omx-bellagio/meson.build
+++ b/src/gallium/targets/omx-bellagio/meson.build
@@ -44,10 +44,7 @@ libomx_gallium = shared_library(
 libpipe_loader_static, libws_null, libwsw,
   ],
   link_depends : omx_link_depends,
-  dependencies : [
-dep_xcb, dep_x11_xcb, dep_xcb_dri2, dep_xcb_dri3, dep_libdrm, dep_thread,
-driver_r600, driver_radeonsi, driver_nouveau,
-  ],
+  dependencies : [dep_thread, driver_r600, driver_radeonsi, driver_nouveau],
   install : true,
   install_dir : omx_drivers_path,
 )
diff --git a/src/gallium/targets/va/meson.build 
b/src/gallium/targets/va/meson.build
index 0ea0cd1c05..1e453c9f76 100644
--- a/src/gallium/targets/va/meson.build
+++ b/src/gallium/targets/va/meson.build
@@ -22,7 +22,6 @@
 # Static targets are always enabled in autotools (unless you modify
 # configure.ac)
 
-va_deps = []
 va_link_args = []
 va_link_depends = []
 va_drivers = []
@@ -31,9 +30,6 @@ if with_ld_version_script
   va_link_args += ['-Wl,--version-script', 
join_paths(meson.current_source_dir(), 'va.sym')]
   va_link_depends += files('va.sym')
 endif
-if with_platform_x11
-  va_deps += [dep_xcb, dep_x11_xcb, dep_xcb_dri2, dep_xcb_dri3]
-endif
 
 libva_gallium = shared_library(
   'gallium_drv_video',
@@ -49,7 +45,7 @@ libva_gallium = shared_library(
 libpipe_loader_static, libws_null, libwsw,
   ],
   dependencies : [
-dep_libdrm, dep_thread, va_deps, driver_r600, driver_radeonsi, 
driver_nouveau,
+dep_libdrm, dep_thread, driver_r600, driver_radeonsi, driver_nouveau,
   ],
   link_depends : va_link_depends,
   install : true,
diff --git a/src/gallium/targets/vdpau/meson.build 
b/src/gallium/targets/vdpau/meson.build
index 67f1469fb0..a03f0edfad 100644
--- a/src/gallium/targets/vdpau/meson.build
+++ b/src/gallium/targets/vdpau/meson.build
@@ -49,8 +49,7 @@ libvdpau_gallium = shared_library(
 libpipe_loader_static, libws_null, libwsw,
   ],
   dependencies : [
-dep_thread, dep_xcb, dep_x11_xcb, dep_xcb_dri2, dep_libdrm,
-driver_r300, driver_r600, driver_radeonsi, driver_nouveau,
+dep_thread, driver_r300, driver_r600, driver_radeonsi, driver_nouveau,
   ],
   link_depends : vdpau_link_depends,
 )
diff --git a/src/gallium/targets/xa/meson.build 
b/src/gallium/targets/xa/meson.build
index 8ff6486a5a..75808cd0a8 100644
--- a/src/gallium/targets/xa/meson.build
+++ b/src/gallium/targets/xa/meson.build
@@ -45,8 +45,7 @@ libxatracker = shared_library(
   ],
   link_depends : xa_link_depends,
   dependencies : [
-dep_xcb, dep_x11_xcb, dep_xcb_dri2, dep_xcb_dri3, dep_libdrm, dep_thread,
-driver_nouveau, driver_i915, driver_svga, driver_freedreno,
+dep_thread, driver_nouveau, driver_i915, driver_svga, driver_freedreno,
   ],
   install : true,
 )
diff --git a/src/gallium/targets/xvmc/meson.build 
b/src/gallium/targets/xvmc/meson.build
index 48759de910..07d6c729c9 100644
--- a/src/gallium/targets/xvmc/meson.build
+++ b/src/gallium/targets/x

Mesa (master): meson: add libswdri and libswkmsdri to dri link_with

2018-02-15 Thread Dylan Baker
Module: Mesa
Branch: master
Commit: 8eb608df61912cfd0633fe982b140e22e7563770
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=8eb608df61912cfd0633fe982b140e22e7563770

Author: Dylan Baker 
Date:   Mon Feb 12 11:03:47 2018 -0800

meson: add libswdri and libswkmsdri to dri link_with

Fixes: b154b44ae342 ("meson: build radeonsi gallium driver")
Signed-off-by: Dylan Baker 
Acked-by: Eric Engestrom 
Reviewed-by: Emil Velikov 

---

 src/gallium/targets/dri/meson.build | 11 ++-
 1 file changed, 2 insertions(+), 9 deletions(-)

diff --git a/src/gallium/targets/dri/meson.build 
b/src/gallium/targets/dri/meson.build
index 75ce94ab2c..a4326227f0 100644
--- a/src/gallium/targets/dri/meson.build
+++ b/src/gallium/targets/dri/meson.build
@@ -1,4 +1,5 @@
 # Copyright © 2017 Dylan Baker
+# Copyright © 2018 Intel Corporation
 
 # Permission is hereby granted, free of charge, to any person obtaining a copy
 # of this software and associated documentation files (the "Software"), to deal
@@ -29,7 +30,6 @@ gallium_dri_c_args = [
   '-DGALLIUME_TRACE',
 ]
 gallium_dri_ld_args = []
-gallium_dri_link_with = []
 gallium_dri_link_depends = []
 gallium_dri_drivers = []
 
@@ -42,13 +42,6 @@ if with_ld_dynamic_list
   gallium_dri_link_depends += files('../dri-vdpau.dyn')
 endif
 
-if with_dri
-  gallium_dri_link_with += libswdri
-endif
-if with_gallium_drisw_kms
-  gallium_dri_link_with += libswkmsdri
-endif
-
 libgallium_dri = shared_library(
   'gallium_dri',
   [files('target.c'), xmlpool_options_h],
@@ -63,7 +56,7 @@ libgallium_dri = shared_library(
   link_with : [
 libmesa_gallium, libdricommon, libmegadriver_stub, libdri, libgalliumvl,
 libgallium, libddebug, libnoop, librbug, libtrace, libglapi,
-libpipe_loader_static, libws_null, libwsw,  gallium_dri_link_with,
+libpipe_loader_static, libws_null, libwsw, libswdri, libswkmsdri,
   ],
   dependencies : [
 dep_selinux, dep_expat, dep_libdrm, dep_llvm, dep_thread,

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): meson: Fix omx-bellagio target linkage

2018-02-15 Thread Dylan Baker
Module: Mesa
Branch: master
Commit: 91a59b628745a1f77b446c85ab6163a50ebe2e55
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=91a59b628745a1f77b446c85ab6163a50ebe2e55

Author: Dylan Baker 
Date:   Wed Jan 17 10:12:19 2018 -0800

meson: Fix omx-bellagio target linkage

This needs to use --whole-archive (link_whole in meson) to properly
expose symbols.

v4: - Always add libswdri and libswkmsdri to link_with

Fixes: 1d36dc674d528b93b ("meson: build gallium omx state tracker")
Signed-off-by: Dylan Baker 
Acked-by: Eric Engestrom 
Reviewed-by: Emil Velikov 

---

 src/gallium/targets/omx-bellagio/meson.build | 7 ---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/src/gallium/targets/omx-bellagio/meson.build 
b/src/gallium/targets/omx-bellagio/meson.build
index c9e8eb8fa5..6811e6ff90 100644
--- a/src/gallium/targets/omx-bellagio/meson.build
+++ b/src/gallium/targets/omx-bellagio/meson.build
@@ -1,4 +1,4 @@
-# Copyright © 2017 Intel Corporation
+# Copyright © 2017-2018 Intel Corporation
 
 # Permission is hereby granted, free of charge, to any person obtaining a copy
 # of this software and associated documentation files (the "Software"), to deal
@@ -39,9 +39,10 @@ libomx_gallium = shared_library(
   include_directories : [
 inc_common, inc_util, inc_gallium_winsys, inc_gallium_drivers,
   ],
+  link_whole : [libomx_st],
   link_with : [
-libomx_st, libgalliumvlwinsys, libgalliumvl, libgallium, libmesa_util,
-libpipe_loader_static, libws_null, libwsw,
+libgalliumvlwinsys, libgalliumvl, libgallium, libmesa_util,
+libpipe_loader_static, libws_null, libwsw, libswdri, libswkmsdri,
   ],
   link_depends : omx_link_depends,
   dependencies : [dep_thread, driver_r600, driver_radeonsi, driver_nouveau],

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): meson: fix vdpau target linkage

2018-02-15 Thread Dylan Baker
Module: Mesa
Branch: master
Commit: 90d361753ce5a5e705adecbc68edaf7a6d0f51ee
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=90d361753ce5a5e705adecbc68edaf7a6d0f51ee

Author: Dylan Baker 
Date:   Thu Jan 11 09:22:24 2018 -0800

meson: fix vdpau target linkage

The VDPAU state tracker needs to be linked with whole-archive (autotools
does this). Because we are linking the whole archive we alos need to
link with libswdri and libswkmsdri if those have been enabled.

v4: - Always add libswdri and libswkmsdri to link_with list

Fixes: 68076b87474e7959 ("meson: build gallium vdpau state tracker")
Signed-off-by: Dylan Baker 
Acked-by: Eric Engestrom 
Reviewed-by: Emil Velikov 

---

 src/gallium/targets/vdpau/meson.build | 8 +---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/src/gallium/targets/vdpau/meson.build 
b/src/gallium/targets/vdpau/meson.build
index a03f0edfad..93969d8399 100644
--- a/src/gallium/targets/vdpau/meson.build
+++ b/src/gallium/targets/vdpau/meson.build
@@ -1,4 +1,4 @@
-# Copyright © 2017 Intel Corporation
+# Copyright © 2017-2018 Intel Corporation
 
 # Permission is hereby granted, free of charge, to any person obtaining a copy
 # of this software and associated documentation files (the "Software"), to deal
@@ -35,6 +35,7 @@ if with_ld_dynamic_list
   vdpau_link_depends += files('../dri-vdpau.dyn')
 endif
 
+
 libvdpau_gallium = shared_library(
   'vdpau_gallium',
   'target.c',
@@ -44,9 +45,10 @@ libvdpau_gallium = shared_library(
   include_directories : [
 inc_common, inc_util, inc_gallium_winsys, inc_gallium_drivers,
   ],
+  link_whole : [libvdpau_st],
   link_with : [
-libvdpau_st, libgalliumvlwinsys, libgalliumvl, libgallium, libmesa_util,
-libpipe_loader_static, libws_null, libwsw,
+libgalliumvlwinsys, libgalliumvl, libgallium, libmesa_util,
+libpipe_loader_static, libws_null, libwsw, libswdri, libswkmsdri,
   ],
   dependencies : [
 dep_thread, driver_r300, driver_r600, driver_radeonsi, driver_nouveau,

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): meson: Fix xa target linkage

2018-02-15 Thread Dylan Baker
Module: Mesa
Branch: master
Commit: 0b73c329bc024d94d85d4e0bf5e95cd8be635eb2
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=0b73c329bc024d94d85d4e0bf5e95cd8be635eb2

Author: Dylan Baker 
Date:   Wed Jan 17 10:12:19 2018 -0800

meson: Fix xa target linkage

This needs to use --whole-archive (link_whole in meson) to properly
expose symbols.

v4: - Always add libswdri and libswkmsdri to link_with list

Fixes: 0ba909f0f111824 ("meson: build gallium xa state tracker")
Signed-off-by: Dylan Baker 
Acked-by: Eric Engestrom 
Reviewed-by: Emil Velikov 

---

 src/gallium/targets/xa/meson.build | 8 +---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/src/gallium/targets/xa/meson.build 
b/src/gallium/targets/xa/meson.build
index 75808cd0a8..ea6e1296da 100644
--- a/src/gallium/targets/xa/meson.build
+++ b/src/gallium/targets/xa/meson.build
@@ -1,4 +1,4 @@
-# Copyright © 2017 Intel Corporation
+# Copyright © 2017-2018 Intel Corporation
 
 # Permission is hereby granted, free of charge, to any person obtaining a copy
 # of this software and associated documentation files (the "Software"), to deal
@@ -30,6 +30,7 @@ if with_ld_version_script
   xa_link_depends += files('xa.sym')
 endif
 
+
 libxatracker = shared_library(
   'xatracker',
   'target.c',
@@ -39,9 +40,10 @@ libxatracker = shared_library(
   include_directories : [
 inc_common, inc_util, inc_gallium_winsys, inc_gallium_drivers,
   ],
+  link_whole : [libxa_st],
   link_with : [
-libxa_st, libgalliumvl_stub, libgallium, libmesa_util,
-libpipe_loader_static, libws_null, libwsw,
+libgalliumvl_stub, libgallium, libmesa_util, libpipe_loader_static,
+libws_null, libwsw, libswdri, libswkmsdri,
   ],
   link_depends : xa_link_depends,
   dependencies : [

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): meson: use va-api version reported by pkg-config

2018-02-15 Thread Dylan Baker
Module: Mesa
Branch: master
Commit: 424e654cb02182c00d1b76c512a8fe17af281e4b
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=424e654cb02182c00d1b76c512a8fe17af281e4b

Author: Dylan Baker 
Date:   Thu Jan 18 10:03:24 2018 -0800

meson: use va-api version reported by pkg-config

Fixes: 5a785d51a6d6 ("meson: build gallium va state tracker")
Signed-off-by: Dylan Baker 
Acked-by: Eric Engestrom 
Reviewed-by: Emil Velikov 

---

 meson.build   | 2 +-
 src/gallium/state_trackers/va/meson.build | 6 +++---
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/meson.build b/meson.build
index b39e2f8ab9..570c5080ad 100644
--- a/meson.build
+++ b/meson.build
@@ -546,7 +546,7 @@ with_gallium_va = _va == 'true'
 dep_va = []
 if with_gallium_va
   dep_va = dependency('libva', version : '>= 0.38.0')
-  dep_va = declare_dependency(
+  dep_va_headers = declare_dependency(
 compile_args : run_command(prog_pkgconfig, ['libva', 
'--cflags']).stdout().split()
   )
 endif
diff --git a/src/gallium/state_trackers/va/meson.build 
b/src/gallium/state_trackers/va/meson.build
index bddd5ef6a6..deb1127483 100644
--- a/src/gallium/state_trackers/va/meson.build
+++ b/src/gallium/state_trackers/va/meson.build
@@ -1,4 +1,4 @@
-# Copyright © 2017 Intel Corporation
+# Copyright © 2017-2018 Intel Corporation
 
 # Permission is hereby granted, free of charge, to any person obtaining a copy
 # of this software and associated documentation files (the "Software"), to deal
@@ -18,7 +18,7 @@
 # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 # SOFTWARE.
 
-libva_version = ['2', '3', '0']
+libva_version = dep_va.version().split('.')
 
 libva_st = static_library(
   'va_st',
@@ -35,5 +35,5 @@ libva_st = static_library(
 ),
   ],
   include_directories : [inc_common],
-  dependencies : [dep_va, dep_x11_xcb, dep_xcb, dep_xcb_dri2, dep_xcb_dri3],
+  dependencies : [dep_va_headers, dep_x11_xcb, dep_xcb, dep_xcb_dri2, 
dep_xcb_dri3],
 )

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): meson: fix va target linkage

2018-02-15 Thread Dylan Baker
Module: Mesa
Branch: master
Commit: 2e4be28fb2a256c423485cc99b1250b2d3c92da6
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=2e4be28fb2a256c423485cc99b1250b2d3c92da6

Author: Dylan Baker 
Date:   Wed Jan 17 09:49:55 2018 -0800

meson: fix va target linkage

The state tracker needs to be linked with whole-archive (like
autotools). As a result there are symbols from libswdri and libswkmsdri
that are needed, so link those as well.

v4: - Always add libswdri and libswkmsdri to link_with list

Fixes: 5a785d51a6d6 ("meson: build gallium va state tracker")
Signed-off-by: Dylan Baker 
Acked-by: Eric Engestrom 
Reviewed-by: Emil Velikov 

---

 src/gallium/targets/va/meson.build | 7 ---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/src/gallium/targets/va/meson.build 
b/src/gallium/targets/va/meson.build
index 1e453c9f76..57d267e5b6 100644
--- a/src/gallium/targets/va/meson.build
+++ b/src/gallium/targets/va/meson.build
@@ -1,4 +1,4 @@
-# Copyright © 2017 Intel Corporation
+# Copyright © 2017-2018 Intel Corporation
 
 # Permission is hereby granted, free of charge, to any person obtaining a copy
 # of this software and associated documentation files (the "Software"), to deal
@@ -40,9 +40,10 @@ libva_gallium = shared_library(
   include_directories : [
 inc_common, inc_util, inc_gallium_winsys, inc_gallium_drivers,
   ],
+  link_whole : [libva_st],
   link_with : [
-libva_st, libgalliumvlwinsys, libgalliumvl, libgallium, libmesa_util,
-libpipe_loader_static, libws_null, libwsw,
+libgalliumvlwinsys, libgalliumvl, libgallium, libmesa_util,
+libpipe_loader_static, libws_null, libwsw, libswdri, libswkmsdri,
   ],
   dependencies : [
 dep_libdrm, dep_thread, driver_r600, driver_radeonsi, driver_nouveau,

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): meson: Actually link xvmc target with libxvmc

2018-02-15 Thread Dylan Baker
Module: Mesa
Branch: master
Commit: 340305576840c2a432202f1ace9279f490d87e59
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=340305576840c2a432202f1ace9279f490d87e59

Author: Dylan Baker 
Date:   Thu Feb  1 16:09:02 2018 -0800

meson: Actually link xvmc target with libxvmc

Unlike vdpau this is required.

Fixes: 22a817af8a89eb3c7 ("meson: build gallium xvmc state tracker")
Signed-off-by: Dylan Baker 
Acked-by: Eric Engestrom 
Reviewed-by: Emil Velikov 

---

 meson.build | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/meson.build b/meson.build
index b5fa5a823c..3925ec483e 100644
--- a/meson.build
+++ b/meson.build
@@ -452,9 +452,6 @@ with_gallium_xvmc = _xvmc == 'true'
 dep_xvmc = []
 if with_gallium_xvmc
   dep_xvmc = dependency('xvmc', version : '>= 1.0.6')
-  dep_xvmc = declare_dependency(
-compile_args : run_command(prog_pkgconfig, ['xvmc', 
'--cflags']).stdout().split()
-  )
 endif
 
 xvmc_drivers_path = get_option('xvmc-libs-path')

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): meson: define empty variables for libswdri and libswkmsdri

2018-02-15 Thread Dylan Baker
Module: Mesa
Branch: master
Commit: d672084ba29a64f5ec8c9cd23d4b77c0efa05693
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=d672084ba29a64f5ec8c9cd23d4b77c0efa05693

Author: Dylan Baker 
Date:   Mon Feb 12 10:46:06 2018 -0800

meson: define empty variables for libswdri and libswkmsdri

This allows these variables to unconditionally included in `link_with`
lists, even if they're not used. This allows deleting duplicated logic
in nearly every gallium target implemented in meson today. This also
removes the now useless `build_by_default` flag from swdri and swkmsdri.

v4: - add this patch

Fixes: 66c94b9313a697ce8f2b222f4ba353035e4b8726
   ("meson: build gallium winsys for dri, null, and wrapper")
Signed-off-by: Dylan Baker 
Acked-by: Eric Engestrom 
Reviewed-by: Emil Velikov 

---

 src/gallium/meson.build   | 12 ++--
 src/gallium/winsys/sw/dri/meson.build |  2 +-
 src/gallium/winsys/sw/kms-dri/meson.build |  3 +--
 3 files changed, 12 insertions(+), 5 deletions(-)

diff --git a/src/gallium/meson.build b/src/gallium/meson.build
index 6330c7514a..d05e67630c 100644
--- a/src/gallium/meson.build
+++ b/src/gallium/meson.build
@@ -29,8 +29,16 @@ subdir('drivers/noop')
 subdir('drivers/trace')
 subdir('drivers/rbug')
 subdir('winsys/sw/null')
-subdir('winsys/sw/dri')
-subdir('winsys/sw/kms-dri')
+if with_dri
+  subdir('winsys/sw/dri')
+else
+  libswdri = []
+endif
+if with_gallium_drisw_kms
+  subdir('winsys/sw/kms-dri')
+else
+  libswkmsdri = []
+endif
 subdir('winsys/sw/wrapper')
 if with_gallium_swr
   if meson.version().version_compare('< 0.44.0')
diff --git a/src/gallium/winsys/sw/dri/meson.build 
b/src/gallium/winsys/sw/dri/meson.build
index 6ada8d1bc7..0de62226b9 100644
--- a/src/gallium/winsys/sw/dri/meson.build
+++ b/src/gallium/winsys/sw/dri/meson.build
@@ -1,4 +1,5 @@
 # Copyright © 2017 Dylan Baker
+# Copyright © 2018 Intel Corporation
 
 # Permission is hereby granted, free of charge, to any person obtaining a copy
 # of this software and associated documentation files (the "Software"), to deal
@@ -23,5 +24,4 @@ libswdri = static_library(
   files('dri_sw_winsys.c', 'dri_sw_winsys.h'),
   c_args : c_vis_args,
   include_directories : [inc_gallium, inc_include, inc_src, inc_gallium_aux],
-  build_by_default : false,
 )
diff --git a/src/gallium/winsys/sw/kms-dri/meson.build 
b/src/gallium/winsys/sw/kms-dri/meson.build
index a26644d4f7..9c46d6e548 100644
--- a/src/gallium/winsys/sw/kms-dri/meson.build
+++ b/src/gallium/winsys/sw/kms-dri/meson.build
@@ -1,4 +1,4 @@
-# Copyright © 2017 Intel Corporation
+# Copyright © 2017-2018 Intel Corporation
 
 # Permission is hereby granted, free of charge, to any person obtaining a copy
 # of this software and associated documentation files (the "Software"), to deal
@@ -25,5 +25,4 @@ libswkmsdri = static_library(
   c_args : c_vis_args,
   include_directories : [inc_gallium, inc_include, inc_src, inc_gallium_aux],
   dependencies : dep_libdrm,
-  build_by_default : false,
 )

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): meson: actually link with libomxil-bellagio

2018-02-15 Thread Dylan Baker
Module: Mesa
Branch: master
Commit: 77081038579ed7ef3d0962637cddd6fae4d6d4fa
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=77081038579ed7ef3d0962637cddd6fae4d6d4fa

Author: Dylan Baker 
Date:   Thu Feb  1 16:03:17 2018 -0800

meson: actually link with libomxil-bellagio

This state tracker actually needs to link, unlike vdpau.

Fixes: 1d36dc674d528b93b ("meson: build gallium omx state tracker")
Signed-off-by: Dylan Baker 
Acked-by: Eric Engestrom 
Reviewed-by: Emil Velikov 

---

 meson.build | 5 -
 1 file changed, 5 deletions(-)

diff --git a/meson.build b/meson.build
index 570c5080ad..b5fa5a823c 100644
--- a/meson.build
+++ b/meson.build
@@ -514,11 +514,6 @@ if with_gallium_omx
 endif
   endif
 endif
-if with_gallium_omx
-  dep_omx = declare_dependency(
-compile_args : run_command(prog_pkgconfig, ['libomxil-bellagio', 
'--cflags']).stdout().split()
-  )
-endif
 
 _va = get_option('gallium-va')
 if not system_has_kms_drm

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): meson: fix xvmc target linkage

2018-02-15 Thread Dylan Baker
Module: Mesa
Branch: master
Commit: 2ab1ce30c4543fb4091795cbf6a5526e74c9e4aa
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=2ab1ce30c4543fb4091795cbf6a5526e74c9e4aa

Author: Dylan Baker 
Date:   Wed Jan 17 10:20:54 2018 -0800

meson: fix xvmc target linkage

This needs to link the state tracker with --whole-archive to expose the
right symbols.

v4: - Always add libswdri and libswkmsdri to the link_with list

Fixes: 22a817af8a89eb3c7 ("meson: build gallium xvmc state tracker")
Signed-off-by: Dylan Baker 
Acked-by: Eric Engestrom 
Reviewed-by: Emil Velikov 

---

 src/gallium/targets/xvmc/meson.build | 7 ---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/src/gallium/targets/xvmc/meson.build 
b/src/gallium/targets/xvmc/meson.build
index 07d6c729c9..2bf5ea2309 100644
--- a/src/gallium/targets/xvmc/meson.build
+++ b/src/gallium/targets/xvmc/meson.build
@@ -1,4 +1,4 @@
-# Copyright © 2017 Intel Corporation
+# Copyright © 2017-2018 Intel Corporation
 
 # Permission is hereby granted, free of charge, to any person obtaining a copy
 # of this software and associated documentation files (the "Software"), to deal
@@ -40,9 +40,10 @@ libxvmc_gallium = shared_library(
   include_directories : [
 inc_common, inc_util, inc_gallium_winsys, inc_gallium_drivers,
   ],
+  link_whole : [libxvmc_st],
   link_with : [
-libxvmc_st, libgalliumvlwinsys, libgalliumvl, libgallium, libmesa_util,
-libpipe_loader_static, libws_null, libwsw,
+libgalliumvlwinsys, libgalliumvl, libgallium, libmesa_util,
+libpipe_loader_static, libws_null, libwsw, libswdri, libswkmsdri,
   ],
   dependencies : [dep_thread, driver_r600, driver_nouveau],
   link_depends : xvmc_link_depends,

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): Revert "anv/meson: Make anv_entrypoints_gen.py depend on anv_extensions.py"

2018-02-15 Thread Dylan Baker
Module: Mesa
Branch: master
Commit: 384bff13e034bcca06eec1bdf50a3913f9e941db
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=384bff13e034bcca06eec1bdf50a3913f9e941db

Author: Dylan Baker 
Date:   Tue Jan 23 09:34:53 2018 -0800

Revert "anv/meson: Make anv_entrypoints_gen.py depend on anv_extensions.py"

This reverts commit 10d1b0be8e9c463dbc35cd66968299f33c76672c.

This is unnecessary, the depend_files argument is for adding
dependencies on files that are not part of the input, which is already
done.

cc: Jason Ekstrand 
Fixes: 10d1b0be8e9c463dbc35cd66968299f33c76672c
Signed-off-by: Dylan Baker 
Reviewed-by: Samuel Iglesias Gonsálvez 

---

 src/intel/vulkan/meson.build | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/src/intel/vulkan/meson.build b/src/intel/vulkan/meson.build
index 69ec26e19b..d0712f318c 100644
--- a/src/intel/vulkan/meson.build
+++ b/src/intel/vulkan/meson.build
@@ -20,8 +20,7 @@
 
 anv_entrypoints = custom_target(
   'anv_entrypoints.[ch]',
-  input : ['anv_entrypoints_gen.py', vk_api_xml, vk_android_native_buffer_xml,
-   'anv_extensions.py'],
+  input : ['anv_entrypoints_gen.py', vk_api_xml, vk_android_native_buffer_xml],
   output : ['anv_entrypoints.h', 'anv_entrypoints.c'],
   command : [
 prog_python2, '@INPUT0@', '--xml', '@INPUT1@', '--xml', '@INPUT2@',

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): meson: add convenience variable for anv_extensions.py depdendency

2018-02-15 Thread Dylan Baker
Module: Mesa
Branch: master
Commit: 7d0e342af2221fb1fabc490b240a821ecbab7b6a
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=7d0e342af2221fb1fabc490b240a821ecbab7b6a

Author: Dylan Baker 
Date:   Tue Jan 23 09:41:30 2018 -0800

meson: add convenience variable for anv_extensions.py depdendency

Signed-off-by: Dylan Baker 
Reviewed-by: Samuel Iglesias Gonsálvez 

---

 src/intel/vulkan/meson.build | 10 ++
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/src/intel/vulkan/meson.build b/src/intel/vulkan/meson.build
index 1be389b67e..41dba420cb 100644
--- a/src/intel/vulkan/meson.build
+++ b/src/intel/vulkan/meson.build
@@ -18,6 +18,8 @@
 # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 # SOFTWARE.
 
+anv_extensions_py = files('anv_extensions.py')
+
 anv_entrypoints = custom_target(
   'anv_entrypoints.[ch]',
   input : ['anv_entrypoints_gen.py', vk_api_xml, vk_android_native_buffer_xml],
@@ -26,7 +28,7 @@ anv_entrypoints = custom_target(
 prog_python2, '@INPUT0@', '--xml', '@INPUT1@', '--xml', '@INPUT2@',
 '--outdir', meson.current_build_dir(),
   ],
-  depend_files : files('anv_extensions.py'),
+  depend_files : anv_extensions_py,
 )
 
 anv_extensions_c = custom_target(
@@ -37,7 +39,7 @@ anv_extensions_c = custom_target(
 prog_python2, '@INPUT0@', '--xml', '@INPUT1@', '--xml', '@INPUT2@',
 '--out-c', '@OUTPUT@',
   ],
-  depend_files : files('anv_extensions.py'),
+  depend_files : anv_extensions_py,
 )
 
 anv_extensions_h = custom_target(
@@ -48,7 +50,7 @@ anv_extensions_h = custom_target(
 prog_python2, '@INPUT0@', '--xml', '@INPUT1@', '--xml', '@INPUT2@',
 '--out-h', '@OUTPUT@',
   ],
-  depend_files : files('anv_extensions.py'),
+  depend_files : anv_extensions_py,
 )
 
 intel_icd = custom_target(
@@ -60,7 +62,7 @@ intel_icd = custom_target(
 '--lib-path', join_paths(get_option('prefix'), get_option('libdir')),
 '--out', '@OUTPUT@',
   ],
-  depend_files : files('anv_extensions.py'),
+  depend_files : anv_extensions_py,
   build_by_default : true,
   install_dir : with_vulkan_icd_dir,
   install : true,

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): meson: use depend_files to track extra file dependencies

2018-02-15 Thread Dylan Baker
Module: Mesa
Branch: master
Commit: b03969a5adeffaceec7ff722e90205c4284b1f1e
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=b03969a5adeffaceec7ff722e90205c4284b1f1e

Author: Dylan Baker 
Date:   Tue Jan 23 09:37:03 2018 -0800

meson: use depend_files to track extra file dependencies

cc: Jason Ekstrand 
Fixes: f93994080993bda ("anv: Split anv_extensions.py into two files")
Signed-off-by: Dylan Baker 
Reviewed-by: Samuel Iglesias Gonsálvez 

---

 src/intel/vulkan/meson.build | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/intel/vulkan/meson.build b/src/intel/vulkan/meson.build
index d0712f318c..3f1a2de9fd 100644
--- a/src/intel/vulkan/meson.build
+++ b/src/intel/vulkan/meson.build
@@ -31,13 +31,13 @@ anv_entrypoints = custom_target(
 
 anv_extensions_c = custom_target(
   'anv_extensions.c',
-  input : ['anv_extensions_gen.py', vk_api_xml, vk_android_native_buffer_xml,
-   'anv_extensions.py'],
+  input : ['anv_extensions_gen.py', vk_api_xml, vk_android_native_buffer_xml],
   output : 'anv_extensions.c',
   command : [
 prog_python2, '@INPUT0@', '--xml', '@INPUT1@', '--xml', '@INPUT2@',
 '--out-c', '@OUTPUT@',
   ],
+  depend_files : files('anv_extensions.py'),
 )
 
 anv_extensions_h = custom_target(

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): meson: use depend_files for adding extra file dependencies

2018-02-15 Thread Dylan Baker
Module: Mesa
Branch: master
Commit: 0e617c04f16563381b3d9bd1ddd092e32e38a843
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=0e617c04f16563381b3d9bd1ddd092e32e38a843

Author: Dylan Baker 
Date:   Tue Jan 23 09:39:25 2018 -0800

meson: use depend_files for adding extra file dependencies

cc: Jason Ekstrand 
Fixes: dd088d4bec74f37ffe4 ("anv/extensions: Generate a header file with 
extension tables")
Signed-off-by: Dylan Baker 
Reviewed-by: Samuel Iglesias Gonsálvez 

---

 src/intel/vulkan/meson.build | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/intel/vulkan/meson.build b/src/intel/vulkan/meson.build
index 3f1a2de9fd..1be389b67e 100644
--- a/src/intel/vulkan/meson.build
+++ b/src/intel/vulkan/meson.build
@@ -42,13 +42,13 @@ anv_extensions_c = custom_target(
 
 anv_extensions_h = custom_target(
   'anv_extensions.h',
-  input : ['anv_extensions_gen.py', vk_api_xml, vk_android_native_buffer_xml,
-   'anv_extensions.py'],
+  input : ['anv_extensions_gen.py', vk_api_xml, vk_android_native_buffer_xml],
   output : 'anv_extensions.h',
   command : [
 prog_python2, '@INPUT0@', '--xml', '@INPUT1@', '--xml', '@INPUT2@',
 '--out-h', '@OUTPUT@',
   ],
+  depend_files : files('anv_extensions.py'),
 )
 
 intel_icd = custom_target(

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): svga: replace gotos with else clauses

2018-02-15 Thread Brian Paul
Module: Mesa
Branch: master
Commit: 64a1223a80560fae456dd62ea92936ee204aee27
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=64a1223a80560fae456dd62ea92936ee204aee27

Author: Brian Paul 
Date:   Thu Feb 15 09:12:03 2018 -0700

svga: replace gotos with else clauses

Simple clean-up.

Reviewed-by: Charmaine Lee 

---

 src/gallium/drivers/svga/svga_state_fs.c | 19 +--
 src/gallium/drivers/svga/svga_state_gs.c |  9 -
 src/gallium/drivers/svga/svga_state_vs.c | 15 +++
 3 files changed, 20 insertions(+), 23 deletions(-)

diff --git a/src/gallium/drivers/svga/svga_state_fs.c 
b/src/gallium/drivers/svga/svga_state_fs.c
index eeb1ba60f6..5190542d02 100644
--- a/src/gallium/drivers/svga/svga_state_fs.c
+++ b/src/gallium/drivers/svga/svga_state_fs.c
@@ -383,18 +383,17 @@ svga_reemit_fs_bindings(struct svga_context *svga)
   ret =  svga->swc->resource_rebind(svga->swc, NULL,
 svga->state.hw_draw.fs->gb_shader,
 SVGA_RELOC_READ);
-  goto out;
+   }
+   else {
+  if (svga_have_vgpu10(svga))
+ ret = SVGA3D_vgpu10_SetShader(svga->swc, SVGA3D_SHADERTYPE_PS,
+   svga->state.hw_draw.fs->gb_shader,
+   svga->state.hw_draw.fs->id);
+  else
+ ret = SVGA3D_SetGBShader(svga->swc, SVGA3D_SHADERTYPE_PS,
+  svga->state.hw_draw.fs->gb_shader);
}
 
-   if (svga_have_vgpu10(svga))
-  ret = SVGA3D_vgpu10_SetShader(svga->swc, SVGA3D_SHADERTYPE_PS,
-svga->state.hw_draw.fs->gb_shader,
-svga->state.hw_draw.fs->id);
-   else
-  ret = SVGA3D_SetGBShader(svga->swc, SVGA3D_SHADERTYPE_PS,
-   svga->state.hw_draw.fs->gb_shader);
-
- out:
if (ret != PIPE_OK)
   return ret;
 
diff --git a/src/gallium/drivers/svga/svga_state_gs.c 
b/src/gallium/drivers/svga/svga_state_gs.c
index 19f0887d2b..38d85f0325 100644
--- a/src/gallium/drivers/svga/svga_state_gs.c
+++ b/src/gallium/drivers/svga/svga_state_gs.c
@@ -153,13 +153,12 @@ svga_reemit_gs_bindings(struct svga_context *svga)
if (!svga_need_to_rebind_resources(svga)) {
   ret =  svga->swc->resource_rebind(svga->swc, NULL, gbshader,
 SVGA_RELOC_READ);
-  goto out;
+   }
+   else {
+  ret = SVGA3D_vgpu10_SetShader(svga->swc, SVGA3D_SHADERTYPE_GS,
+gbshader, shaderId);
}
 
-   ret = SVGA3D_vgpu10_SetShader(svga->swc, SVGA3D_SHADERTYPE_GS,
- gbshader, shaderId);
-
- out:
if (ret != PIPE_OK)
   return ret;
 
diff --git a/src/gallium/drivers/svga/svga_state_vs.c 
b/src/gallium/drivers/svga/svga_state_vs.c
index 3dfc9f451c..ad93f60048 100644
--- a/src/gallium/drivers/svga/svga_state_vs.c
+++ b/src/gallium/drivers/svga/svga_state_vs.c
@@ -227,16 +227,15 @@ svga_reemit_vs_bindings(struct svga_context *svga)
if (!svga_need_to_rebind_resources(svga)) {
   ret =  svga->swc->resource_rebind(svga->swc, NULL, gbshader,
 SVGA_RELOC_READ);
-  goto out;
+   }
+   else {
+  if (svga_have_vgpu10(svga))
+ ret = SVGA3D_vgpu10_SetShader(svga->swc, SVGA3D_SHADERTYPE_VS,
+   gbshader, shaderId);
+  else
+ ret = SVGA3D_SetGBShader(svga->swc, SVGA3D_SHADERTYPE_VS, gbshader);
}
 
-   if (svga_have_vgpu10(svga))
-  ret = SVGA3D_vgpu10_SetShader(svga->swc, SVGA3D_SHADERTYPE_VS,
-gbshader, shaderId);
-   else
-  ret = SVGA3D_SetGBShader(svga->swc, SVGA3D_SHADERTYPE_VS, gbshader);
-
- out:
if (ret != PIPE_OK)
   return ret;
 

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): svga: move duplicated code for setting fillmode/flatshade state

2018-02-15 Thread Brian Paul
Module: Mesa
Branch: master
Commit: 8b54299c344d9fd35118fab50efa136f8971a7cc
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=8b54299c344d9fd35118fab50efa136f8971a7cc

Author: Brian Paul 
Date:   Wed Feb 14 09:37:27 2018 -0800

svga: move duplicated code for setting fillmode/flatshade state

Move the calls to svga_hwtnl_set_fillmode() and svga_hwtnl_set_flatshade()
out of the two retry_draw_*() functions to the svga_draw_vbo() function.

Reviewed-by: Charmaine Lee 

---

 src/gallium/drivers/svga/svga_pipe_draw.c | 30 ++
 1 file changed, 10 insertions(+), 20 deletions(-)

diff --git a/src/gallium/drivers/svga/svga_pipe_draw.c 
b/src/gallium/drivers/svga/svga_pipe_draw.c
index af538819ea..c73c406e69 100644
--- a/src/gallium/drivers/svga/svga_pipe_draw.c
+++ b/src/gallium/drivers/svga/svga_pipe_draw.c
@@ -64,16 +64,6 @@ retry_draw_range_elements(struct svga_context *svga,
 
SVGA_STATS_TIME_PUSH(svga_sws(svga), SVGA_STATS_TIME_DRAWELEMENTS);
 
-   svga_hwtnl_set_fillmode(svga->hwtnl, svga->curr.rast->hw_fillmode);
-
-   /** determine if flatshade is to be used after svga_update_state()
-*  in case the fragment shader is changed.
-*/
-   svga_hwtnl_set_flatshade(svga->hwtnl,
-svga->curr.rast->templ.flatshade ||
-is_using_flat_shading(svga),
-svga->curr.rast->templ.flatshade_first);
-
for (unsigned try = 0; try < 2; try++) {
   ret = svga_hwtnl_draw_range_elements(svga->hwtnl,
index_buffer, index_size,
@@ -100,16 +90,6 @@ retry_draw_arrays(struct svga_context *svga,
 
SVGA_STATS_TIME_PUSH(svga_sws(svga), SVGA_STATS_TIME_DRAWARRAYS);
 
-   svga_hwtnl_set_fillmode(svga->hwtnl, svga->curr.rast->hw_fillmode);
-
-   /** determine if flatshade is to be used after svga_update_state()
-*  in case the fragment shader is changed.
-*/
-   svga_hwtnl_set_flatshade(svga->hwtnl,
-svga->curr.rast->templ.flatshade ||
-is_using_flat_shading(svga),
-svga->curr.rast->templ.flatshade_first);
-
for (unsigned try = 0; try < 2; try++) {
   ret = svga_hwtnl_draw_arrays(svga->hwtnl, prim, start, count,
start_instance, instance_count);
@@ -230,6 +210,16 @@ svga_draw_vbo(struct pipe_context *pipe, const struct 
pipe_draw_info *info)
  assert(ret == PIPE_OK);
   }
 
+  svga_hwtnl_set_fillmode(svga->hwtnl, svga->curr.rast->hw_fillmode);
+
+  /** determine if flatshade is to be used after svga_update_state()
+   *  in case the fragment shader is changed.
+   */
+  svga_hwtnl_set_flatshade(svga->hwtnl,
+   svga->curr.rast->templ.flatshade ||
+   is_using_flat_shading(svga),
+   svga->curr.rast->templ.flatshade_first);
+
   if (info->index_size && indexbuf) {
  unsigned offset;
 

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): svga: s/unsigned/enum pipe_shader_type/

2018-02-15 Thread Brian Paul
Module: Mesa
Branch: master
Commit: fa901768a4442e2376d03a57603bf2ca4bd1f490
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=fa901768a4442e2376d03a57603bf2ca4bd1f490

Author: Brian Paul 
Date:   Wed Feb 14 14:53:42 2018 -0700

svga: s/unsigned/enum pipe_shader_type/

Reviewed-by: Neha Bhende 

---

 src/gallium/drivers/svga/svga_tgsi.c| 3 ++-
 src/gallium/drivers/svga/svga_tgsi.h| 5 +++--
 src/gallium/drivers/svga/svga_tgsi_vgpu10.c | 2 +-
 3 files changed, 6 insertions(+), 4 deletions(-)

diff --git a/src/gallium/drivers/svga/svga_tgsi.c 
b/src/gallium/drivers/svga/svga_tgsi.c
index 0b2d8af64d..8819313fb5 100644
--- a/src/gallium/drivers/svga/svga_tgsi.c
+++ b/src/gallium/drivers/svga/svga_tgsi.c
@@ -168,7 +168,8 @@ svga_shader_emit_header(struct svga_shader_emitter *emit)
 struct svga_shader_variant *
 svga_tgsi_vgpu9_translate(struct svga_context *svga,
   const struct svga_shader *shader,
-  const struct svga_compile_key *key, unsigned unit)
+  const struct svga_compile_key *key,
+  enum pipe_shader_type unit)
 {
struct svga_shader_variant *variant = NULL;
struct svga_shader_emitter emit;
diff --git a/src/gallium/drivers/svga/svga_tgsi.h 
b/src/gallium/drivers/svga/svga_tgsi.h
index 2581135701..e98601127f 100644
--- a/src/gallium/drivers/svga/svga_tgsi.h
+++ b/src/gallium/drivers/svga/svga_tgsi.h
@@ -65,13 +65,14 @@ static inline void svga_generate_vdecl_semantics( unsigned 
idx,
 struct svga_shader_variant *
 svga_tgsi_vgpu9_translate(struct svga_context *svga,
   const struct svga_shader *shader,
-  const struct svga_compile_key *key, unsigned unit);
+  const struct svga_compile_key *key,
+  enum pipe_shader_type unit);
 
 struct svga_shader_variant *
 svga_tgsi_vgpu10_translate(struct svga_context *svga,
const struct svga_shader *shader,
const struct svga_compile_key *key,
-   unsigned unit);
+   enum pipe_shader_type unit);
 
 boolean svga_shader_verify(const uint32_t *tokens, unsigned nr_tokens);
 
diff --git a/src/gallium/drivers/svga/svga_tgsi_vgpu10.c 
b/src/gallium/drivers/svga/svga_tgsi_vgpu10.c
index 73aa78b748..4d0834b3f6 100644
--- a/src/gallium/drivers/svga/svga_tgsi_vgpu10.c
+++ b/src/gallium/drivers/svga/svga_tgsi_vgpu10.c
@@ -6484,7 +6484,7 @@ struct svga_shader_variant *
 svga_tgsi_vgpu10_translate(struct svga_context *svga,
const struct svga_shader *shader,
const struct svga_compile_key *key,
-   unsigned unit)
+   enum pipe_shader_type unit)
 {
struct svga_shader_variant *variant = NULL;
struct svga_shader_emitter_v10 *emit;

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): svga: call tgsi_scan_shader() for dummy shaders

2018-02-15 Thread Brian Paul
Module: Mesa
Branch: master
Commit: 6f0aec5671a1efd374f517d3f9e4b0ff1c4c4709
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=6f0aec5671a1efd374f517d3f9e4b0ff1c4c4709

Author: Brian Paul 
Date:   Wed Feb 14 13:50:00 2018 -0700

svga: call tgsi_scan_shader() for dummy shaders

If we fail to compile the normal VS or FS we fall back to a simple/
dummy shader.  We need to rescan the the shader to update the shader
info.  Otherwise, this can lead to further translations failures
because the shader info doesn't match the actual shader.

Found by adding some extra debug assertions in the state-update code
while debugging something else.

v2: also update shader generic_inputs/outputs, etc. per Charmaine

Reviewed-by: Charmaine Lee 

---

 src/gallium/drivers/svga/svga_state_fs.c | 4 
 src/gallium/drivers/svga/svga_state_vs.c | 3 +++
 2 files changed, 7 insertions(+)

diff --git a/src/gallium/drivers/svga/svga_state_fs.c 
b/src/gallium/drivers/svga/svga_state_fs.c
index 5e568993fe..eeb1ba60f6 100644
--- a/src/gallium/drivers/svga/svga_state_fs.c
+++ b/src/gallium/drivers/svga/svga_state_fs.c
@@ -115,6 +115,10 @@ get_compiled_dummy_shader(struct svga_context *svga,
FREE((void *) fs->base.tokens);
fs->base.tokens = dummy;
 
+   tgsi_scan_shader(fs->base.tokens, &fs->base.info);
+   fs->generic_inputs = svga_get_generic_inputs_mask(&fs->base.info);
+   svga_remap_generics(fs->generic_inputs, fs->generic_remap_table);
+
variant = translate_fragment_program(svga, fs, key);
return variant;
 }
diff --git a/src/gallium/drivers/svga/svga_state_vs.c 
b/src/gallium/drivers/svga/svga_state_vs.c
index a0ab868cbb..3dfc9f451c 100644
--- a/src/gallium/drivers/svga/svga_state_vs.c
+++ b/src/gallium/drivers/svga/svga_state_vs.c
@@ -105,6 +105,9 @@ get_compiled_dummy_vertex_shader(struct svga_context *svga,
FREE((void *) vs->base.tokens);
vs->base.tokens = dummy;
 
+   tgsi_scan_shader(vs->base.tokens, &vs->base.info);
+   vs->generic_outputs = svga_get_generic_outputs_mask(&vs->base.info);
+
variant = translate_vertex_program(svga, vs, key);
return variant;
 }

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): svga: move svga_update_state() call in draw code

2018-02-15 Thread Brian Paul
Module: Mesa
Branch: master
Commit: 072df89a796f549cc0ad90ce3dcbc9ad5c58d892
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=072df89a796f549cc0ad90ce3dcbc9ad5c58d892

Author: Brian Paul 
Date:   Wed Feb 14 09:33:58 2018 -0800

svga: move svga_update_state() call in draw code

This fixes a few Piglit transform feedback regressions caused by
commit 7a1401938b351.

In that change I moved the moved svga_update_state() into the loops,
after the calls to svga_hwtnl_set_flatshade().  But
svga_hwtnl_set_flatshade() actually depends on some derived shader
state.  This patch moves the svga_update_state() call into
svga_draw_vbo() so it's not duplicated in two places.

Fixes: 7a1401938b351 ("svga: clean up retry_draw_range_elements(),
retry_draw_arrays()")

Reviewed-by: Charmaine Lee 

---

 src/gallium/drivers/svga/svga_pipe_draw.c | 37 ---
 1 file changed, 19 insertions(+), 18 deletions(-)

diff --git a/src/gallium/drivers/svga/svga_pipe_draw.c 
b/src/gallium/drivers/svga/svga_pipe_draw.c
index ee4a1057ad..af538819ea 100644
--- a/src/gallium/drivers/svga/svga_pipe_draw.c
+++ b/src/gallium/drivers/svga/svga_pipe_draw.c
@@ -75,17 +75,14 @@ retry_draw_range_elements(struct svga_context *svga,
 svga->curr.rast->templ.flatshade_first);
 
for (unsigned try = 0; try < 2; try++) {
-  ret = svga_update_state(svga, SVGA_STATE_HW_DRAW);
-  if (ret == PIPE_OK) {
- ret = svga_hwtnl_draw_range_elements(svga->hwtnl,
-  index_buffer, index_size,
-  index_bias,
-  min_index, max_index,
-  prim, start, count,
-  start_instance, instance_count);
- if (ret == PIPE_OK)
-break;
-  }
+  ret = svga_hwtnl_draw_range_elements(svga->hwtnl,
+   index_buffer, index_size,
+   index_bias,
+   min_index, max_index,
+   prim, start, count,
+   start_instance, instance_count);
+  if (ret == PIPE_OK)
+ break;
   svga_context_flush(svga, NULL);
}
 
@@ -114,13 +111,10 @@ retry_draw_arrays(struct svga_context *svga,
 svga->curr.rast->templ.flatshade_first);
 
for (unsigned try = 0; try < 2; try++) {
-  ret = svga_update_state(svga, SVGA_STATE_HW_DRAW);
-  if (ret == PIPE_OK) {
- ret = svga_hwtnl_draw_arrays(svga->hwtnl, prim, start, count,
-  start_instance, instance_count);
- if (ret == PIPE_OK)
-break;
-  }
+  ret = svga_hwtnl_draw_arrays(svga->hwtnl, prim, start, count,
+   start_instance, instance_count);
+  if (ret == PIPE_OK)
+ break;
   svga_context_flush(svga, NULL);
}
 
@@ -229,6 +223,13 @@ svga_draw_vbo(struct pipe_context *pipe, const struct 
pipe_draw_info *info)
   ret = svga_swtnl_draw_vbo(svga, info, indexbuf, index_offset);
}
else {
+  ret = svga_update_state(svga, SVGA_STATE_HW_DRAW);
+  if (ret != PIPE_OK) {
+ svga_context_flush(svga, NULL);
+ ret = svga_update_state(svga, SVGA_STATE_HW_DRAW);
+ assert(ret == PIPE_OK);
+  }
+
   if (info->index_size && indexbuf) {
  unsigned offset;
 

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): ac/shader: be a little smarter when scanning vertex buffers

2018-02-15 Thread Samuel Pitoiset
Module: Mesa
Branch: master
Commit: 61a4fc3ecc3d7740d2b9122c502144e69fe3060c
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=61a4fc3ecc3d7740d2b9122c502144e69fe3060c

Author: Samuel Pitoiset 
Date:   Wed Feb 14 12:03:55 2018 +0100

ac/shader: be a little smarter when scanning vertex buffers

Although meta shaders don't use any vertex buffers, there is no
behaviour change but I think it's better to do this. Though,
this saves two user SGPRs for push constants inlining or
something else.

Signed-off-by: Samuel Pitoiset 
Reviewed-by: Bas Nieuwenhuizen 

---

 src/amd/common/ac_shader_info.c | 12 +++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/src/amd/common/ac_shader_info.c b/src/amd/common/ac_shader_info.c
index 3b0887995d..f6cdd34703 100644
--- a/src/amd/common/ac_shader_info.c
+++ b/src/amd/common/ac_shader_info.c
@@ -180,6 +180,16 @@ gather_info_block(const nir_shader *nir, const nir_block 
*block,
 }
 
 static void
+gather_info_input_decl_vs(const nir_shader *nir, const nir_variable *var,
+ struct ac_shader_info *info)
+{
+   int idx = var->data.location;
+
+   if (idx >= VERT_ATTRIB_GENERIC0 && idx <= VERT_ATTRIB_GENERIC15)
+   info->vs.has_vertex_buffers = true;
+}
+
+static void
 gather_info_input_decl_ps(const nir_shader *nir, const nir_variable *var,
  struct ac_shader_info *info)
 {
@@ -197,7 +207,7 @@ gather_info_input_decl(const nir_shader *nir, const 
nir_variable *var,
 {
switch (nir->info.stage) {
case MESA_SHADER_VERTEX:
-   info->vs.has_vertex_buffers = true;
+   gather_info_input_decl_vs(nir, var, info);
break;
case MESA_SHADER_FRAGMENT:
gather_info_input_decl_ps(nir, var, info);

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): ac/nir: do not reserve user SGPRs for unused descriptor sets

2018-02-15 Thread Samuel Pitoiset
Module: Mesa
Branch: master
Commit: 579b33c1fd6962fb85e6cec23035df3ba826cc50
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=579b33c1fd6962fb85e6cec23035df3ba826cc50

Author: Samuel Pitoiset 
Date:   Wed Feb 14 18:15:23 2018 +0100

ac/nir: do not reserve user SGPRs for unused descriptor sets

In theory this might lead to corruption if we bind a descriptor
set which is unused, because LLVM is smart and it can re-use
unused user SGPRs. In practice, this doesn't seem to fix
anything.

As a side effect, this will reduce the number of emitted
SH_REG packets.

Signed-off-by: Samuel Pitoiset 
Reviewed-by: Bas Nieuwenhuizen 

---

 src/amd/common/ac_nir_to_llvm.c | 9 ++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/src/amd/common/ac_nir_to_llvm.c b/src/amd/common/ac_nir_to_llvm.c
index 7f0bb05862..dc471de977 100644
--- a/src/amd/common/ac_nir_to_llvm.c
+++ b/src/amd/common/ac_nir_to_llvm.c
@@ -610,7 +610,8 @@ declare_global_input_sgprs(struct radv_shader_context *ctx,
/* 1 for each descriptor set */
if (!user_sgpr_info->indirect_all_descriptor_sets) {
for (unsigned i = 0; i < num_sets; ++i) {
-   if (ctx->options->layout->set[i].layout->shader_stages 
& stage_mask) {
+   if ((ctx->shader_info->info.desc_set_used_mask & (1 << 
i)) &&
+   ctx->options->layout->set[i].layout->shader_stages 
& stage_mask) {
add_array_arg(args, type,
  &ctx->descriptor_sets[i]);
}
@@ -687,7 +688,8 @@ set_global_input_locs(struct radv_shader_context *ctx, 
gl_shader_stage stage,
 
if (!user_sgpr_info->indirect_all_descriptor_sets) {
for (unsigned i = 0; i < num_sets; ++i) {
-   if (ctx->options->layout->set[i].layout->shader_stages 
& stage_mask) {
+   if ((ctx->shader_info->info.desc_set_used_mask & (1 << 
i)) &&
+   ctx->options->layout->set[i].layout->shader_stages 
& stage_mask) {
set_loc_desc(ctx, i, user_sgpr_idx, 0);
} else
ctx->descriptor_sets[i] = NULL;
@@ -697,7 +699,8 @@ set_global_input_locs(struct radv_shader_context *ctx, 
gl_shader_stage stage,
   user_sgpr_idx, 2);
 
for (unsigned i = 0; i < num_sets; ++i) {
-   if (ctx->options->layout->set[i].layout->shader_stages 
& stage_mask) {
+   if ((ctx->shader_info->info.desc_set_used_mask & (1 << 
i)) &&
+   ctx->options->layout->set[i].layout->shader_stages 
& stage_mask) {
set_loc_desc(ctx, i, user_sgpr_idx, i * 8);
ctx->descriptor_sets[i] =
ac_build_load_to_sgpr(&ctx->ac,

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): ac/shader: fix gathering of desc_set_used_mask

2018-02-15 Thread Samuel Pitoiset
Module: Mesa
Branch: master
Commit: 309854148c8bc9c344052dab928ee07292cb623d
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=309854148c8bc9c344052dab928ee07292cb623d

Author: Samuel Pitoiset 
Date:   Wed Feb 14 17:52:25 2018 +0100

ac/shader: fix gathering of desc_set_used_mask

This was quite wrong.

Signed-off-by: Samuel Pitoiset 
Reviewed-by: Bas Nieuwenhuizen 

---

 src/amd/common/ac_shader_info.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/amd/common/ac_shader_info.c b/src/amd/common/ac_shader_info.c
index f6cdd34703..5ae8a72046 100644
--- a/src/amd/common/ac_shader_info.c
+++ b/src/amd/common/ac_shader_info.c
@@ -27,7 +27,7 @@
 static void mark_sampler_desc(const nir_variable *var,
  struct ac_shader_info *info)
 {
-   info->desc_set_used_mask = (1 << var->data.descriptor_set);
+   info->desc_set_used_mask |= (1 << var->data.descriptor_set);
 }
 
 static void

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): dri: fromPlanar() can return NULL as a valid result

2018-02-15 Thread Daniel Stone
Module: Mesa
Branch: master
Commit: a34715ad9c84c4209de4c16fdf40655181350bd9
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=a34715ad9c84c4209de4c16fdf40655181350bd9

Author: Louis-Francis Ratté-Boulianne 
Date:   Thu Sep 28 03:18:33 2017 -0400

dri: fromPlanar() can return NULL as a valid result

It was assumed that fromPlanar() could return NULL to mean
that the planar image is the same as the parent DRI image.
That assumption wasn't made everywhere though.

Let's fix things and make sure that all callers understand
a NULL result

Signed-off-by: Louis-Francis Ratté-Boulianne 
Reviewed-by: Jason Ekstrand 
Reviewed-by: Daniel Stone 

---

 src/egl/drivers/dri2/egl_dri2.c | 3 ++-
 src/egl/drivers/dri2/platform_wayland.c | 9 +++--
 src/gbm/backends/dri/gbm_dri.c  | 1 +
 src/loader/loader_dri3_helper.c | 5 -
 4 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/src/egl/drivers/dri2/egl_dri2.c b/src/egl/drivers/dri2/egl_dri2.c
index e9b556ec5f..17b646e7ed 100644
--- a/src/egl/drivers/dri2/egl_dri2.c
+++ b/src/egl/drivers/dri2/egl_dri2.c
@@ -1966,7 +1966,8 @@ dri2_create_image_wayland_wl_buffer(_EGLDisplay *disp, 
_EGLContext *ctx,
}
 
dri_image = dri2_dpy->image->fromPlanar(buffer->driver_buffer, plane, NULL);
-
+   if (dri_image == NULL && plane == 0)
+  dri_image = dri2_dpy->image->dupImage(buffer->driver_buffer, NULL);
if (dri_image == NULL) {
   _eglError(EGL_BAD_PARAMETER, "dri2_create_image_wayland_wl_buffer");
   return NULL;
diff --git a/src/egl/drivers/dri2/platform_wayland.c 
b/src/egl/drivers/dri2/platform_wayland.c
index f91baded87..5b8bec901b 100644
--- a/src/egl/drivers/dri2/platform_wayland.c
+++ b/src/egl/drivers/dri2/platform_wayland.c
@@ -814,13 +814,10 @@ create_wl_buffer(struct dri2_egl_display *dri2_dpy,
  int stride, offset;
  int fd = -1;
 
- if (i == 0)
-p_image = image;
- else
-p_image = dri2_dpy->image->fromPlanar(image, i, NULL);
+ p_image = dri2_dpy->image->fromPlanar(image, i, NULL);
  if (!p_image) {
-zwp_linux_buffer_params_v1_destroy(params);
-return NULL;
+assert(i == 0);
+p_image = image;
  }
 
  query = dri2_dpy->image->queryImage(p_image,
diff --git a/src/gbm/backends/dri/gbm_dri.c b/src/gbm/backends/dri/gbm_dri.c
index 0d088bd62b..ed64ad61bf 100644
--- a/src/gbm/backends/dri/gbm_dri.c
+++ b/src/gbm/backends/dri/gbm_dri.c
@@ -849,6 +849,7 @@ gbm_dri_bo_get_offset(struct gbm_bo *_bo, int plane)
   dri->image->queryImage(image, __DRI_IMAGE_ATTRIB_OFFSET, &offset);
   dri->image->destroyImage(image);
} else {
+  assert(plane == 0);
   dri->image->queryImage(bo->image, __DRI_IMAGE_ATTRIB_OFFSET, &offset);
}
 
diff --git a/src/loader/loader_dri3_helper.c b/src/loader/loader_dri3_helper.c
index fbda3d635c..2912bb6749 100644
--- a/src/loader/loader_dri3_helper.c
+++ b/src/loader/loader_dri3_helper.c
@@ -1288,7 +1288,10 @@ loader_dri3_create_image(xcb_connection_t *c,
 
ret = image->fromPlanar(image_planar, 0, loaderPrivate);
 
-   image->destroyImage(image_planar);
+   if (!ret)
+  ret = image_planar;
+   else
+  image->destroyImage(image_planar);
 
return ret;
 }

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): docs: update calendar, add news and link release notes to 17.3.4

2018-02-15 Thread Emil Velikov
Module: Mesa
Branch: master
Commit: dd4734d5c191b414bfaf81e69d664512f926
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=dd4734d5c191b414bfaf81e69d664512f926

Author: Emil Velikov 
Date:   Thu Feb 15 11:33:04 2018 +

docs: update calendar, add news and link release notes to 17.3.4

Signed-off-by: Emil Velikov 

---

 docs/index.html|  6 ++
 docs/release-calendar.html | 12 +++-
 docs/relnotes.html |  1 +
 3 files changed, 10 insertions(+), 9 deletions(-)

diff --git a/docs/index.html b/docs/index.html
index 33fc5cf5bd..4fca33b361 100644
--- a/docs/index.html
+++ b/docs/index.html
@@ -16,6 +16,12 @@
 
 News
 
+February 15, 2018
+
+Mesa 17.3.4 is released.
+This is a bug-fix release.
+
+
 January 18, 2018
 
 Mesa 17.3.3 is released.
diff --git a/docs/release-calendar.html b/docs/release-calendar.html
index 74c98023c3..b9208324b9 100644
--- a/docs/release-calendar.html
+++ b/docs/release-calendar.html
@@ -39,20 +39,14 @@ if you'd like to nominate a patch in the next stable 
release.
 Notes
 
 
-17.3
-2018-01-26
-17.3.4
-Emil Velikov
-
-
-
-2018-02-09
+17.3
+2018-02-23
 17.3.5
 Juan A. Suarez Romero
 
 
 
-2018-02-23
+2018-03-09
 17.3.6
 Juan A. Suarez Romero
 Final planned release for the 17.3 series
diff --git a/docs/relnotes.html b/docs/relnotes.html
index 94ed6146e5..6c59782eb8 100644
--- a/docs/relnotes.html
+++ b/docs/relnotes.html
@@ -21,6 +21,7 @@ The release notes summarize what's new or changed in each 
Mesa release.
 
 
 
+17.3.4 release notes
 17.3.3 release notes
 17.3.2 release notes
 17.2.8 release notes

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): docs: correct link to the 17.3.3 release notes

2018-02-15 Thread Emil Velikov
Module: Mesa
Branch: master
Commit: f0654dfa65e4004bcc9a4bea80f1e6a04a75ecff
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=f0654dfa65e4004bcc9a4bea80f1e6a04a75ecff

Author: Emil Velikov 
Date:   Thu Feb 15 11:33:27 2018 +

docs: correct link to the 17.3.3 release notes

Signed-off-by: Emil Velikov 

---

 docs/relnotes.html | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/docs/relnotes.html b/docs/relnotes.html
index 6c59782eb8..60aa262f94 100644
--- a/docs/relnotes.html
+++ b/docs/relnotes.html
@@ -22,7 +22,7 @@ The release notes summarize what's new or changed in each 
Mesa release.
 
 
 17.3.4 release notes
-17.3.3 release notes
+17.3.3 release notes
 17.3.2 release notes
 17.2.8 release notes
 17.3.1 release notes

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (17.3): docs: add sha256 checksums for 17.3.4

2018-02-15 Thread Emil Velikov
Module: Mesa
Branch: 17.3
Commit: 26c84b8af9ebdedd2df75596c25173639ed5e4b2
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=26c84b8af9ebdedd2df75596c25173639ed5e4b2

Author: Emil Velikov 
Date:   Thu Feb 15 11:28:00 2018 +

docs: add sha256 checksums for 17.3.4

Signed-off-by: Emil Velikov 

---

 docs/relnotes/17.3.4.html | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/docs/relnotes/17.3.4.html b/docs/relnotes/17.3.4.html
index f9db0fb93a..85157576e6 100644
--- a/docs/relnotes/17.3.4.html
+++ b/docs/relnotes/17.3.4.html
@@ -31,7 +31,8 @@ because compatibility contexts are not supported.
 
 SHA256 checksums
 
-TBD
+2d3a4c3cbc995b3e192361dce710d8c749e046e7575aa1b7d8fc9e6b4df28f84  
mesa-17.3.4.tar.gz
+71f995e233bc5df1a0dd46c980d1720106e7f82f02d61c1ca50854b5e02590d0  
mesa-17.3.4.tar.xz
 
 
 

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): docs: add sha256 checksums for 17.3.4

2018-02-15 Thread Emil Velikov
Module: Mesa
Branch: master
Commit: eadde35f83aaeb2c397a31120a9a8cb4d71c8266
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=eadde35f83aaeb2c397a31120a9a8cb4d71c8266

Author: Emil Velikov 
Date:   Thu Feb 15 11:28:00 2018 +

docs: add sha256 checksums for 17.3.4

Signed-off-by: Emil Velikov 
(cherry picked from commit 26c84b8af9ebdedd2df75596c25173639ed5e4b2)

---

 docs/relnotes/17.3.4.html | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/docs/relnotes/17.3.4.html b/docs/relnotes/17.3.4.html
index f9db0fb93a..85157576e6 100644
--- a/docs/relnotes/17.3.4.html
+++ b/docs/relnotes/17.3.4.html
@@ -31,7 +31,8 @@ because compatibility contexts are not supported.
 
 SHA256 checksums
 
-TBD
+2d3a4c3cbc995b3e192361dce710d8c749e046e7575aa1b7d8fc9e6b4df28f84  
mesa-17.3.4.tar.gz
+71f995e233bc5df1a0dd46c980d1720106e7f82f02d61c1ca50854b5e02590d0  
mesa-17.3.4.tar.xz
 
 
 

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): docs: add release notes for 17.3.4

2018-02-15 Thread Emil Velikov
Module: Mesa
Branch: master
Commit: 6f4a6e231030085d50200039c002e787f6745f7b
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=6f4a6e231030085d50200039c002e787f6745f7b

Author: Emil Velikov 
Date:   Thu Feb 15 11:09:05 2018 +

docs: add release notes for 17.3.4

Signed-off-by: Emil Velikov 
(cherry picked from commit 2f9820c553c943f776513ddc2887fb6b1cf0f29a)

---

 docs/relnotes/17.3.4.html | 274 ++
 1 file changed, 274 insertions(+)

diff --git a/docs/relnotes/17.3.4.html b/docs/relnotes/17.3.4.html
new file mode 100644
index 00..f9db0fb93a
--- /dev/null
+++ b/docs/relnotes/17.3.4.html
@@ -0,0 +1,274 @@
+http://www.w3.org/TR/html4/loose.dtd";>
+
+
+  
+  Mesa Release Notes
+  
+
+
+
+
+  The Mesa 3D Graphics Library
+
+
+
+
+
+Mesa 17.3.4 Release Notes / January 15, 2018
+
+
+Mesa 17.3.4 is a bug fix release which fixes bugs found since the 17.3.3 
release.
+
+
+Mesa 17.3.4 implements the OpenGL 4.5 API, but the version reported by
+glGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) /
+glGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being used.
+Some drivers don't support all the features required in OpenGL 4.5.  OpenGL
+4.5 is only available if requested at context creation
+because compatibility contexts are not supported.
+
+
+
+SHA256 checksums
+
+TBD
+
+
+
+New features
+None
+
+
+Bug fixes
+
+
+
+https://bugs.freedesktop.org/show_bug.cgi?id=90311";>Bug 90311 
- Fail to build libglx with clang at linking stage
+
+https://bugs.freedesktop.org/show_bug.cgi?id=101442";>Bug 
101442 - Piglit shaders@ssa@fs-if-def-else-break fails with sb but 
passes with R600_DEBUG=nosb
+
+https://bugs.freedesktop.org/show_bug.cgi?id=102435";>Bug 
102435 - [skl,kbl] [drm] GPU HANG: ecode 9:0:0x86df7cf9, in csgo_linux64 
[4947], reason: Hang on rcs, action: reset
+
+https://bugs.freedesktop.org/show_bug.cgi?id=103006";>Bug 
103006 - [OpenGL CTS] [HSW] 
KHR-GL45.vertex_attrib_binding.basic-inputL-case1
+
+https://bugs.freedesktop.org/show_bug.cgi?id=103626";>Bug 
103626 - [SNB] ES3-CTS.functional.shaders.precision
+
+https://bugs.freedesktop.org/show_bug.cgi?id=104163";>Bug 
104163 - [GEN9+] 2-3% perf drop in GfxBench Manhattan 3.1 from "i965: 
Disable regular fast-clears (CCS_D) on gen9+"
+
+https://bugs.freedesktop.org/show_bug.cgi?id=104383";>Bug 
104383 - [KBL] Intel GPU hang with firefox
+
+https://bugs.freedesktop.org/show_bug.cgi?id=104411";>Bug 
104411 - [CCS] lemonbar-xft GPU hang
+
+https://bugs.freedesktop.org/show_bug.cgi?id=104487";>Bug 
104487 - [KBL] portal2_linux GPU hang
+
+https://bugs.freedesktop.org/show_bug.cgi?id=104711";>Bug 
104711 - [skl CCS] Oxenfree (unity engine game) hangs GPU
+
+https://bugs.freedesktop.org/show_bug.cgi?id=104741";>Bug 
104741 - Graphic corruption for Android apps Telegram and KineMaster
+
+https://bugs.freedesktop.org/show_bug.cgi?id=104745";>Bug 
104745 - HEVC VDPAU decoding broken on RX 460 with UVD Firmware v1.130
+
+https://bugs.freedesktop.org/show_bug.cgi?id=104818";>Bug 
104818 - mesa fails to build on ia64
+
+
+
+
+Changes
+
+Andres Gomez (1):
+
+  i965: perform 2 uploads with dual slot *64*PASSTHRU formats on 
gen<8
+
+
+Bas Nieuwenhuizen (10):
+
+  radv: Fix ordering issue in meta memory allocation failure path.
+  radv: Fix memory allocation failure path in compute resolve init.
+  radv: Fix freeing meta state if the device pipeline cache fails to 
allocate.
+  radv: Fix fragment resolve init memory allocation failure paths.
+  radv: Fix bufimage failure deallocation.
+  radv: Init variant entry with memset.
+  radv: Don't allow 3d or 1d depth/stencil textures.
+  ac/nir: Use instance_rate_inputs per attribute, not per variable.
+  ac/nir: Use correct 32-bit component writemask for 64-bit SSBO 
stores.
+  ac/nir: Fix vector extraction if source vector has >4 elements.
+
+
+Boyuan Zhang (2):
+
+  radeon/vcn: add and manage render picture list
+  radeon/uvd: add and manage render picture list
+
+
+Chuck Atkins (1):
+
+  configure.ac: add missing llvm dependencies to .pc files
+
+
+Dave Airlie (10):
+
+  r600/sb: fix a bug emitting ar load from a constant.
+  ac/nir: account for view index in the user sgpr allocation.
+  radv: add fs_key meta format support to resolve passes.
+  radv: don't use hw resolve for integer image formats
+  radv: don't use hw resolves for r16g16 norm formats.
+  radv: move spi_baryc_cntl to pipeline
+  r600/sb: insert the else clause when we might depart from a loop
+  radv: don't enable tc compat for d32s8 + 4/8 samples (v1.1)
+  radv/gfx9: fix block compression texture views. (v2)
+  virgl: also remove dimension on indirect.
+
+
+Eleni Maria Stea (1):
+
+  mesa: Fix function pointers initialization in status tracker
+
+
+Emil Velikov (18):
+
+  cherry-ignore: i965: Accept CONTEXT_ATTRIB_PRIORITY for 
brwCreateContext
+  cherry-ignore: swr: refactor swr_create_screen to allow for proper 
cleanup on error
+  cherry-ignore: anv: add explicit 18.0 only nomi

Mesa: tag mesa-17.3.4: mesa-17.3.4

2018-02-15 Thread Emil Velikov
Module: Mesa
Branch: refs/tags/mesa-17.3.4
Tag:b2e776ee0c9bb8ee6ec35ef4e4c36306385a9b6e
URL:
http://cgit.freedesktop.org/mesa/mesa/tag/?id=b2e776ee0c9bb8ee6ec35ef4e4c36306385a9b6e

Tagger: Emil Velikov 
Date:   Thu Feb 15 11:16:50 2018 +

mesa-17.3.4
___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (17.3): docs: add release notes for 17.3.4

2018-02-15 Thread Emil Velikov
Module: Mesa
Branch: 17.3
Commit: 2f9820c553c943f776513ddc2887fb6b1cf0f29a
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=2f9820c553c943f776513ddc2887fb6b1cf0f29a

Author: Emil Velikov 
Date:   Thu Feb 15 11:09:05 2018 +

docs: add release notes for 17.3.4

Signed-off-by: Emil Velikov 

---

 docs/relnotes/17.3.4.html | 274 ++
 1 file changed, 274 insertions(+)

diff --git a/docs/relnotes/17.3.4.html b/docs/relnotes/17.3.4.html
new file mode 100644
index 00..f9db0fb93a
--- /dev/null
+++ b/docs/relnotes/17.3.4.html
@@ -0,0 +1,274 @@
+http://www.w3.org/TR/html4/loose.dtd";>
+
+
+  
+  Mesa Release Notes
+  
+
+
+
+
+  The Mesa 3D Graphics Library
+
+
+
+
+
+Mesa 17.3.4 Release Notes / January 15, 2018
+
+
+Mesa 17.3.4 is a bug fix release which fixes bugs found since the 17.3.3 
release.
+
+
+Mesa 17.3.4 implements the OpenGL 4.5 API, but the version reported by
+glGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) /
+glGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being used.
+Some drivers don't support all the features required in OpenGL 4.5.  OpenGL
+4.5 is only available if requested at context creation
+because compatibility contexts are not supported.
+
+
+
+SHA256 checksums
+
+TBD
+
+
+
+New features
+None
+
+
+Bug fixes
+
+
+
+https://bugs.freedesktop.org/show_bug.cgi?id=90311";>Bug 90311 
- Fail to build libglx with clang at linking stage
+
+https://bugs.freedesktop.org/show_bug.cgi?id=101442";>Bug 
101442 - Piglit shaders@ssa@fs-if-def-else-break fails with sb but 
passes with R600_DEBUG=nosb
+
+https://bugs.freedesktop.org/show_bug.cgi?id=102435";>Bug 
102435 - [skl,kbl] [drm] GPU HANG: ecode 9:0:0x86df7cf9, in csgo_linux64 
[4947], reason: Hang on rcs, action: reset
+
+https://bugs.freedesktop.org/show_bug.cgi?id=103006";>Bug 
103006 - [OpenGL CTS] [HSW] 
KHR-GL45.vertex_attrib_binding.basic-inputL-case1
+
+https://bugs.freedesktop.org/show_bug.cgi?id=103626";>Bug 
103626 - [SNB] ES3-CTS.functional.shaders.precision
+
+https://bugs.freedesktop.org/show_bug.cgi?id=104163";>Bug 
104163 - [GEN9+] 2-3% perf drop in GfxBench Manhattan 3.1 from "i965: 
Disable regular fast-clears (CCS_D) on gen9+"
+
+https://bugs.freedesktop.org/show_bug.cgi?id=104383";>Bug 
104383 - [KBL] Intel GPU hang with firefox
+
+https://bugs.freedesktop.org/show_bug.cgi?id=104411";>Bug 
104411 - [CCS] lemonbar-xft GPU hang
+
+https://bugs.freedesktop.org/show_bug.cgi?id=104487";>Bug 
104487 - [KBL] portal2_linux GPU hang
+
+https://bugs.freedesktop.org/show_bug.cgi?id=104711";>Bug 
104711 - [skl CCS] Oxenfree (unity engine game) hangs GPU
+
+https://bugs.freedesktop.org/show_bug.cgi?id=104741";>Bug 
104741 - Graphic corruption for Android apps Telegram and KineMaster
+
+https://bugs.freedesktop.org/show_bug.cgi?id=104745";>Bug 
104745 - HEVC VDPAU decoding broken on RX 460 with UVD Firmware v1.130
+
+https://bugs.freedesktop.org/show_bug.cgi?id=104818";>Bug 
104818 - mesa fails to build on ia64
+
+
+
+
+Changes
+
+Andres Gomez (1):
+
+  i965: perform 2 uploads with dual slot *64*PASSTHRU formats on 
gen<8
+
+
+Bas Nieuwenhuizen (10):
+
+  radv: Fix ordering issue in meta memory allocation failure path.
+  radv: Fix memory allocation failure path in compute resolve init.
+  radv: Fix freeing meta state if the device pipeline cache fails to 
allocate.
+  radv: Fix fragment resolve init memory allocation failure paths.
+  radv: Fix bufimage failure deallocation.
+  radv: Init variant entry with memset.
+  radv: Don't allow 3d or 1d depth/stencil textures.
+  ac/nir: Use instance_rate_inputs per attribute, not per variable.
+  ac/nir: Use correct 32-bit component writemask for 64-bit SSBO 
stores.
+  ac/nir: Fix vector extraction if source vector has >4 elements.
+
+
+Boyuan Zhang (2):
+
+  radeon/vcn: add and manage render picture list
+  radeon/uvd: add and manage render picture list
+
+
+Chuck Atkins (1):
+
+  configure.ac: add missing llvm dependencies to .pc files
+
+
+Dave Airlie (10):
+
+  r600/sb: fix a bug emitting ar load from a constant.
+  ac/nir: account for view index in the user sgpr allocation.
+  radv: add fs_key meta format support to resolve passes.
+  radv: don't use hw resolve for integer image formats
+  radv: don't use hw resolves for r16g16 norm formats.
+  radv: move spi_baryc_cntl to pipeline
+  r600/sb: insert the else clause when we might depart from a loop
+  radv: don't enable tc compat for d32s8 + 4/8 samples (v1.1)
+  radv/gfx9: fix block compression texture views. (v2)
+  virgl: also remove dimension on indirect.
+
+
+Eleni Maria Stea (1):
+
+  mesa: Fix function pointers initialization in status tracker
+
+
+Emil Velikov (18):
+
+  cherry-ignore: i965: Accept CONTEXT_ATTRIB_PRIORITY for 
brwCreateContext
+  cherry-ignore: swr: refactor swr_create_screen to allow for proper 
cleanup on error
+  cherry-ignore: anv: add explicit 18.0 only nominations
+  cherry-ignore: radv: fix sample_mask_in loading. (v3.1)
+  c

Mesa (17.3): Update version to 17.3.4

2018-02-15 Thread Emil Velikov
Module: Mesa
Branch: 17.3
Commit: 5f2d38cc1d8593a687c578eb4488f3072f0d59d3
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=5f2d38cc1d8593a687c578eb4488f3072f0d59d3

Author: Emil Velikov 
Date:   Thu Feb 15 11:02:49 2018 +

Update version to 17.3.4

Signed-off-by: Emil Velikov 

---

 VERSION | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/VERSION b/VERSION
index d1c738c5f5..4abbb906a1 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-17.3.3
+17.3.4

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): nvc0: disable MS Images for sample_count == 1 on Maxwell

2018-02-15 Thread Karol Herbst
Module: Mesa
Branch: master
Commit: 7bc15090fcdc015891214c3f8c2d445707491951
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=7bc15090fcdc015891214c3f8c2d445707491951

Author: Karol Herbst 
Date:   Mon Feb  5 15:41:50 2018 +0100

nvc0: disable MS Images for sample_count == 1 on Maxwell

fixes KHR-GL45.multi_bind.dispatch_bind_textures on Maxwell

Suggested-by: Ilia Mirkin 
Signed-off-by: Karol Herbst 
Reviewed-by: Ilia Mirkin 

---

 src/gallium/drivers/nouveau/nvc0/nvc0_screen.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/gallium/drivers/nouveau/nvc0/nvc0_screen.c 
b/src/gallium/drivers/nouveau/nvc0/nvc0_screen.c
index 322382adce..225772cece 100644
--- a/src/gallium/drivers/nouveau/nvc0/nvc0_screen.c
+++ b/src/gallium/drivers/nouveau/nvc0/nvc0_screen.c
@@ -88,7 +88,7 @@ nvc0_screen_is_format_supported(struct pipe_screen *pscreen,
  PIPE_BIND_SHARED);
 
if (bindings & PIPE_BIND_SHADER_IMAGE) {
-  if (sample_count > 1 &&
+  if (sample_count > 0 &&
   nouveau_screen(pscreen)->class_3d >= GM107_3D_CLASS) {
  /* MS images are currently unsupported on Maxwell because they have to
   * be handled explicitly. */

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit