intel/nir: Lower things with > 4 components in lower_mem_access_bit_sizes
[mesa.git] / src / intel / isl / isl_drm.c
index ef80e42fdf71e8af9ad6487f24c05e1abbddbe09..c13a26c31ce15de61794cb3313fb490f1fc1fb31 100644 (file)
 #include <assert.h>
 #include <stdlib.h>
 
-#include <drm_fourcc.h>
-#include <i915_drm.h>
+#include "drm-uapi/drm_fourcc.h"
+#include "drm-uapi/i915_drm.h"
 
 #include "isl.h"
-#include "common/gen_device_info.h"
+#include "dev/gen_device_info.h"
 
 uint32_t
 isl_tiling_to_i915_tiling(enum isl_tiling tiling)
@@ -41,13 +41,14 @@ isl_tiling_to_i915_tiling(enum isl_tiling tiling)
       return I915_TILING_X;
 
    case ISL_TILING_Y0:
+   case ISL_TILING_HIZ:
+   case ISL_TILING_CCS:
       return I915_TILING_Y;
 
    case ISL_TILING_W:
    case ISL_TILING_Yf:
    case ISL_TILING_Ys:
-   case ISL_TILING_HIZ:
-   case ISL_TILING_CCS:
+   case ISL_TILING_GEN12_CCS:
       return I915_TILING_NONE;
    }
 
@@ -71,7 +72,7 @@ isl_tiling_from_i915_tiling(uint32_t tiling)
    unreachable("Invalid i915 tiling");
 }
 
-struct isl_drm_modifier_info modifier_info[] = {
+static const struct isl_drm_modifier_info modifier_info[] = {
    {
       .modifier = DRM_FORMAT_MOD_NONE,
       .name = "DRM_FORMAT_MOD_NONE",
@@ -87,6 +88,20 @@ struct isl_drm_modifier_info modifier_info[] = {
       .name = "I915_FORMAT_MOD_Y_TILED",
       .tiling = ISL_TILING_Y0,
    },
+   {
+      .modifier = I915_FORMAT_MOD_Y_TILED_CCS,
+      .name = "I915_FORMAT_MOD_Y_TILED_CCS",
+      .tiling = ISL_TILING_Y0,
+      .aux_usage = ISL_AUX_USAGE_CCS_E,
+      .supports_clear_color = false,
+   },
+   {
+      .modifier = I915_FORMAT_MOD_Y_TILED_GEN12_RC_CCS,
+      .name = "I915_FORMAT_MOD_Y_TILED_GEN12_RC_CCS",
+      .tiling = ISL_TILING_Y0,
+      .aux_usage = ISL_AUX_USAGE_GEN12_CCS_E,
+      .supports_clear_color = false,
+   },
 };
 
 const struct isl_drm_modifier_info *