Rev 3031 | Rev 3262 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
1616 | serge | 1 | |
1631 | serge | 2 | |
1616 | serge | 3 | |
4 | #include |
||
5 | |||
6 | #include |
||
3031 | serge | 7 | #include |
8 | #include |
||
1631 | serge | 9 | |
3031 | serge | 10 | |
1616 | serge | 11 | |
1631 | serge | 12 | |
1616 | serge | 13 | #define PG_SW 0x003 |
14 | |||
15 | |||
2967 | Serge | 16 | #define MANUAL_DESTROY 0x80000000 |
1616 | serge | 17 | |
18 | #define ENTER() dbgprintf("enter %s\n",__FUNCTION__) |
||
19 | |||
1627 | serge | 20 | #define FAIL() dbgprintf("fail %s\n",__FUNCTION__) |
21 | |||
3120 | serge | 22 | typedef struct |
1627 | serge | 23 | |
1616 | serge | 24 | u32_t code; |
25 | u32_t data[5]; |
||
26 | }kevent_t; |
||
27 | |||
28 | typedef union |
||
29 | |||
30 | struct |
||
31 | { |
||
32 | u32_t handle; |
||
33 | u32_t euid; |
||
34 | }; |
||
35 | u64_t raw; |
||
36 | }evhandle_t; |
||
37 | |||
38 | typedef struct |
||
39 | |||
40 | u32_t handle; |
||
41 | u32_t io_code; |
||
42 | void *input; |
||
43 | int inp_size; |
||
44 | void *output; |
||
45 | int out_size; |
||
46 | }ioctl_t; |
||
47 | |||
48 | typedef int (__stdcall *srv_proc_t)(ioctl_t *); |
||
49 | |||
50 | #define ERR_OK 0 |
||
51 | |||
52 | |||
53 | |||
54 | |||
55 | |||
56 | int ddk_init(struct ddk_params *params); |
||
57 | |||
58 | u32_t drvEntry(int, char *)__asm__("_drvEntry"); |
||
59 | |||
60 | |||
61 | |||
62 | |||
3031 | serge | 63 | #ifndef WARN_ON |
1616 | serge | 64 | |
3031 | serge | 65 | int __ret_warn_on = !!(condition); \ |
66 | if (unlikely(__ret_warn_on)) \ |
||
67 | __WARN(); \ |
||
68 | unlikely(__ret_warn_on); \ |
||
69 | }) |
||
70 | #endif |
||
71 | |||
72 | |||
1616 | serge | 73 | |
74 | |||
3031 | serge | 75 | // if (size != 0 && n > SIZE_MAX / size) |
76 | // return NULL; |
||
77 | return kmalloc(n * size, flags); |
||
78 | } |
||
79 | |||
80 | |||
81 | |||
82 |