aboutsummaryrefslogtreecommitdiff
path: root/platform
diff options
context:
space:
mode:
authorHimanshu Chauhan <hchauhan@ventanamicro.com>2023-07-12 10:04:31 +0530
committerAnup Patel <anup@brainfault.org>2023-07-13 12:12:58 +0530
commitd72f5f17478dfef3df817339a0f02cfdb77a1dc1 (patch)
treef0483952e9cda12e5a53ce4101349f112bc8c1ab /platform
parentcbcfc7b10c3a99349f184647c73448b0cb8482df (diff)
downloadopensbi-d72f5f17478dfef3df817339a0f02cfdb77a1dc1.zip
opensbi-d72f5f17478dfef3df817339a0f02cfdb77a1dc1.tar.gz
opensbi-d72f5f17478dfef3df817339a0f02cfdb77a1dc1.tar.bz2
lib: utils: Add detection of Smepmp from ISA string in FDT
- Add function to parse ISA string in FDT. - Set Smepmp feature bit in extensions if "smepmp" string is found in ISA string. Signed-off-by: Himanshu Chauhan <hchauhan@ventanamicro.com> Reviewed-by: Anup Patel <anup@brainfault.org>
Diffstat (limited to 'platform')
-rw-r--r--platform/generic/platform.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/platform/generic/platform.c b/platform/generic/platform.c
index 86811e6..34b87f7 100644
--- a/platform/generic/platform.c
+++ b/platform/generic/platform.c
@@ -211,6 +211,15 @@ static void generic_final_exit(void)
static int generic_extensions_init(struct sbi_hart_features *hfeatures)
{
+ int rc;
+
+ /* Parse the ISA string from FDT and enable the listed extensions */
+ rc = fdt_parse_isa_extensions(fdt_get_address(), current_hartid(),
+ &hfeatures->extensions);
+
+ if (rc)
+ return rc;
+
if (generic_plat && generic_plat->extensions_init)
return generic_plat->extensions_init(generic_plat_match,
hfeatures);