diff options
| author | Heiko Stuebner <[email protected]> | 2022-10-04 18:42:26 +0200 |
|---|---|---|
| committer | Anup Patel <[email protected]> | 2022-10-13 09:52:06 +0530 |
| commit | 2f63f2465c42c64559e4f7b9d0183c2b47472019 (patch) | |
| tree | 34b9a5443f2efa471e7dd530f62eebc6d07286d7 /platform/generic/include | |
| parent | 4f2acb53e21af805e499f7f594a931af9b0623fd (diff) | |
platform: generic: add extensions_init handler and platform-override
Init of non-standard extensions is a platform-specific thing,
so allow generic platforms to do this via a platform-override.
Reviewed-by: Andrew Jones <[email protected]>
Reviewed-by: Guo Ren <[email protected]>
Reviewed-by: Anup Patel <[email protected]>
Signed-off-by: Heiko Stuebner <[email protected]>
Diffstat (limited to 'platform/generic/include')
| -rw-r--r-- | platform/generic/include/platform_override.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/platform/generic/include/platform_override.h b/platform/generic/include/platform_override.h index e55da251..7f1558dd 100644 --- a/platform/generic/include/platform_override.h +++ b/platform/generic/include/platform_override.h @@ -10,6 +10,7 @@ #ifndef __PLATFORM_OVERRIDE_H__ #define __PLATFORM_OVERRIDE_H__ +#include <sbi/sbi_hart.h> #include <sbi/sbi_types.h> #include <sbi/sbi_trap.h> @@ -22,6 +23,8 @@ struct platform_override { void (*early_exit)(const struct fdt_match *match); void (*final_exit)(const struct fdt_match *match); int (*fdt_fixup)(void *fdt, const struct fdt_match *match); + int (*extensions_init)(const struct fdt_match *match, + struct sbi_hart_features *hfeatures); int (*vendor_ext_check)(long extid, const struct fdt_match *match); int (*vendor_ext_provider)(long extid, long funcid, const struct sbi_trap_regs *regs, |
