[PATCH 1/1] sbi: make SBI_HARTMASK_MAX_BITS customizable, default 256
Heinrich Schuchardt
heinrich.schuchardt at canonical.com
Mon Jul 6 09:05:44 PDT 2026
Linux has raised the default number of 64bit CPUs to 256 in commit
0fa749771993 ("riscv: Raise default NR_CPUS for 64BIT to 256").
OpenSBI should use a matching value for SBI_HARTMASK_MAX_BITS.
Introduce configuration variable CONFIG_HARTMASK_MAX_BITS with
range 32-512 and default 256.
Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt at canonical.com>
---
include/sbi/sbi_hartmask.h | 2 +-
lib/sbi/Kconfig | 9 +++++++++
2 files changed, 10 insertions(+), 1 deletion(-)
diff --git a/include/sbi/sbi_hartmask.h b/include/sbi/sbi_hartmask.h
index 200ab6e5..339cd40f 100644
--- a/include/sbi/sbi_hartmask.h
+++ b/include/sbi/sbi_hartmask.h
@@ -20,7 +20,7 @@
* also represents the maximum number of HART ids generic OpenSBI
* can handle.
*/
-#define SBI_HARTMASK_MAX_BITS 128
+#define SBI_HARTMASK_MAX_BITS CONFIG_HARTMASK_MAX_BITS
/** Representation of hartmask */
struct sbi_hartmask {
diff --git a/lib/sbi/Kconfig b/lib/sbi/Kconfig
index e76aecca..24132eaa 100644
--- a/lib/sbi/Kconfig
+++ b/lib/sbi/Kconfig
@@ -2,6 +2,15 @@
menu "Generic SBI Support"
+config HARTMASK_MAX_BITS
+ int "Maximum number of hart mask bits (32-512)"
+ range 32 512
+ default 256
+ help
+ The hartmask is indexed using physical hart IDs so this setting
+ also represents the maximum number of hart IDs generic OpenSBI
+ can handle.
+
config DEFAULT_HART_STACK_SIZE
int "Default per-HART stack size (bytes)"
range 8192 1048576
--
2.53.0
More information about the opensbi
mailing list