#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)
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;
}
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",
.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 *