s390dyn.h
上传用户:jlfgdled
上传日期:2013-04-10
资源大小:33168k
文件大小:2k
源码类别:

Linux/Unix编程

开发平台:

Unix_Linux

  1. /*
  2.  *  arch/s390/kernel/s390dyn.h
  3.  *   S/390 data definitions for dynamic device attachment
  4.  *
  5.  *  S390 version
  6.  *    Copyright (C) 2000 IBM Deutschland Entwicklung GmbH, IBM Corporation
  7.  *    Author(s): Ingo Adlung (adlung@de.ibm.com)
  8.  */
  9. #ifndef __s390dyn_h
  10. #define __s390dyn_h
  11. #ifndef _LINUX_LIST_H
  12. #include <linux/list.h>
  13. #endif
  14. struct _devreg;
  15. typedef  int  (* oper_handler_func_t)( int             irq,
  16.                                        struct _devreg *dreg);
  17. typedef struct _devreg_hc_t {
  18. __u16 ctype;
  19. __u8  cmode;
  20. __u16 dtype;
  21. __u8  dmode;
  22.    }  __attribute__ ((packed)) devreg_hc_t;
  23. typedef struct _devreg {
  24. struct list_head list;
  25. union {
  26. int devno;
  27. devreg_hc_t hc;       /* has controller info */
  28. } ci;
  29. int                  flag;
  30. oper_handler_func_t  oper_func;
  31. } devreg_t;
  32. #define DEVREG_MATCH_CU_TYPE    0x00000001
  33. #define DEVREG_MATCH_CU_MODEL   0x00000002
  34. #define DEVREG_MATCH_DEV_TYPE   0x00000004
  35. #define DEVREG_MATCH_DEV_MODEL  0x00000008
  36. #define DEVREG_EXACT_MATCH      (DEVREG_MATCH_CU_TYPE|DEVREG_MATCH_CU_MODEL|DEVREG_MATCH_DEV_TYPE|DEVREG_MATCH_DEV_MODEL)
  37. #define DEVREG_NO_CU_INFO       (DEVREG_MATCH_DEV_TYPE|DEVREG_MATCH_DEV_MODEL)
  38. #define DEVREG_NO_DEV_INFO      (DEVREG_MATCH_CU_TYPE|DEVREG_MATCH_CU_MODEL)
  39. #define DEVREG_TYPE_DEVNO       0x80000000
  40. #define DEVREG_TYPE_DEVCHARS    0x40000000
  41. int        s390_device_register  ( devreg_t *drinfo );
  42. int        s390_device_unregister( devreg_t *dreg );
  43. devreg_t * s390_search_devreg    ( ioinfo_t *ioinfo );
  44. #endif /* __s390dyn */