aboutsummaryrefslogtreecommitdiff
path: root/arch/riscv64/kernel/smp.c
diff options
context:
space:
mode:
authorKimplul <kimi.h.kuparinen@gmail.com>2024-07-06 23:37:11 +0300
committerKimplul <kimi.h.kuparinen@gmail.com>2024-07-06 23:37:11 +0300
commit3fedbb6e1f849c5e0a4033d68201d60c2fc48121 (patch)
treebd219cef69a19938ecf453c3c3bb76fc13bd31a9 /arch/riscv64/kernel/smp.c
parent3528f88fc36df6964c0efed784ae223cfe93544e (diff)
downloadkmi-3fedbb6e1f849c5e0a4033d68201d60c2fc48121.tar.gz
kmi-3fedbb6e1f849c5e0a4033d68201d60c2fc48121.zip
core bringup + various warnings
+ dbg_fdt() is apparently broken, possibly due to UB or something, but it causes some issues with optimizations enabled. Remove it temporarily
Diffstat (limited to 'arch/riscv64/kernel/smp.c')
-rw-r--r--arch/riscv64/kernel/smp.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/arch/riscv64/kernel/smp.c b/arch/riscv64/kernel/smp.c
index 8d04491..74cc930 100644
--- a/arch/riscv64/kernel/smp.c
+++ b/arch/riscv64/kernel/smp.c
@@ -93,8 +93,9 @@ void smp_bringup(struct vmem *b, void *fdt)
/** @todo try to remember to free these as well */
smp_init_stacks[hartid] = (void *)alloc_page(BASE_PAGE) +
BASE_PAGE_SIZE;
- r = sbi_hart_start(hartid,
- (unsigned long)__pa(riscv_bringup), satp);
+
+ pm_t bringup = (pm_t)__pa(riscv_bringup);
+ r = sbi_hart_start(hartid, bringup, satp);
if (r.error) {
warn("failed bringing up hart %ld: %ld\n",