1
2
3
4
5
6
7
8
9
10
11
12#ifndef __LINUX_CAPI_H__
13#define __LINUX_CAPI_H__
14
15#include <linux/types.h>
16#include <linux/ioctl.h>
17#ifndef __KERNEL__
18#include <linux/kernelcapi.h>
19#endif
20
21
22
23
24
25typedef struct capi_register_params {
26 __u32 level3cnt;
27 __u32 datablkcnt;
28 __u32 datablklen;
29} capi_register_params;
30
31#define CAPI_REGISTER _IOW('C',0x01,struct capi_register_params)
32
33
34
35
36
37#define CAPI_MANUFACTURER_LEN 64
38
39#define CAPI_GET_MANUFACTURER _IOWR('C',0x06,int)
40
41
42
43
44
45typedef struct capi_version {
46 __u32 majorversion;
47 __u32 minorversion;
48 __u32 majormanuversion;
49 __u32 minormanuversion;
50} capi_version;
51
52#define CAPI_GET_VERSION _IOWR('C',0x07,struct capi_version)
53
54
55
56
57
58#define CAPI_SERIAL_LEN 8
59#define CAPI_GET_SERIAL _IOWR('C',0x08,int)
60
61
62
63
64
65typedef struct capi_profile {
66 __u16 ncontroller;
67 __u16 nbchannel;
68 __u32 goptions;
69 __u32 support1;
70 __u32 support2;
71 __u32 support3;
72 __u32 reserved[6];
73 __u32 manu[5];
74} capi_profile;
75
76#define CAPI_GET_PROFILE _IOWR('C',0x09,struct capi_profile)
77
78typedef struct capi_manufacturer_cmd {
79 unsigned long cmd;
80 void __user *data;
81} capi_manufacturer_cmd;
82
83
84
85
86
87#define CAPI_MANUFACTURER_CMD _IOWR('C',0x20, struct capi_manufacturer_cmd)
88
89
90
91
92
93
94
95#define CAPI_GET_ERRCODE _IOR('C',0x21, __u16)
96
97
98
99
100#define CAPI_INSTALLED _IOR('C',0x22, __u16)
101
102
103
104
105
106
107
108typedef union capi_ioctl_struct {
109 __u32 contr;
110 capi_register_params rparams;
111 __u8 manufacturer[CAPI_MANUFACTURER_LEN];
112 capi_version version;
113 __u8 serial[CAPI_SERIAL_LEN];
114 capi_profile profile;
115 capi_manufacturer_cmd cmd;
116 __u16 errcode;
117} capi_ioctl_struct;
118
119
120
121
122
123#define CAPIFLAG_HIGHJACKING 0x0001
124
125#define CAPI_GET_FLAGS _IOR('C',0x23, unsigned)
126#define CAPI_SET_FLAGS _IOR('C',0x24, unsigned)
127#define CAPI_CLR_FLAGS _IOR('C',0x25, unsigned)
128
129#define CAPI_NCCI_OPENCOUNT _IOR('C',0x26, unsigned)
130
131#define CAPI_NCCI_GETUNIT _IOR('C',0x27, unsigned)
132
133#endif
134