radv/si: fix optimal micro tile selection
authorDave Airlie <airlied@redhat.com>
Thu, 24 Nov 2016 00:04:35 +0000 (10:04 +1000)
committerDave Airlie <airlied@redhat.com>
Sun, 27 Nov 2016 23:03:20 +0000 (23:03 +0000)
The same fix was posted for radeonsi, so port it here.

Reviewed-by: Edward O'Callaghan <funfunctor@folklore1984.net>
Cc: "13.0" <mesa-stable@lists.freedesktop.org>
Signed-off-by: Dave Airlie <airlied@redhat.com>
src/amd/vulkan/radv_image.c

index 04e0861ef0a0378877a291ee23609ecf2bc01da0..c6318f28826dfac47b18da535e9565d18d5ea4df 100644 (file)
@@ -827,29 +827,29 @@ void radv_image_set_optimal_micro_tile_mode(struct radv_device *device,
                switch (micro_tile_mode) {
                case 0: /* displayable */
                        switch (image->surface.bpe) {
-                       case 8:
+                       case 1:
                             image->surface.tiling_index[0] = 10;
                             break;
-                       case 16:
+                       case 2:
                             image->surface.tiling_index[0] = 11;
                             break;
-                       default: /* 32, 64 */
+                       default: /* 4, 8 */
                             image->surface.tiling_index[0] = 12;
                             break;
                        }
                        break;
                case 1: /* thin */
                        switch (image->surface.bpe) {
-                       case 8:
+                       case 1:
                                 image->surface.tiling_index[0] = 14;
                                 break;
-                       case 16:
+                       case 2:
                                 image->surface.tiling_index[0] = 15;
                                 break;
-                       case 32:
+                       case 4:
                                 image->surface.tiling_index[0] = 16;
                                 break;
-                       default: /* 64, 128 */
+                       default: /* 8, 16 */
                                 image->surface.tiling_index[0] = 17;
                                 break;
                        }