[Pdbg] [PATCH v5 18/19] libpdbg: Enable sbefifo backend

Amitay Isaacs amitay at ozlabs.org
Thu Apr 30 12:34:39 AEST 2020


Signed-off-by: Amitay Isaacs <amitay at ozlabs.org>
Reviewed-by: Alistair Popple <alistair at popple.id.au>
---
 libpdbg/dtb.c | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/libpdbg/dtb.c b/libpdbg/dtb.c
index 6a75de4..a549c2f 100644
--- a/libpdbg/dtb.c
+++ b/libpdbg/dtb.c
@@ -43,6 +43,7 @@
 #include "p9-host.dt.h"
 #include "p8-cronus.dt.h"
 #include "p9-cronus.dt.h"
+#include "p9-sbefifo.dt.h"
 
 #include "p8.dt.h"
 #include "p9.dt.h"
@@ -93,6 +94,8 @@ static enum pdbg_backend default_backend(void)
 			return PDBG_BACKEND_HOST;
 		else if (!strcmp(tmp, "cronus"))
 			return PDBG_BACKEND_CRONUS;
+		else if (!strcmp(tmp, "sbefifo"))
+			return PDBG_BACKEND_SBEFIFO;
 	}
 
 	rc = access(XSCOM_BASE_PATH, F_OK);
@@ -419,6 +422,24 @@ struct pdbg_dtb *pdbg_default_dtb(void *system_fdt)
 		}
 		break;
 
+	case PDBG_BACKEND_SBEFIFO:
+		if (!pdbg_backend_option) {
+			pdbg_log(PDBG_ERROR, "No system type specified\n");
+			pdbg_log(PDBG_ERROR, "Use p9\n");
+			return NULL;
+		}
+
+		if (!strcmp(pdbg_backend_option, "p9")) {
+			if (!dtb->backend.fdt)
+				dtb->backend.fdt = &_binary_p9_sbefifo_dtb_o_start;
+			if (!dtb->system.fdt)
+				dtb->system.fdt = &_binary_p9_dtb_o_start;
+		} else {
+			pdbg_log(PDBG_ERROR, "Invalid system type %s\n", pdbg_backend_option);
+			pdbg_log(PDBG_ERROR, "Use p9\n");
+		}
+		break;
+
 	default:
 		pdbg_log(PDBG_WARNING, "Unable to determine a valid default backend, using fake backend for testing purposes\n");
 		/* Fall through */
-- 
2.25.4



More information about the Pdbg mailing list