Xenomai  3.1
rtwlan_io.h
1 /* rtwlan_io.h
2  *
3  * Copyright (C) 2006 Daniel Gregorek <dxg@gmx.de>
4  *
5  * This program is free software; you can redistribute it and/or modify
6  * it under the terms of the GNU General Public License as published by
7  * the Free Software Foundation; either version 2 of the License, or
8  * (at your option) any later version.
9  *
10  * This program is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  * GNU General Public License for more details.
14  *
15  * You should have received a copy of the GNU General Public License
16  * along with this program; if not, write to the Free Software
17  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
18  *
19  */
20 
21 #ifndef RTWLAN_IO
22 #define RTWLAN_IO
23 
24 #include <rtnet_chrdev.h>
25 
26 #define RTWLAN_TXMODE_RAW 0
27 #define RTWLAN_TXMODE_ACK 1
28 #define RTWLAN_TXMODE_MCAST 2
29 
30 #define ENORTWLANDEV 0xff08
31 
32 struct rtwlan_cmd {
33  struct rtnet_ioctl_head head;
34 
35  union {
36  struct {
37  unsigned int bitrate;
38  unsigned int channel;
39  unsigned int retry;
40  unsigned int txpower;
41  unsigned int mode;
42  unsigned int autoresponder;
43  unsigned int dropbcast;
44  unsigned int dropmcast;
45  unsigned int bbpsens;
46  } set;
47 
48  struct {
49  unsigned int address;
50  unsigned int value;
51  } reg;
52 
53  struct {
54  int ifindex;
55  unsigned int flags;
56  unsigned int bitrate;
57  unsigned int channel;
58  unsigned int retry;
59  unsigned int txpower;
60  unsigned int bbpsens;
61  unsigned int mode;
62  unsigned int autoresponder;
63  unsigned int dropbcast;
64  unsigned int dropmcast;
65  unsigned int rx_packets;
66  unsigned int tx_packets;
67  unsigned int tx_retry;
68  } info;
69  } args;
70 };
71 
72 #define RTNET_IOC_TYPE_RTWLAN 8
73 
74 #define IOC_RTWLAN_IFINFO \
75  _IOWR(RTNET_IOC_TYPE_RTWLAN, 0 | RTNET_IOC_NODEV_PARAM, \
76  struct rtwlan_cmd)
77 
78 #define IOC_RTWLAN_BITRATE _IOWR(RTNET_IOC_TYPE_RTWLAN, 1, struct rtwlan_cmd)
79 
80 #define IOC_RTWLAN_CHANNEL _IOWR(RTNET_IOC_TYPE_RTWLAN, 2, struct rtwlan_cmd)
81 
82 #define IOC_RTWLAN_TXPOWER _IOWR(RTNET_IOC_TYPE_RTWLAN, 3, struct rtwlan_cmd)
83 
84 #define IOC_RTWLAN_RETRY _IOWR(RTNET_IOC_TYPE_RTWLAN, 4, struct rtwlan_cmd)
85 
86 #define IOC_RTWLAN_TXMODE _IOWR(RTNET_IOC_TYPE_RTWLAN, 5, struct rtwlan_cmd)
87 
88 #define IOC_RTWLAN_DROPBCAST _IOWR(RTNET_IOC_TYPE_RTWLAN, 6, struct rtwlan_cmd)
89 
90 #define IOC_RTWLAN_DROPMCAST _IOWR(RTNET_IOC_TYPE_RTWLAN, 7, struct rtwlan_cmd)
91 
92 #define IOC_RTWLAN_REGREAD _IOWR(RTNET_IOC_TYPE_RTWLAN, 8, struct rtwlan_cmd)
93 
94 #define IOC_RTWLAN_REGWRITE _IOWR(RTNET_IOC_TYPE_RTWLAN, 9, struct rtwlan_cmd)
95 
96 #define IOC_RTWLAN_BBPWRITE _IOWR(RTNET_IOC_TYPE_RTWLAN, 10, struct rtwlan_cmd)
97 
98 #define IOC_RTWLAN_BBPREAD _IOWR(RTNET_IOC_TYPE_RTWLAN, 11, struct rtwlan_cmd)
99 
100 #define IOC_RTWLAN_BBPSENS _IOWR(RTNET_IOC_TYPE_RTWLAN, 12, struct rtwlan_cmd)
101 
102 #define IOC_RTWLAN_AUTORESP _IOWR(RTNET_IOC_TYPE_RTWLAN, 13, struct rtwlan_cmd)
103 
104 #endif