ref: f801657f77f3923ec2388c25bdcb036c8019ba89
dir: /fns.h/
/* l.s */ void start(void *sp); /* main.c */ void main(void); void idlehands(void); void halt(void); void reboot(void); void confinit(void); void userinit(void); // void init0(void); /* interrupt handlers */ void _reset_handler(void); void _default_handler(void); void _hard_fault_handler(void); void _bus_fault_handler(void); void _usage_fault_handler(void); void _mem_manage_handler(void); void hard_fault_handler(int); void bus_fault_handler(int); void usage_fault_handler(int); void mem_manage_handler(int); /* trap.c */ // kprocchild void trapinit(void); /* thumb2.s extra */ void introff(void); void intron(void); void _idlehands(void); void coherence(void); /* div.s */ void _div(void); void _divu(void); void _mod(void); void _modu(void); /* clock.c */ void clockinit(void); void clockdeinit(void); void _wait(ulong); void clockcheck(void); void systickinit(void); /* sub.c */ void panic(char*, ...); /* print.c */ // print, sprint defined here void serwrite(char*, int); /* alloc.c */ void allocinit(void); void* smalloc(ulong); void* malloc(ulong); void* mallocz(ulong, int); // void* mallocalign(ulong size, ulong align, long offset, ulong span); void free(void*); void* realloc(void*, ulong); ulong msize(void*); void setmalloctag(void*, ulong); void setrealloctag(void*, ulong); ulong getmalloctag(void*); ulong getrealloctag(void*); void allocdump(void); /* dma.c */ void dmainit(void); void dmaenable(void); void dma_write(DmaChannel, void*, ulong); ulong dma_read(DmaChannel, void*, ulong n); //void dma_readn(DmaChannel, void, ulong n); /* gpio.c */ void gpioinit(void); void afioinit(void); int gpio_set(GpioLine, uint); void gpio_toggle_n(int); /* uart.c */ void uartinit(void); void uart1_putc(int); int uart1_getc(void); void uart2_putc(int); int uart2_getc(void); /* operating system */ #define waserror() (up->nerrlab++, setlabel(&up->errlab[up->nerrlab-1])) #define procsave(p) /* Save the mach part of the current */ /* process state, no need for one cpu */ uvlong fastticks(uvlong *hz); void hzclock(Ureg*); #include "port/portfns.h" Proc* newprog(char *name, void (*func)(void *), void *arg, int flags, uvlong kstacksz);