1 /* 2 * Copyright 2005-2009, Haiku Inc. All rights reserved. 3 * Distributed under the terms of the MIT License. 4 * 5 * Authors: 6 * Axel Dörfler <axeld@pinc-software.de> 7 * Ingo Weinhold <bonefish@cs.tu-berlin.de> 8 */ 9 #ifndef _KERNEL_ARCH_MIPSEL_INT_H 10 #define _KERNEL_ARCH_MIPSEL_INT_H 11 12 13 #include <SupportDefs.h> 14 15 16 #warning IMPLEMENT arch_int.h 17 18 19 #define NUM_IO_VECTORS 256 20 21 22 struct mipsel_cpu_exception_context { 23 void *kernel_handle_exception; // exception handler routine in the 24 // kernel 25 void *exception_context; // the virtual address of this 26 // structure 27 void *kernel_stack; // kernel stack for the current thread 28 29 uint32 scratch[8]; // scratch memory for free use in the 30 // early exception handling code 31 }; 32 33 #ifdef __cplusplus 34 extern "C" { 35 #endif 36 37 struct mipsel_cpu_exception_context* mipsel_get_cpu_exception_context(int cpu); 38 39 void mipsel_set_current_cpu_exception_context( 40 struct mipsel_cpu_exception_context *context); 41 // only called once per CPU 42 43 #ifdef __cplusplus 44 } 45 #endif 46 47 #endif /* _KERNEL_ARCH_MIPSEL_INT_H */ 48 49