1 |
/* Defintions for RIG, the rtmk interface generator. |
/* Defintions for RIG, the rtmk interface generator. |
2 |
Copyright 1999, 2000, 2001, 2002 Johan Rydberg, jrydberg@opencores.org. |
Copyright 1999-2002 Johan Rydberg, jrydberg@rtmk.org. |
3 |
|
|
4 |
This program is free software; you can redistribute it and/or modify |
This program is free software; you can redistribute it and/or modify |
5 |
it under the terms of the GNU General Public License as published by |
it under the terms of the GNU General Public License as published by |
15 |
along with this program; if not, write to the Free Software |
along with this program; if not, write to the Free Software |
16 |
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ |
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ |
17 |
|
|
18 |
#ifndef __rtmk_rig_h |
/* NOTE THAT THIS IS JUST A TEMPORARY VERSION OF THE HEADER. |
19 |
#define __rtmk_rig_h 1 |
THE REAL HEADER IS IN THE RIG PACKAGE. WE HAVE THIS FILE |
20 |
|
TO MAKE IT POSSIBLE TO COMPILE THE KERNEL WITHOUT A |
21 |
|
CROSS-COMPILER TOOLCHAIN. THIS FILE IS NOT INSTALLED. */ |
22 |
|
|
23 |
|
#ifndef _RTMK_RIG_H |
24 |
|
#define _RTMK_RIG_H 1 |
25 |
|
|
26 |
#include <rtmk/kern-return.h> |
#include <rtmk/kern-return.h> |
27 |
#include <rtmk/ipc-port.h> |
#include <rtmk/ipc-port.h> |
28 |
#include <rtmk/ipc-message.h> |
#include <rtmk/ipc-message.h> |
29 |
|
|
30 |
typedef kern_return_t (*__rig_demux_function_t) (struct rtmk_msg_header *, |
/* Standard rig reply message. Is really just the reply header. |
31 |
struct rtmk_msg_header *); |
Incoming arguments is located after the structure. */ |
32 |
|
struct rig_reply_msg |
33 |
#ifdef __GNUC__ |
{ |
34 |
#define __rig_strlen __builtin_strlen |
rtmk_msg_header_t msgh; |
35 |
#define __rig_memcpy __builtin_memcpy |
rtmk_msg_type_t retcode_type; |
36 |
#define __rig_strncpy strncpy |
kern_return_t retcode; |
37 |
#else |
}; |
38 |
#define __rig_strlen strlen |
|
39 |
#define __rig_memcpy memcpy |
/* Type defintion of the demux function. |
40 |
#define __rig_strncpy strncpy |
If we should send the reply in OUTP, this function |
41 |
#endif |
returns non-zero. */ |
42 |
|
typedef int (*rig_demux_function_t) (struct rtmk_msg_header *inp, |
43 |
#ifndef TRUE |
struct rtmk_msg_header *outp); |
44 |
# define TRUE 1 |
|
45 |
#endif |
#define RIG_RESULT_BAD_ID -300 |
46 |
|
|
47 |
#ifndef FALSE |
/* Initialize the RIG runtime interface. This may be |
48 |
# define FALSE 0 |
called several times. Called with USE_THREADVAR_P set to |
49 |
#endif |
non-zero if the runtime can use threadvars. */ |
|
|
|
|
#define RIG_RESULT_SUCCESS ((kern_return_t) 0) |
|
|
#define RIG_RESULT_NOTIFY ((kern_return_t) 201) |
|
|
#define RIG_RESULT_FAILURE ((kern_return_t) 202) |
|
|
|
|
|
/* Initialize the RIG runtime interface. */ |
|
50 |
extern void __rig_init (int use_threadvar_p); |
extern void __rig_init (int use_threadvar_p); |
51 |
|
|
52 |
/* Get reply port that can be used for RPC. */ |
/* Get reply port that can be used for RPC. */ |