summaryrefslogtreecommitdiff
path: root/lib/utils/ipi/fdt_ipi_clint.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/utils/ipi/fdt_ipi_clint.c')
-rw-r--r--lib/utils/ipi/fdt_ipi_clint.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/lib/utils/ipi/fdt_ipi_clint.c b/lib/utils/ipi/fdt_ipi_clint.c
index 05b66c6..c4ac0df 100644
--- a/lib/utils/ipi/fdt_ipi_clint.c
+++ b/lib/utils/ipi/fdt_ipi_clint.c
@@ -11,6 +11,8 @@
#include <sbi_utils/ipi/fdt_ipi.h>
#include <sbi_utils/sys/clint.h>
+static struct clint_data clint_ipi;
+
static int ipi_clint_cold_init(void *fdt, int nodeoff,
const struct fdt_match *match)
{
@@ -26,7 +28,13 @@ static int ipi_clint_cold_init(void *fdt, int nodeoff,
if (rc)
return rc;
- return clint_cold_ipi_init(addr, max_hartid + 1);
+ /* TODO: We should figure-out CLINT has_64bit_mmio from DT node */
+ clint_ipi.addr = addr;
+ clint_ipi.first_hartid = 0;
+ clint_ipi.hart_count = max_hartid + 1;
+ clint_ipi.has_64bit_mmio = TRUE;
+
+ return clint_cold_ipi_init(&clint_ipi);
}
static const struct fdt_match ipi_clint_match[] = {