kconfig: use pkg-config for ncurses detection
[akaros.git] / kern / arch / riscv / kdebug.c
1 #include <assert.h>
2 #include <kdebug.h>
3 #include <pmap.h>
4 #include <process.h>
5 #include <string.h>
6
7 /* Here's the old backtrace, remove it once gen_backtrace is done: */
8 #if 0
9 void backtrace(void)
10 {
11         void **fp;
12         asm volatile ("move %0, s0" : "=r"(fp));
13
14         for (int i = 0; ; i++) {
15                 void *pc = fp[-1], *sp = fp[-2];
16                 printk("[%d] pc %p sp %p\n", i, pc, sp);
17                 if (pc == 0 || (void**)sp < fp)
18                         break;
19                 fp = (void**)sp;
20         }
21 }
22 #endif
23
24 void gen_backtrace(void (*pfunc)(void *, const char *), void *opaque)
25 {
26         printk("\n\tTODO: %s on riscv\n\n", __func__);
27 }
28
29 /* can either implement these, or use the x86 ones globally and limit the
30  * arch-indep stuff. */
31 size_t backtrace_list(uintptr_t pc, uintptr_t fp, uintptr_t *pcs,
32                       size_t nr_slots)
33 {
34         printk("\n\tTODO: %s on riscv\n\n", __func__);
35         return 0;
36 }
37
38 size_t backtrace_user_list(uintptr_t pc, uintptr_t fp, uintptr_t *pcs,
39                            size_t nr_slots)
40 {
41         printk("\n\tTODO: %s on riscv\n\n", __func__);
42         return 0;
43 }