blob: ae64d909aef1147073db64867a44c52ea96475da (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
|
#ifndef __DDE_26_H
#define __DDE_26_H
#include <ddekit/thread.h>
#define WARN_UNIMPL printk("unimplemented: %s\n", __FUNCTION__)
/** \defgroup dde26
*
* DDELinux2.6 subsystems
*/
/** Initialize process subsystem.
* \ingroup dde26
*/
int l4dde26_process_init(void);
/** Initialize DDELinux locks.
* \ingroup dde26
*/
void l4dde26_init_locks(void);
/** Initialize SoftIRQ subsystem.
* \ingroup dde26
*/
void l4dde26_softirq_init(void);
/** Initialize timer subsystem.
* \ingroup dde26
*/
void l4dde26_init_timers(void);
/** Initialize PCI subsystem.
* \ingroup dde26
*/
void l4dde26_init_pci(void);
/** Perform initcalls.
*
* This will run all initcalls from DDELinux. This includes
* initcalles specified in the DDELinux libraries as well as
* initcalls from the device driver.
*
* \ingroup dde26
*/
void l4dde26_do_initcalls(void);
/** Initialize memory subsystem.
* \ingroup dde26
*/
void l4dde26_kmalloc_init(void);
/** Initialize calling thread to become a DDEKit worker.
*
* This needs to be called for every thread that will issue
* calls to Linux functions.
*
* \ingroup dde26
*/
int l4dde26_process_add_worker(void);
/** Enable an existing DDEKit thread to run as a DDELinux process.
*
* We need to call this for existing DDEKit threads (e.g., timers)
* that will end up running Linux code (e.g. timer functions).
*
* \ingroup dde26
*/
int l4dde26_process_from_ddekit(ddekit_thread_t *t);
/** Perform vital initcalls to initialize DDELinux 2.6
*
* This includes initialization of the DDEKit.
*
* \ingroup dde26
*/
void l4dde26_init(void);
#endif
|