wifi: renew patch drivers/net/wireless
[firefly-linux-kernel-4.4.55.git] / drivers / net / wireless / rtl8723bs / include / linux / wireless.h
1 /******************************************************************************
2  *
3  * Copyright(c) 2007 - 2011 Realtek Corporation. All rights reserved.
4  *                                        
5  * This program is free software; you can redistribute it and/or modify it
6  * under the terms of version 2 of the GNU General Public License as
7  * published by the Free Software Foundation.
8  *
9  * This program is distributed in the hope that it will be useful, but WITHOUT
10  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11  * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
12  * more details.
13  *
14  * You should have received a copy of the GNU General Public License along with
15  * this program; if not, write to the Free Software Foundation, Inc.,
16  * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA
17  *
18  *
19  ******************************************************************************/
20
21 #ifndef _LINUX_WIRELESS_H
22 #define _LINUX_WIRELESS_H
23
24 /***************************** INCLUDES *****************************/
25
26 #if 0
27 #include <linux/types.h>                /* for __u* and __s* typedefs */
28 #include <linux/socket.h>               /* for "struct sockaddr" et al  */
29 #include <linux/if.h>                   /* for IFNAMSIZ and co... */
30 #else
31 #define __user
32 //typedef uint16_t      __u16;
33 #include <sys/socket.h>                 /* for "struct sockaddr" et al  */
34 #include <net/if.h>                     /* for IFNAMSIZ and co... */
35 #endif
36
37 /****************************** TYPES ******************************/
38
39 /* --------------------------- SUBTYPES --------------------------- */
40 /*
41  *      For all data larger than 16 octets, we need to use a
42  *      pointer to memory allocated in user space.
43  */
44 struct  iw_point
45 {
46   void __user   *pointer;       /* Pointer to the data  (in user space) */
47   __u16         length;         /* number of fields or size in bytes */
48   __u16         flags;          /* Optional params */
49 };
50
51
52 /* ------------------------ IOCTL REQUEST ------------------------ */
53 /*
54  * This structure defines the payload of an ioctl, and is used 
55  * below.
56  *
57  * Note that this structure should fit on the memory footprint
58  * of iwreq (which is the same as ifreq), which mean a max size of
59  * 16 octets = 128 bits. Warning, pointers might be 64 bits wide...
60  * You should check this when increasing the structures defined
61  * above in this file...
62  */
63 union   iwreq_data
64 {
65         /* Config - generic */
66         char            name[IFNAMSIZ];
67         /* Name : used to verify the presence of  wireless extensions.
68          * Name of the protocol/provider... */
69
70         struct iw_point data;           /* Other large parameters */
71 };
72
73 /*
74  * The structure to exchange data for ioctl.
75  * This structure is the same as 'struct ifreq', but (re)defined for
76  * convenience...
77  * Do I need to remind you about structure size (32 octets) ?
78  */
79 struct  iwreq 
80 {
81         union
82         {
83                 char    ifrn_name[IFNAMSIZ];    /* if name, e.g. "eth0" */
84         } ifr_ifrn;
85
86         /* Data part (defined just above) */
87         union   iwreq_data      u;
88 };
89
90 #endif  /* _LINUX_WIRELESS_H */
91