summaryrefslogtreecommitdiff
path: root/platform
diff options
context:
space:
mode:
authorAtish Patra <[email protected]>2018-12-21 11:29:28 -0800
committerAtish Patra <[email protected]>2018-12-21 22:11:21 -0800
commit88b173b33b0810fbeff91ee589073efb9099a904 (patch)
tree468d39a310348468d559460bcc2a6fae0d1f69cc /platform
parenta6a5bb22a8c97f6191a0271f3dfe529038161675 (diff)
Introduce hart disabled parameter in platform.
As of now, uboot doesn't have support for SMP. Moreover, unleashed board has a E51 hart which doesn't not support S mode. We should only boot only 1 non-zero hart. Signed-off-by: Atish Patra <[email protected]>
Diffstat (limited to 'platform')
-rw-r--r--platform/kendryte/k210/platform.c1
-rw-r--r--platform/qemu/sifive_u/platform.c1
-rw-r--r--platform/qemu/virt/platform.c1
-rw-r--r--platform/sifive/hifive_u540/platform.c3
4 files changed, 6 insertions, 0 deletions
diff --git a/platform/kendryte/k210/platform.c b/platform/kendryte/k210/platform.c
index 8e565dd8..d3765d0e 100644
--- a/platform/kendryte/k210/platform.c
+++ b/platform/kendryte/k210/platform.c
@@ -81,6 +81,7 @@ struct sbi_platform platform = {
.hart_count = PLAT_HART_COUNT,
.hart_stack_size = PLAT_HART_STACK_SIZE,
+ .disabled_hart_mask = 0,
.console_init = k210_console_init,
.console_putc = k210_console_putc,
diff --git a/platform/qemu/sifive_u/platform.c b/platform/qemu/sifive_u/platform.c
index 10db5db1..f01df1ef 100644
--- a/platform/qemu/sifive_u/platform.c
+++ b/platform/qemu/sifive_u/platform.c
@@ -104,6 +104,7 @@ struct sbi_platform platform = {
.features = SBI_PLATFORM_DEFAULT_FEATURES,
.hart_count = PLAT_HART_COUNT,
.hart_stack_size = PLAT_HART_STACK_SIZE,
+ .disabled_hart_mask = 0,
.pmp_region_count = sifive_u_pmp_region_count,
.pmp_region_info = sifive_u_pmp_region_info,
.cold_final_init = sifive_u_cold_final_init,
diff --git a/platform/qemu/virt/platform.c b/platform/qemu/virt/platform.c
index de407732..9e006744 100644
--- a/platform/qemu/virt/platform.c
+++ b/platform/qemu/virt/platform.c
@@ -105,6 +105,7 @@ struct sbi_platform platform = {
.features = SBI_PLATFORM_DEFAULT_FEATURES,
.hart_count = PLAT_HART_COUNT,
.hart_stack_size = PLAT_HART_STACK_SIZE,
+ .disabled_hart_mask = 0,
.pmp_region_count = virt_pmp_region_count,
.pmp_region_info = virt_pmp_region_info,
.cold_final_init = virt_cold_final_init,
diff --git a/platform/sifive/hifive_u540/platform.c b/platform/sifive/hifive_u540/platform.c
index d3ed8042..646ce273 100644
--- a/platform/sifive/hifive_u540/platform.c
+++ b/platform/sifive/hifive_u540/platform.c
@@ -27,6 +27,8 @@
#define SIFIVE_U_UART1_ADDR 0x10011000
#define SIFIVE_UART_BAUDRATE 115200
+#define SIFIVE_U_HARITD_ENABLED 1
+
/* PRCI clock related macros */
//TODO: Do we need a separate driver for this ?
#define SIFIVE_PRCI_BASE_ADDR 0x10000000
@@ -122,6 +124,7 @@ struct sbi_platform platform = {
.features = SBI_PLATFORM_DEFAULT_FEATURES,
.hart_count = PLAT_HART_COUNT,
.hart_stack_size = PLAT_HART_STACK_SIZE,
+ .disabled_hart_mask = ~(1 << SIFIVE_U_HARITD_ENABLED),
.pmp_region_count = sifive_u_pmp_region_count,
.pmp_region_info = sifive_u_pmp_region_info,
.cold_final_init = sifive_u_cold_final_init,