1 /* $NetBSD: machdep.h,v 1.11 2012/08/16 18:22:40 matt Exp $ */ 2 3 #ifndef _ARM32_BOOT_MACHDEP_H_ 4 #define _ARM32_BOOT_MACHDEP_H_ 5 6 /* Define various stack sizes in pages */ 7 #ifndef IRQ_STACK_SIZE 8 #define IRQ_STACK_SIZE 1 9 #endif 10 #ifndef ABT_STACK_SIZE 11 #define ABT_STACK_SIZE 1 12 #endif 13 #ifndef UND_STACK_SIZE 14 #ifdef IPKDB 15 #define UND_STACK_SIZE 2 16 #else 17 #define UND_STACK_SIZE 1 18 #endif 19 #endif 20 #ifndef FIQ_STACK_SIZE 21 #define FIQ_STACK_SIZE 1 22 #endif 23 24 25 extern void (*cpu_reset_address)(void); 26 extern paddr_t cpu_reset_address_paddr; 27 28 extern u_int data_abort_handler_address; 29 extern u_int prefetch_abort_handler_address; 30 extern u_int undefined_handler_address; 31 32 extern char *booted_kernel; 33 34 /* misc prototypes used by the many arm machdeps */ 35 void halt(void); 36 void parse_mi_bootargs(char *); 37 void data_abort_handler(trapframe_t *); 38 void prefetch_abort_handler(trapframe_t *); 39 void undefinedinstruction_bounce(trapframe_t *); 40 void dumpsys(void); 41 42 /* 43 * note that we use void *as all the platforms have different ideas on what 44 * the structure is 45 */ 46 u_int initarm(void *); 47 48 /* from arm/arm32/intr.c */ 49 void dosoftints(void); 50 void set_spl_masks(void); 51 #ifdef DIAGNOSTIC 52 void dump_spl_masks(void); 53 #endif 54 #endif 55