Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
rtl871x_ioctl.h
Go to the documentation of this file.
1 #ifndef __IOCTL_H
2 #define __IOCTL_H
3 
4 #include "osdep_service.h"
5 #include "drv_types.h"
6 
7 #ifndef OID_802_11_CAPABILITY
8  #define OID_802_11_CAPABILITY 0x0d010122
9 #endif
10 
11 #ifndef OID_802_11_PMKID
12  #define OID_802_11_PMKID 0x0d010123
13 #endif
14 
15 
16 /* For DDK-defined OIDs*/
17 #define OID_NDIS_SEG1 0x00010100
18 #define OID_NDIS_SEG2 0x00010200
19 #define OID_NDIS_SEG3 0x00020100
20 #define OID_NDIS_SEG4 0x01010100
21 #define OID_NDIS_SEG5 0x01020100
22 #define OID_NDIS_SEG6 0x01020200
23 #define OID_NDIS_SEG7 0xFD010100
24 #define OID_NDIS_SEG8 0x0D010100
25 #define OID_NDIS_SEG9 0x0D010200
26 #define OID_NDIS_SEG10 0x0D020200
27 #define SZ_OID_NDIS_SEG1 23
28 #define SZ_OID_NDIS_SEG2 3
29 #define SZ_OID_NDIS_SEG3 6
30 #define SZ_OID_NDIS_SEG4 6
31 #define SZ_OID_NDIS_SEG5 4
32 #define SZ_OID_NDIS_SEG6 8
33 #define SZ_OID_NDIS_SEG7 7
34 #define SZ_OID_NDIS_SEG8 36
35 #define SZ_OID_NDIS_SEG9 24
36 #define SZ_OID_NDIS_SEG10 19
37 
38 /* For Realtek-defined OIDs*/
39 #define OID_MP_SEG1 0xFF871100
40 #define OID_MP_SEG2 0xFF818000
41 #define OID_MP_SEG3 0xFF818700
42 #define OID_MP_SEG4 0xFF011100
43 
44 enum oid_type {
47 };
48 
49 struct oid_funs_node {
50  unsigned int oid_start; /*the starting number for OID*/
51  unsigned int oid_end; /*the ending number for OID*/
53  unsigned int array_sz; /*the size of node_array*/
54  int query_counter; /*count the number of query hits for this segment*/
55  int set_counter; /*count the number of set hits for this segment*/
56 };
57 
58 struct oid_par_priv {
62  unsigned long information_buf_len;
63  unsigned long *bytes_rw;
64  unsigned long *bytes_needed;
66  unsigned int dbg;
67 };
68 
69 struct oid_obj_priv {
70  unsigned char dbg; /* 0: without OID debug message
71  * 1: with OID debug message */
72  uint(*oidfuns)(struct oid_par_priv *poid_par_priv);
73 };
74 
75 uint oid_null_function(struct oid_par_priv *poid_par_priv);
76 
78 
79 extern uint drv_query_info(
80  struct net_device *MiniportAdapterContext,
81  uint Oid,
82  void *InformationBuffer,
83  u32 InformationBufferLength,
84  u32 *BytesWritten,
85  u32 *BytesNeeded
86 );
87 
88 extern uint drv_set_info(
89  struct net_device *MiniportAdapterContext,
90  uint Oid,
91  void *InformationBuffer,
92  u32 InformationBufferLength,
93  u32 *BytesRead,
94  u32 *BytesNeeded
95 );
96 
97 #endif