aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorAnup Patel <apatel@ventanamicro.com>2024-12-22 11:16:13 +0530
committerAnup Patel <anup@brainfault.org>2024-12-22 11:16:13 +0530
commit06754612f3617b8a162a42e37175d7e04b71246f (patch)
tree6a7f95dc8ef80551140cc5b9bb66376b6505f75c /include
parentd539d64a23bbd64ba324eed595449bcc9c7be0cb (diff)
downloadopensbi-06754612f3617b8a162a42e37175d7e04b71246f.tar.gz
opensbi-06754612f3617b8a162a42e37175d7e04b71246f.tar.bz2
opensbi-06754612f3617b8a162a42e37175d7e04b71246f.zip
lib: sbi: Print list of available SBI extensions at boot-time
Add boot-time prints for list of available standard and experimental SBI extensions. Signed-off-by: Anup Patel <apatel@ventanamicro.com>
Diffstat (limited to 'include')
-rw-r--r--include/sbi/sbi_ecall.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/include/sbi/sbi_ecall.h b/include/sbi/sbi_ecall.h
index 0b35eff7..88a69bb3 100644
--- a/include/sbi/sbi_ecall.h
+++ b/include/sbi/sbi_ecall.h
@@ -30,6 +30,8 @@ struct sbi_ecall_return {
struct sbi_ecall_extension {
/* head is used by the extension list */
struct sbi_dlist head;
+ /* short name of the extension */
+ char name[8];
/*
* extid_start and extid_end specify the range for this extension. As
* the initial range may be wider than the valid runtime range, the
@@ -38,6 +40,8 @@ struct sbi_ecall_extension {
*/
unsigned long extid_start;
unsigned long extid_end;
+ /* flag showing whether given extension is experimental or not */
+ bool experimental;
/*
* register_extensions
*
@@ -83,6 +87,8 @@ void sbi_ecall_set_impid(unsigned long impid);
struct sbi_ecall_extension *sbi_ecall_find_extension(unsigned long extid);
+void sbi_ecall_get_extensions_str(char *exts_str, int exts_str_size, bool experimental);
+
int sbi_ecall_register_extension(struct sbi_ecall_extension *ext);
void sbi_ecall_unregister_extension(struct sbi_ecall_extension *ext);