mirror of
https://github.com/riscv-software-src/opensbi.git
synced 2025-08-24 15:31:22 +01:00
platform: Use one unified per-HART stack size macro for all platforms
As of today all platforms use 8KB of per-HART stack hence there is no need for each platform to define its own macro or use the magic number. Create one macro for all platforms. Platform still can use its own version if needed. Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Reviewed-by: Anup Patel <anup.patel@wdc.com>
This commit is contained in:
@@ -161,6 +161,9 @@ struct sbi_platform_operations {
|
||||
struct sbi_trap_info *out_trap);
|
||||
} __packed;
|
||||
|
||||
/** Platform default per-HART stack size for exception/interrupt handling */
|
||||
#define SBI_PLATFORM_DEFAULT_HART_STACK_SIZE 8192
|
||||
|
||||
/** Representation of a platform */
|
||||
struct sbi_platform {
|
||||
/**
|
||||
|
@@ -186,6 +186,6 @@ const struct sbi_platform platform = {
|
||||
.name = "Andes AE350",
|
||||
.features = SBI_PLATFORM_DEFAULT_FEATURES,
|
||||
.hart_count = AE350_HART_COUNT,
|
||||
.hart_stack_size = AE350_HART_STACK_SIZE,
|
||||
.hart_stack_size = SBI_PLATFORM_DEFAULT_HART_STACK_SIZE,
|
||||
.platform_ops_addr = (unsigned long)&platform_ops
|
||||
};
|
||||
|
@@ -12,7 +12,6 @@
|
||||
#define _AE350_PLATFORM_H_
|
||||
|
||||
#define AE350_HART_COUNT 4
|
||||
#define AE350_HART_STACK_SIZE 8192
|
||||
|
||||
#define AE350_PLIC_ADDR 0xe4000000
|
||||
#define AE350_PLIC_NUM_SOURCES 71
|
||||
|
@@ -201,6 +201,6 @@ const struct sbi_platform platform = {
|
||||
.name = "ARIANE RISC-V",
|
||||
.features = SBI_ARIANE_FEATURES,
|
||||
.hart_count = ARIANE_HART_COUNT,
|
||||
.hart_stack_size = 8192,
|
||||
.hart_stack_size = SBI_PLATFORM_DEFAULT_HART_STACK_SIZE,
|
||||
.platform_ops_addr = (unsigned long)&platform_ops
|
||||
};
|
||||
|
@@ -138,6 +138,6 @@ const struct sbi_platform platform = {
|
||||
.name = "Kendryte K210",
|
||||
.features = SBI_PLATFORM_HAS_TIMER_VALUE,
|
||||
.hart_count = K210_HART_COUNT,
|
||||
.hart_stack_size = K210_HART_STACK_SIZE,
|
||||
.hart_stack_size = SBI_PLATFORM_DEFAULT_HART_STACK_SIZE,
|
||||
.platform_ops_addr = (unsigned long)&platform_ops
|
||||
};
|
||||
|
@@ -12,7 +12,6 @@
|
||||
#include <sbi/riscv_io.h>
|
||||
|
||||
#define K210_HART_COUNT 2
|
||||
#define K210_HART_STACK_SIZE 8192
|
||||
|
||||
#define K210_UART_BAUDRATE 115200
|
||||
|
||||
|
@@ -21,7 +21,6 @@
|
||||
/* clang-format off */
|
||||
|
||||
#define VIRT_HART_COUNT 8
|
||||
#define VIRT_HART_STACK_SIZE 8192
|
||||
|
||||
#define VIRT_TEST_ADDR 0x100000
|
||||
#define VIRT_TEST_FINISHER_FAIL 0x3333
|
||||
@@ -159,6 +158,6 @@ const struct sbi_platform platform = {
|
||||
.name = "QEMU Virt Machine",
|
||||
.features = SBI_PLATFORM_DEFAULT_FEATURES,
|
||||
.hart_count = VIRT_HART_COUNT,
|
||||
.hart_stack_size = VIRT_HART_STACK_SIZE,
|
||||
.hart_stack_size = SBI_PLATFORM_DEFAULT_HART_STACK_SIZE,
|
||||
.platform_ops_addr = (unsigned long)&platform_ops
|
||||
};
|
||||
|
@@ -22,7 +22,6 @@
|
||||
/* clang-format off */
|
||||
|
||||
#define FU540_HART_COUNT 5
|
||||
#define FU540_HART_STACK_SIZE 8192
|
||||
|
||||
#define FU540_SYS_CLK 1000000000
|
||||
|
||||
@@ -232,6 +231,6 @@ const struct sbi_platform platform = {
|
||||
.name = "SiFive Freedom U540",
|
||||
.features = SBI_PLATFORM_DEFAULT_FEATURES,
|
||||
.hart_count = FU540_HART_COUNT,
|
||||
.hart_stack_size = FU540_HART_STACK_SIZE,
|
||||
.hart_stack_size = SBI_PLATFORM_DEFAULT_HART_STACK_SIZE,
|
||||
.platform_ops_addr = (unsigned long)&platform_ops
|
||||
};
|
||||
|
@@ -11,7 +11,6 @@
|
||||
/* clang-format off */
|
||||
|
||||
#define SPIKE_HART_COUNT 8
|
||||
#define SPIKE_HART_STACK_SIZE 8192
|
||||
|
||||
#define SPIKE_CLINT_ADDR 0x2000000
|
||||
|
||||
@@ -109,6 +108,6 @@ const struct sbi_platform platform = {
|
||||
.name = "Spike",
|
||||
.features = SBI_PLATFORM_DEFAULT_FEATURES,
|
||||
.hart_count = SPIKE_HART_COUNT,
|
||||
.hart_stack_size = SPIKE_HART_STACK_SIZE,
|
||||
.hart_stack_size = SBI_PLATFORM_DEFAULT_HART_STACK_SIZE,
|
||||
.platform_ops_addr = (unsigned long)&platform_ops
|
||||
};
|
||||
|
@@ -223,6 +223,6 @@ const struct sbi_platform platform = {
|
||||
.name = "platform-name",
|
||||
.features = SBI_PLATFORM_DEFAULT_FEATURES,
|
||||
.hart_count = 1,
|
||||
.hart_stack_size = 8192,
|
||||
.hart_stack_size = SBI_PLATFORM_DEFAULT_HART_STACK_SIZE,
|
||||
.platform_ops_addr = (unsigned long)&platform_ops
|
||||
};
|
||||
|
@@ -152,6 +152,6 @@ const struct sbi_platform platform = {
|
||||
.name = "T-HEAD Xuantie c910",
|
||||
.features = SBI_THEAD_FEATURES,
|
||||
.hart_count = C910_HART_COUNT,
|
||||
.hart_stack_size = C910_HART_STACK_SIZE,
|
||||
.hart_stack_size = SBI_PLATFORM_DEFAULT_HART_STACK_SIZE,
|
||||
.platform_ops_addr = (unsigned long)&platform_ops
|
||||
};
|
||||
|
@@ -6,7 +6,6 @@
|
||||
#define _C910_PLATFORM_H_
|
||||
|
||||
#define C910_HART_COUNT 16
|
||||
#define C910_HART_STACK_SIZE 8192
|
||||
|
||||
#define SBI_THEAD_FEATURES \
|
||||
(SBI_PLATFORM_HAS_SCOUNTEREN | \
|
||||
|
Reference in New Issue
Block a user