1/* $Id: um_xdi.h,v 1.1.2.2 2002/10/02 14:38:38 armin Exp $ */ 2 3#ifndef __DIVA_USER_MODE_XDI_H__ 4#define __DIVA_USER_MODE_XDI_H__ 5 6/* 7 Contains declaratiom of structures shared between application 8 and user mode idi driver 9*/ 10 11typedef struct _diva_um_idi_adapter_features { 12 dword type; 13 dword features; 14 dword channels; 15 dword serial_number; 16 char name[128]; 17} diva_um_idi_adapter_features_t; 18 19#define DIVA_UM_IDI_REQ_MASK 0x0000FFFF 20#define DIVA_UM_IDI_REQ_TYPE_MASK (~(DIVA_UM_IDI_REQ_MASK)) 21#define DIVA_UM_IDI_GET_FEATURES 1 /* trigger features indication */ 22#define DIVA_UM_IDI_REQ 2 23#define DIVA_UM_IDI_REQ_TYPE_MAN 0x10000000 24#define DIVA_UM_IDI_REQ_TYPE_SIG 0x20000000 25#define DIVA_UM_IDI_REQ_TYPE_NET 0x30000000 26#define DIVA_UM_IDI_REQ_MAN (DIVA_UM_IDI_REQ | DIVA_UM_IDI_REQ_TYPE_MAN) 27#define DIVA_UM_IDI_REQ_SIG (DIVA_UM_IDI_REQ | DIVA_UM_IDI_REQ_TYPE_SIG) 28#define DIVA_UM_IDI_REQ_NET (DIVA_UM_IDI_REQ | DIVA_UM_IDI_REQ_TYPE_NET) 29/* 30 data_length bytes will follow this structure 31*/ 32typedef struct _diva_um_idi_req_hdr { 33 dword type; 34 dword Req; 35 dword ReqCh; 36 dword data_length; 37} diva_um_idi_req_hdr_t; 38 39typedef struct _diva_um_idi_ind_parameters { 40 dword Ind; 41 dword IndCh; 42} diva_um_idi_ind_parameters_t; 43 44typedef struct _diva_um_idi_rc_parameters { 45 dword Rc; 46 dword RcCh; 47} diva_um_idi_rc_parameters_t; 48 49typedef union _diva_um_idi_ind { 50 diva_um_idi_adapter_features_t features; 51 diva_um_idi_ind_parameters_t ind; 52 diva_um_idi_rc_parameters_t rc; 53} diva_um_idi_ind_t; 54 55#define DIVA_UM_IDI_IND_FEATURES 1 /* features indication */ 56#define DIVA_UM_IDI_IND 2 57#define DIVA_UM_IDI_IND_RC 3 58/* 59 data_length bytes of data follow 60 this structure 61*/ 62typedef struct _diva_um_idi_ind_hdr { 63 dword type; 64 diva_um_idi_ind_t hdr; 65 dword data_length; 66} diva_um_idi_ind_hdr_t; 67 68#endif 69