etnaviv: handle 8 byte block in tiling
authorChristian Gmeiner <christian.gmeiner@gmail.com>
Tue, 1 May 2018 14:48:41 +0000 (16:48 +0200)
committerChristian Gmeiner <christian.gmeiner@gmail.com>
Mon, 25 Nov 2019 19:11:30 +0000 (20:11 +0100)
Signed-off-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Reviewed-by: Wladimir J. van der Laan <laanwj@gmail.com>
Reviewed-by: Jonathan Marek <jonathan@marek.ca>
src/gallium/drivers/etnaviv/etnaviv_tiling.c

index f4f85c1d6e6c8c5f41bf68f2fa24768b20656f33..113b39cc98fffec17124c70c58ad6f9618b13c6a 100644 (file)
@@ -68,7 +68,9 @@ etna_texture_tile(void *dest, void *src, unsigned basex, unsigned basey,
                   unsigned dst_stride, unsigned width, unsigned height,
                   unsigned src_stride, unsigned elmtsize)
 {
-   if (elmtsize == 4) {
+   if (elmtsize == 8) {
+      DO_TILE(uint64_t)
+   } else if (elmtsize == 4) {
       DO_TILE(uint32_t)
    } else if (elmtsize == 2) {
       DO_TILE(uint16_t)
@@ -84,7 +86,9 @@ etna_texture_untile(void *dest, void *src, unsigned basex, unsigned basey,
                     unsigned src_stride, unsigned width, unsigned height,
                     unsigned dst_stride, unsigned elmtsize)
 {
-   if (elmtsize == 4) {
+   if (elmtsize == 8) {
+      DO_UNTILE(uint64_t)
+   } else if (elmtsize == 4) {
       DO_UNTILE(uint32_t);
    } else if (elmtsize == 2) {
       DO_UNTILE(uint16_t);