Mesa (master): anv/cnl: Add #defines for MOCS and genX(x)

Anuj Phogat aphogat at kemper.freedesktop.org
Thu Jun 22 21:24:30 UTC 2017


Module: Mesa
Branch: master
Commit: 1e5a5d18d1711d74db33e96c6cabb0cef20b9ce7
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=1e5a5d18d1711d74db33e96c6cabb0cef20b9ce7

Author: Anuj Phogat <anuj.phogat at gmail.com>
Date:   Fri May 26 09:05:51 2017 -0700

anv/cnl: Add #defines for MOCS and genX(x)

Signed-off-by: Anuj Phogat <anuj.phogat at gmail.com>
Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>

---

 src/intel/vulkan/anv_private.h | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/src/intel/vulkan/anv_private.h b/src/intel/vulkan/anv_private.h
index fe6ac3bc1b..e5d88f2815 100644
--- a/src/intel/vulkan/anv_private.h
+++ b/src/intel/vulkan/anv_private.h
@@ -1018,6 +1018,17 @@ _anv_combine_address(struct anv_batch *batch, void *location,
       .IndextoMOCSTables                           = 1  \
    }
 
+/* Cannonlake MOCS defines are duplicates of Skylake MOCS defines. */
+#define GEN10_MOCS (struct GEN10_MEMORY_OBJECT_CONTROL_STATE) {  \
+      /* TC=LLC/eLLC, LeCC=WB, LRUM=3, L3CC=WB */              \
+      .IndextoMOCSTables                           = 2         \
+   }
+
+#define GEN10_MOCS_PTE {                                 \
+      /* TC=LLC/eLLC, LeCC=WB, LRUM=3, L3CC=WB */       \
+      .IndextoMOCSTables                           = 1  \
+   }
+
 struct anv_device_memory {
    struct anv_bo *                              bo;
    struct anv_memory_type *                     type;
@@ -2414,6 +2425,9 @@ ANV_DEFINE_NONDISP_HANDLE_CASTS(anv_shader_module, VkShaderModule)
 #  define genX(x) gen9_##x
 #  include "anv_genX.h"
 #  undef genX
+#  define genX(x) gen10_##x
+#  include "anv_genX.h"
+#  undef genX
 #endif
 
 #endif /* ANV_PRIVATE_H */




More information about the mesa-commit mailing list