aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/sbi/sbi_hart.h2
-rw-r--r--lib/sbi/sbi_hart.c3
-rw-r--r--lib/utils/fdt/fdt_helper.c1
3 files changed, 6 insertions, 0 deletions
diff --git a/include/sbi/sbi_hart.h b/include/sbi/sbi_hart.h
index e60f415..fe1124a 100644
--- a/include/sbi/sbi_hart.h
+++ b/include/sbi/sbi_hart.h
@@ -40,6 +40,8 @@ enum sbi_hart_extensions {
SBI_HART_EXT_ZICNTR,
/** HART has Zihpm extension */
SBI_HART_EXT_ZIHPM,
+ /** HART has Zkr extension */
+ SBI_HART_EXT_ZKR,
/** Hart has Smcntrpmf extension */
SBI_HART_EXT_SMCNTRPMF,
diff --git a/lib/sbi/sbi_hart.c b/lib/sbi/sbi_hart.c
index 29d6481..569596f 100644
--- a/lib/sbi/sbi_hart.c
+++ b/lib/sbi/sbi_hart.c
@@ -678,6 +678,9 @@ static inline char *sbi_hart_extension_id2string(int ext)
case SBI_HART_EXT_ZIHPM:
estr = "zihpm";
break;
+ case SBI_HART_EXT_ZKR:
+ estr = "zkr";
+ break;
case SBI_HART_EXT_SMEPMP:
estr = "smepmp";
break;
diff --git a/lib/utils/fdt/fdt_helper.c b/lib/utils/fdt/fdt_helper.c
index 9ae7f09..35be7ba 100644
--- a/lib/utils/fdt/fdt_helper.c
+++ b/lib/utils/fdt/fdt_helper.c
@@ -376,6 +376,7 @@ static int fdt_parse_isa_one_hart(const char *isa, unsigned long *extensions)
}
set_multi_letter_ext("smepmp", SBI_HART_EXT_SMEPMP);
+ set_multi_letter_ext("zkr", SBI_HART_EXT_ZKR);
#undef set_multi_letter_ext
}