[Pdbg] [PATCH 1/1] sbefifo: Always use ADU for memory access
Amitay Isaacs
amitay at ozlabs.org
Tue Aug 20 15:38:18 AEST 2019
Signed-off-by: Amitay Isaacs <amitay at ozlabs.org>
---
libpdbg/sbefifo.c | 14 ++++++--------
1 file changed, 6 insertions(+), 8 deletions(-)
diff --git a/libpdbg/sbefifo.c b/libpdbg/sbefifo.c
index 249f115..a28897f 100644
--- a/libpdbg/sbefifo.c
+++ b/libpdbg/sbefifo.c
@@ -48,7 +48,7 @@ static int sbefifo_op_getmem(struct sbefifo *sbefifo,
uint16_t flags;
int rc;
- align = ci ? 8 : 128;
+ align = 8;
start_addr = addr & (~(uint64_t)(align-1));
end_addr = (addr + size + (align-1)) & (~(uint64_t)(align-1));
@@ -64,10 +64,9 @@ static int sbefifo_op_getmem(struct sbefifo *sbefifo,
PR_NOTICE("sbefifo: getmem addr=0x%016" PRIx64 ", len=%u\n",
start_addr, len);
+ flags = SBEFIFO_MEMORY_FLAG_PROC;
if (ci)
- flags = SBEFIFO_MEMORY_FLAG_PROC | SBEFIFO_MEMORY_FLAG_CI;
- else
- flags = SBEFIFO_MEMORY_FLAG_PBA;
+ flags |= SBEFIFO_MEMORY_FLAG_CI;
rc = sbefifo_mem_get(sbefifo->sf_ctx, start_addr, len, flags, &out);
@@ -90,7 +89,7 @@ static int sbefifo_op_putmem(struct sbefifo *sbefifo,
uint16_t flags;
int rc;
- align = ci ? 8 : 128;
+ align = 8;
if (addr & (align-1)) {
PR_ERROR("sbefifo: Address must be aligned to %d bytes\n", align);
@@ -111,10 +110,9 @@ static int sbefifo_op_putmem(struct sbefifo *sbefifo,
PR_NOTICE("sbefifo: putmem addr=0x%016"PRIx64", len=%u\n", addr, len);
+ flags = SBEFIFO_MEMORY_FLAG_PROC;
if (ci)
- flags = SBEFIFO_MEMORY_FLAG_PROC | SBEFIFO_MEMORY_FLAG_CI;
- else
- flags = SBEFIFO_MEMORY_FLAG_PBA;
+ flags |= SBEFIFO_MEMORY_FLAG_CI;
rc = sbefifo_mem_put(sbefifo->sf_ctx, addr, data, len, flags);
--
2.21.0
More information about the Pdbg
mailing list