summaryrefslogtreecommitdiff
path: root/network/wlan/WDI/PLATFORM/NDIS6/N62C_Init.h
blob: aacaf12607c8fccdbc97f50e2caa895d4b5468bf (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152

//Helper Port Reg Init Parameter

/** Maximum number of BSSs we will store in our BSS entries list */
#define MP_BSS_ENTRY_MAX_ENTRIES_DEFAULT       128
#define MP_BSS_ENTRY_MAX_ENTRIES_MIN           16
#define MP_BSS_ENTRY_MAX_ENTRIES_MAX           512

/**
 * Time duration after it was created at which a BSS entry is 
 * considered to have expired
 */
#define MP_BSS_ENTRY_EXPIRE_TIME_DEFAULT       750000000       // 75 seconds
#define MP_BSS_ENTRY_EXPIRE_TIME_MIN           150000000       // 15 seconds
#define MP_BSS_ENTRY_EXPIRE_TIME_MAX          2000000000       // 200 seconds

/**
 * Link quality value (0-100 which if we go below for a sequence of beacons,
 * would suggest that we have a poor signal
 */
#define MP_POOR_LINK_QUALITY_THRESHOLD_DEFAULT   15
#define MP_POOR_LINK_QUALITY_THRESHOLD_MIN       5
#define MP_POOR_LINK_QUALITY_THRESHOLD_MAX       80


/** Maximum number of channels that we scan for when doing a passive scan */
#define MP_SCAN_SET_CHANNEL_COUNT_PASSIVE_DEFAULT      2
#define MP_SCAN_SET_CHANNEL_COUNT_PASSIVE_MIN          1
#define MP_SCAN_SET_CHANNEL_COUNT_PASSIVE_MAX          5

/** Maximum number of channels that we scan for when doing an active scan */
#define MP_SCAN_SET_CHANNEL_COUNT_ACTIVE_DEFAULT       3   // We can scan more channels when in active
#define MP_SCAN_SET_CHANNEL_COUNT_ACTIVE_MIN           1
#define MP_SCAN_SET_CHANNEL_COUNT_ACTIVE_MAX           5


/** Interval between partial scan timer (in milliseconds) */
#define MP_SCAN_RESCHEDULE_TIME_MS_DEFAULT             300
#define MP_SCAN_RESCHEDULE_TIME_MS_MIN                 10
#define MP_SCAN_RESCHEDULE_TIME_MS_MAX                 1000


/** Interval between mutiple scan (in seconds) */
#define MP_INTER_SCAN_TIME_DEFAULT                     60
#define MP_INTER_SCAN_TIME_MIN                         30
#define MP_INTER_SCAN_TIME_MAX                         1000

//STA Port Reg Init Parameter

/** Maximum number of Adhoc stations we will cache state about */
#define STA_ADHOC_STA_MAX_ENTRIES_DEFAULT       64
#define STA_ADHOC_STA_MAX_ENTRIES_MIN           16
#define STA_ADHOC_STA_MAX_ENTRIES_MAX           512

/**
 * Time duration after it was created at which an BSS entry is 
 * considered to have expired
 */
#define STA_BSS_ENTRY_EXPIRE_TIME_DEFAULT       750000000       // 75 seconds
#define STA_BSS_ENTRY_EXPIRE_TIME_MIN           150000000       // 15 seconds
#define STA_BSS_ENTRY_EXPIRE_TIME_MAX          2000000000       // 200 seconds

/** 
 * Number of beacon intervals after which if we havent 
 * received a beacon from the AP we assume we have 
 * lost connectivity
 */
#define STA_INFRA_ROAM_NO_BEACON_COUNT_DEFAULT  20
#define STA_INFRA_ROAM_NO_BEACON_COUNT_MIN      5
#define STA_INFRA_ROAM_NO_BEACON_COUNT_MAX      50

/**
 * Number of beacon for which we have continuously received
 * beacons with RSSI below above threshold, we will roam
 */
#define STA_INFRA_RSSI_ROAM_BEACON_COUNT_DEFAULT        15
#define STA_INFRA_RSSI_ROAM_BEACON_COUNT_MIN            5
#define STA_INFRA_RSSI_ROAM_BEACON_COUNT_MAX            20


//
// Macros for assigning and verifying NDIS_OBJECT_HEADER
//
#define MP_ASSIGN_NDIS_OBJECT_HEADER(_header, _type, _revision, _size) \
    (_header).Type = _type; \
    (_header).Revision = _revision; \
    (_header).Size = _size; 

VOID 
N62CUpdateRegSetting(
	PADAPTER pAdapter
	);

NDIS_STATUS
N62CInitialize(
	IN PADAPTER								pHelperAdapter,	
       IN    NDIS_HANDLE         MiniportAdapterHandle,
    	IN  PNDIS_MINIPORT_INIT_PARAMETERS     MiniportInitParameters
	);

NDIS_STATUS
N62CAllocateExtAdapter(
	IN	PADAPTER		pDefaultAdapter,
	IN	PADAPTER 		*pHelperAdapter,
	IN	NDIS_HANDLE	MiniportAdapterHandle
	);

VOID
N62CFreeExtAdapter(
	IN PADAPTER pExtAdapter
	);

NDIS_STATUS
N62CAllocatePortCommonComponent(
	IN	PADAPTER		pAdapter
);

VOID
N62CFreePortCommonComponent(
	IN	PADAPTER		pAdapter
);

NDIS_STATUS
N62CAllocatePortSpecificComponent(
	IN	PADAPTER		pAdapter
);

VOID
N62CFreePortSpecificComponent(
	IN	PADAPTER		pAdapter
);

NDIS_STATUS
N62CSet80211Attributes(
	IN	PADAPTER		Adapter
	);
/*
NDIS_STATUS
N62CStartMP(
	IN	PADAPTER		pAdapter	
	);
*/

void
N62CInitVariable(
	IN	PADAPTER		pAdapter
	);

NDIS_STATUS
N62CAllocateN62CommResource(
    IN  PADAPTER                pAdapter
    );