2010-09-14 00:07:22 +04:00
|
|
|
|
2010-09-29 15:59:24 +04:00
|
|
|
|
2010-09-14 00:07:22 +04:00
|
|
|
#ifndef __DDK_H__
|
|
|
|
#define __DDK_H__
|
|
|
|
|
|
|
|
#include <kernel.h>
|
2010-09-29 15:59:24 +04:00
|
|
|
#include <mutex.h>
|
|
|
|
|
2010-09-14 00:07:22 +04:00
|
|
|
|
|
|
|
#define OS_BASE 0x80000000
|
|
|
|
|
|
|
|
#define PG_SW 0x003
|
|
|
|
#define PG_NOCACHE 0x018
|
|
|
|
|
|
|
|
#define MANUAL_DESTROY 0x80000000
|
|
|
|
|
2010-09-27 02:57:18 +04:00
|
|
|
#define ENTER() dbgprintf("enter %s\n",__FUNCTION__)
|
|
|
|
#define LEAVE() dbgprintf("leave %s\n",__FUNCTION__)
|
|
|
|
|
2010-09-14 00:07:22 +04:00
|
|
|
typedef struct
|
|
|
|
{
|
|
|
|
u32_t code;
|
|
|
|
u32_t data[5];
|
|
|
|
}kevent_t;
|
|
|
|
|
|
|
|
typedef union
|
|
|
|
{
|
|
|
|
struct
|
|
|
|
{
|
|
|
|
u32_t handle;
|
|
|
|
u32_t euid;
|
|
|
|
};
|
|
|
|
u64_t raw;
|
|
|
|
}evhandle_t;
|
|
|
|
|
|
|
|
typedef struct
|
|
|
|
{
|
|
|
|
u32_t handle;
|
|
|
|
u32_t io_code;
|
|
|
|
void *input;
|
|
|
|
int inp_size;
|
|
|
|
void *output;
|
|
|
|
int out_size;
|
|
|
|
}ioctl_t;
|
|
|
|
|
|
|
|
typedef int (__stdcall *srv_proc_t)(ioctl_t *);
|
|
|
|
|
|
|
|
#define ERR_OK 0
|
|
|
|
#define ERR_PARAM -1
|
|
|
|
|
|
|
|
|
|
|
|
struct ddk_params;
|
|
|
|
|
|
|
|
int ddk_init(struct ddk_params *params);
|
|
|
|
|
|
|
|
u32_t drvEntry(int, char *)__asm__("_drvEntry");
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#endif /* DDK_H */
|