summaryrefslogtreecommitdiff
path: root/lib/sbi/sbi_fifo.c
diff options
context:
space:
mode:
authorJukka Laitinen <jukka.laitinen@iki.fi>2022-01-19 12:20:17 +0300
committerAnup Patel <anup@brainfault.org>2022-01-21 19:28:12 +0300
commit5d025eb2353550eadbd2fa9b8083a92fe9b07bd9 (patch)
treed894553a47e62e5224780e2836a4648bc778c9e8 /lib/sbi/sbi_fifo.c
parentfb688d9e9d4099d6945c9e460b9cd2c8c4d8a29b (diff)
downloadopensbi-5d025eb2353550eadbd2fa9b8083a92fe9b07bd9.tar.xz
lib: fix pointer of type 'void *' used in arithmetic
Using "void *" in arithmetic causes errors with strict compiler settings: "error: pointer of type 'void *' used in arithmetic [-Werror=pointer-arith]" Avoid these by calculating on "char *" where 1-byte data size is assumed. Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae> Reviewed-by: Dong Du <Dd_nirvana@sjtu.edu.cn> Reviewed-by: Xiang W <wxjstz@126.com> Reviewed-by: Anup Patel <anup@brainfault.org>
Diffstat (limited to 'lib/sbi/sbi_fifo.c')
-rw-r--r--lib/sbi/sbi_fifo.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/lib/sbi/sbi_fifo.c b/lib/sbi/sbi_fifo.c
index 589cc18..68d6039 100644
--- a/lib/sbi/sbi_fifo.c
+++ b/lib/sbi/sbi_fifo.c
@@ -66,7 +66,7 @@ static inline void __sbi_fifo_enqueue(struct sbi_fifo *fifo, void *data)
if (head >= fifo->num_entries)
head = head - fifo->num_entries;
- sbi_memcpy(fifo->queue + head * fifo->entry_size, data, fifo->entry_size);
+ sbi_memcpy((char *)fifo->queue + head * fifo->entry_size, data, fifo->entry_size);
fifo->avail++;
}
@@ -142,7 +142,7 @@ int sbi_fifo_inplace_update(struct sbi_fifo *fifo, void *in,
index = fifo->tail + i;
if (index >= fifo->num_entries)
index -= fifo->num_entries;
- entry = (void *)fifo->queue + (u32)index * fifo->entry_size;
+ entry = (char *)fifo->queue + (u32)index * fifo->entry_size;
ret = fptr(in, entry);
if (ret == SBI_FIFO_SKIP || ret == SBI_FIFO_UPDATED) {
@@ -184,7 +184,7 @@ int sbi_fifo_dequeue(struct sbi_fifo *fifo, void *data)
return SBI_ENOENT;
}
- sbi_memcpy(data, fifo->queue + (u32)fifo->tail * fifo->entry_size,
+ sbi_memcpy(data, (char *)fifo->queue + (u32)fifo->tail * fifo->entry_size,
fifo->entry_size);
fifo->avail--;