iris: use linear for 1D textures
authorKenneth Graunke <kenneth@whitecape.org>
Thu, 23 Aug 2018 06:39:38 +0000 (23:39 -0700)
committerKenneth Graunke <kenneth@whitecape.org>
Thu, 21 Feb 2019 18:26:08 +0000 (10:26 -0800)
This gets us the gen9 compact linear storage

src/gallium/drivers/iris/iris_resource.c

index 9eb5816d772ae16e6a37fa3edb9fe54fee5f4653..3f797ffbc9457cef03f7366b451a246cefceb244 100644 (file)
@@ -248,6 +248,9 @@ iris_resource_create_with_modifiers(struct pipe_screen *pscreen,
    if (modifiers_count == 0 || !modifiers) {
       if (has_depth) {
          modifier = I915_FORMAT_MOD_Y_TILED;
+      } else if (templ->target == PIPE_TEXTURE_1D ||
+                 templ->target == PIPE_TEXTURE_1D_ARRAY) {
+         modifier = DRM_FORMAT_MOD_LINEAR;
       } else if (templ->bind & PIPE_BIND_DISPLAY_TARGET) {
          /* Display is X-tiled for historical reasons. */
          modifier = I915_FORMAT_MOD_X_TILED;