1 #ifndef __WINBOND_SCAN_S_H
2 #define __WINBOND_SCAN_S_H
4 #include <linux/types.h>
8 * SCAN task global CONSTANTS, STRUCTURES, variables
11 /* define the msg type of SCAN module */
12 #define SCANMSG_SCAN_REQ 0x01
13 #define SCANMSG_BEACON 0x02
14 #define SCANMSG_PROBE_RESPONSE 0x03
15 #define SCANMSG_TIMEOUT 0x04
16 #define SCANMSG_TXPROBE_FAIL 0x05
17 #define SCANMSG_ENABLE_BGSCAN 0x06
18 #define SCANMSG_STOP_SCAN 0x07
21 * BSS Type =>conform to
22 * IBSS : ToDS/FromDS = 00
23 * Infrastructure : ToDS/FromDS = 01
31 #define PASSIVE_SCAN 1
33 /* Global data structures, Initial Scan & Background Scan */
34 typedef struct _SCAN_REQ_PARA { /* mandatory parameters for SCAN request */
36 u32 ScanType; /* passive/active scan */
40 struct SSID_Element sSSID; /* 34B. scan only for this SSID */
43 } SCAN_REQ_PARA, *psSCAN_REQ_PARA;
45 typedef struct _SCAN_PARAMETERS {
47 u16 iCurrentChannelIndex;
49 SCAN_REQ_PARA sScanReq;
51 u8 BSSID[MAC_ADDR_LENGTH + 2]; /* scan only for this BSSID */
53 u32 BssType; /* scan only for this BSS type */
61 s32 iBgScanPeriod; /* XP: 5 sec */
63 u8 boBgScan; /* Wb: enable BG scan, For XP, this value must be FALSE */
64 u8 boFastScan; /* Wb: reserved */
65 u8 boCCAbusy; /* Wb: HWMAC CCA busy status */
68 struct timer_list timer;
70 u32 ScanTimeStamp; /* Increase 1 per background scan(1 minute) */
71 u32 BssTimeStamp; /* Increase 1 per connect status check */
72 u32 RxNumPerAntenna[2];
76 u8 boTimerActive; /* Wb: reserved */
79 u32 BScanEnable; /* Background scan enable. Default is On */
80 } SCAN_PARAMETERS, *psSCAN_PARAMETERS;
82 /* Encapsulate 'adapter' data structure */
83 #define psSCAN (&(adapter->sScanPara))
84 #define psSCANREQ (&(adapter->sScanPara.sScanReq))
87 * ===========================================================
89 * Define the related definitions of scan module
91 * ===========================================================
94 /* Define the state of scan module */
95 #define SCAN_INACTIVE 0
96 #define WAIT_PROBE_DELAY 1
97 #define WAIT_RESPONSE_MIN 2
98 #define WAIT_RESPONSE_MAX_ACTIVE 3
99 #define WAIT_BEACON_MAX_PASSIVE 4
100 #define SCAN_COMPLETE 5
102 #define BG_SCANNING 7
106 * The value will load from EEPROM
107 * If 0xff is set in EEPOM, the driver will use SCAN_MAX_CHNL_TIME instead.
108 * The definition is in WbHal.h