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