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