]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
drm/etnaviv: dump: fix sparse warnings
authorMarc Kleine-Budde <mkl@pengutronix.de>
Wed, 23 Dec 2020 19:51:10 +0000 (20:51 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 5 Dec 2024 09:59:32 +0000 (10:59 +0100)
[ Upstream commit 03a2753936e85beb8239fd20ae3fb2ce90209212 ]

This patch fixes the following sparse warnings, by adding the missing endianess
conversion functions.

| etnaviv/etnaviv_dump.c:78:26: warning: restricted __le32 degrades to integer
| etnaviv/etnaviv_dump.c:88:26: warning: incorrect type in assignment (different base types)
| etnaviv/etnaviv_dump.c:88:26:    expected restricted __le32 [usertype] reg
| etnaviv/etnaviv_dump.c:88:26:    got unsigned short const
| etnaviv/etnaviv_dump.c:89:28: warning: incorrect type in assignment (different base types)
| etnaviv/etnaviv_dump.c:89:28:    expected restricted __le32 [usertype] value
| etnaviv/etnaviv_dump.c:89:28:    got unsigned int
| etnaviv/etnaviv_dump.c:210:43: warning: incorrect type in assignment (different base types)
| etnaviv/etnaviv_dump.c:210:43:    expected restricted __le32
| etnaviv/etnaviv_dump.c:210:43:    got long

Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Stable-dep-of: 37dc4737447a ("drm/etnaviv: hold GPU lock across perfmon sampling")
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/gpu/drm/etnaviv/etnaviv_dump.c

index 9d839b4fd8f78678535373ecab81603697248639..15bc7f20aed92bfcdae0a392dcc885eab843bf2d 100644 (file)
@@ -73,7 +73,7 @@ static void etnaviv_core_dump_header(struct core_dump_iterator *iter,
        hdr->file_size = cpu_to_le32(data_end - iter->data);
 
        iter->hdr++;
-       iter->data += hdr->file_size;
+       iter->data += le32_to_cpu(hdr->file_size);
 }
 
 static void etnaviv_core_dump_registers(struct core_dump_iterator *iter,
@@ -83,8 +83,8 @@ static void etnaviv_core_dump_registers(struct core_dump_iterator *iter,
        unsigned int i;
 
        for (i = 0; i < ARRAY_SIZE(etnaviv_dump_registers); i++, reg++) {
-               reg->reg = etnaviv_dump_registers[i];
-               reg->value = gpu_read(gpu, etnaviv_dump_registers[i]);
+               reg->reg = cpu_to_le32(etnaviv_dump_registers[i]);
+               reg->value = cpu_to_le32(gpu_read(gpu, etnaviv_dump_registers[i]));
        }
 
        etnaviv_core_dump_header(iter, ETDUMP_BUF_REG, reg);
@@ -220,7 +220,7 @@ void etnaviv_core_dump(struct etnaviv_gpu *gpu)
                if (!IS_ERR(pages)) {
                        int j;
 
-                       iter.hdr->data[0] = bomap - bomap_start;
+                       iter.hdr->data[0] = cpu_to_le32((bomap - bomap_start));
 
                        for (j = 0; j < obj->base.size >> PAGE_SHIFT; j++)
                                *bomap++ = cpu_to_le64(page_to_phys(*pages++));