Subversion Repositories Kolibri OS

Rev

Rev 1627 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed

  1.  
  2. #ifndef __DDK_H__
  3. #define __DDK_H__
  4.  
  5. #include <kernel.h>
  6.  
  7. #define OS_BASE             0x80000000
  8.  
  9. #define PG_SW               0x003
  10. #define PG_NOCACHE          0x018
  11.  
  12. #define MANUAL_DESTROY      0x80000000
  13.  
  14. typedef struct
  15. {
  16.     u32_t  code;
  17.     u32_t  data[5];
  18. }kevent_t;
  19.  
  20. typedef union
  21. {
  22.     struct
  23.     {
  24.         u32_t handle;
  25.         u32_t euid;
  26.     };
  27.     u64_t raw;
  28. }evhandle_t;
  29.  
  30. typedef struct
  31. {
  32.   u32_t      handle;
  33.   u32_t      io_code;
  34.   void       *input;
  35.   int        inp_size;
  36.   void       *output;
  37.   int        out_size;
  38. }ioctl_t;
  39.  
  40. typedef int (__stdcall *srv_proc_t)(ioctl_t *);
  41.  
  42. #define ERR_OK       0
  43. #define ERR_PARAM   -1
  44.  
  45.  
  46. struct ddk_params;
  47.  
  48. int   ddk_init(struct ddk_params *params);
  49.  
  50. u32_t drvEntry(int, char *)__asm__("_drvEntry");
  51.  
  52.  
  53.  
  54.  
  55.  
  56. #endif      /*    DDK_H    */
  57.