ACPI changes for DMAR and new directory hierarchy.
[akaros.git] / kern / arch / riscv / trap.c
index d87abec..b41cd3e 100644 (file)
@@ -24,7 +24,7 @@
  *
  * TODO: if these end up becoming contended cache lines, move this to
  * per_cpu_info. */
-uintptr_t core_stacktops[MAX_NUM_CPUS] = {0xcafebabe, 0};
+uintptr_t core_stacktops[MAX_NUM_CORES] = {0xcafebabe, 0};
 
 void
 advance_pc(struct hw_trapframe *state)
@@ -112,14 +112,23 @@ format_trapframe(struct hw_trapframe *hw_tf, char* buf, int bufsz)
        return len;
 }
 
-void
-print_trapframe(struct hw_trapframe *hw_tf)
+void print_trapframe(struct hw_trapframe *hw_tf)
 {
        char buf[1024];
        int len = format_trapframe(hw_tf, buf, sizeof(buf));
        cputbuf(buf,len);
 }
 
+void print_swtrapframe(struct sw_trapframe *sw_tf)
+{
+       #warning "fix me"
+}
+
+void print_vmtrapframe(struct vm_trapframe *vm_tf)
+{
+       #warning "fix me"
+}
+
 static void exit_halt_loop(struct hw_trapframe *hw_tf)
 {
        extern char after_cpu_halt;
@@ -182,7 +191,6 @@ unhandled_trap(struct hw_trapframe *state, const char* name)
                spin_unlock(&screwup_lock);
 
                assert(current);
-               enable_irq();
                proc_destroy(current);
        }
 }
@@ -356,18 +364,13 @@ void send_nmi(uint32_t os_coreid)
        printk("%s not implemented\n", __FUNCTION);
 }
 
-void register_raw_irq(unsigned int vector, isr_t handler, void *data)
-{
-       printk("%s not implemented\n", __FUNCTION);
-}
-
-void unregister_raw_irq(unsigned int vector, isr_t handler, void *data)
+int register_irq(int irq, isr_t handler, void *irq_arg, uint32_t tbdf)
 {
        printk("%s not implemented\n", __FUNCTION);
+       return -1;
 }
 
-int register_dev_irq(int irq, void (*handler)(struct hw_trapframe *, void *),
-                     void *irq_arg)
+int route_irqs(int cpu_vec, int coreid)
 {
        printk("%s not implemented\n", __FUNCTION);
        return -1;