631cb1d23c7e62e2b42b0eb5bb85e5ae028c2874
[deliverable/linux.git] / drivers / staging / gdm72xx / wm_ioctl.h
1 /*
2 * Copyright (c) 2012 GCT Semiconductor, Inc. All rights reserved.
3 *
4 * This software is licensed under the terms of the GNU General Public
5 * License version 2, as published by the Free Software Foundation, and
6 * may be copied, distributed, and modified under those terms.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 */
13
14 #ifndef __GDM72XX_WM_IOCTL_H__
15 #define __GDM72XX_WM_IOCTL_H__
16
17 #if !defined(__KERNEL__)
18 #include <net/if.h>
19 #endif
20
21 #define NETLINK_WIMAX 31
22
23 #define SIOCWMIOCTL SIOCDEVPRIVATE
24
25 #define SIOCG_DATA 0x8D10
26 #define SIOCS_DATA 0x8D11
27
28 enum {
29 SIOC_DATA_FSM,
30 SIOC_DATA_NETLIST,
31 SIOC_DATA_CONNNSP,
32 SIOC_DATA_CONNCOMP,
33 SIOC_DATA_PROFILEID,
34
35 SIOC_DATA_END
36 };
37
38 #define SIOC_DATA_MAX 16
39
40 /* FSM */
41 enum {
42 M_INIT = 0,
43 M_OPEN_OFF,
44 M_OPEN_ON,
45 M_SCAN,
46 M_CONNECTING,
47 M_CONNECTED,
48 M_FSM_END,
49
50 C_INIT = 0,
51 C_CONNSTART,
52 C_ASSOCSTART,
53 C_RNG,
54 C_SBC,
55 C_AUTH,
56 C_REG,
57 C_DSX,
58 C_ASSOCCOMPLETE,
59 C_CONNCOMPLETE,
60 C_FSM_END,
61
62 D_INIT = 0,
63 D_READY,
64 D_LISTEN,
65 D_IPACQUISITION,
66
67 END_FSM
68 };
69
70 struct fsm_s {
71 int m_status; /*main status*/
72 int c_status; /*connection status*/
73 int d_status; /*oma-dm status*/
74 };
75
76 struct data_s {
77 int size;
78 void *buf;
79 };
80
81 struct udata_s {
82 int size;
83 void __user *buf;
84 };
85
86 struct wm_req_s {
87 union {
88 char ifrn_name[IFNAMSIZ];
89 } ifr_ifrn;
90 unsigned short cmd;
91 unsigned short data_id;
92 struct udata_s data;
93
94 /* NOTE: sizeof(struct wm_req_s) must be less than sizeof(struct ifreq). */
95 };
96
97 #ifndef ifr_name
98 #define ifr_name ifr_ifrn.ifrn_name
99 #endif
100
101 #endif /* __GDM72XX_WM_IOCTL_H__ */
This page took 0.032078 seconds and 4 git commands to generate.