1 #ifndef _P30_INTERNAL_H_
2 #define _P30_INTERNAL_H_
4 #include "build_check.h"
8 * Internals for the API level library that are not needed
9 * by the user application
12 #include <portals/p30.h>
14 extern int ptl_init; /* Has the library be initialized */
16 extern int ptl_ni_init(void);
17 extern int ptl_me_init(void);
18 extern int ptl_md_init(void);
19 extern int ptl_eq_init(void);
21 extern int ptl_me_ni_init(nal_t * nal);
22 extern int ptl_md_ni_init(nal_t * nal);
23 extern int ptl_eq_ni_init(nal_t * nal);
25 extern void ptl_ni_fini(void);
26 extern void ptl_me_fini(void);
27 extern void ptl_md_fini(void);
28 extern void ptl_eq_fini(void);
30 extern void ptl_me_ni_fini(nal_t * nal);
31 extern void ptl_md_ni_fini(nal_t * nal);
32 extern void ptl_eq_ni_fini(nal_t * nal);
34 static inline ptl_eq_t *
35 ptl_handle2usereq (ptl_handle_eq_t *handle)
37 /* EQ handles are a little wierd. On the "user" side, the cookie
38 * is just a pointer to a queue of events in shared memory. It's
39 * cb_eq_handle is the "real" handle which we pass when we
40 * call do_forward(). */
41 return (ptl_eq_t *)((unsigned long)handle->cookie);