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
22struct 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
34extern "C" {
35#endif
36
37struct mipsel_cpu_exception_context* mipsel_get_cpu_exception_context(int cpu);
38
39void 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