[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