1#ifndef __WINBOND_SCAN_S_H 2#define __WINBOND_SCAN_S_H 3 4#include <linux/types.h> 5#include "localpara.h" 6 7/* 8 * SCAN task global CONSTANTS, STRUCTURES, variables 9 */ 10 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 19 20/* 21 * BSS Type =>conform to 22 * IBSS : ToDS/FromDS = 00 23 * Infrastructure : ToDS/FromDS = 01 24 */ 25#define IBSS_NET 0 26#define ESS_NET 1 27#define ANYBSS_NET 2 28 29/* Scan Type */ 30#define ACTIVE_SCAN 0 31#define PASSIVE_SCAN 1 32 33/* Global data structures, Initial Scan & Background Scan */ 34typedef struct _SCAN_REQ_PARA { /* mandatory parameters for SCAN request */ 35 36 u32 ScanType; /* passive/active scan */ 37 38 u8 reserved_1[2]; 39 40 struct SSID_Element sSSID; /* 34B. scan only for this SSID */ 41 u8 reserved_2[2]; 42 43} SCAN_REQ_PARA, *psSCAN_REQ_PARA; 44 45typedef struct _SCAN_PARAMETERS { 46 u16 wState; 47 u16 iCurrentChannelIndex; 48 49 SCAN_REQ_PARA sScanReq; 50 51 u8 BSSID[MAC_ADDR_LENGTH + 2]; /* scan only for this BSSID */ 52 53 u32 BssType; /* scan only for this BSS type */ 54 55 u16 ProbeDelay; 56 u16 MinChannelTime; 57 58 u16 MaxChannelTime; 59 u16 reserved_1; 60 61 s32 iBgScanPeriod; /* XP: 5 sec */ 62 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 */ 66 u8 reserved_2; 67 68 struct timer_list timer; 69 70 u32 ScanTimeStamp; /* Increase 1 per background scan(1 minute) */ 71 u32 BssTimeStamp; /* Increase 1 per connect status check */ 72 u32 RxNumPerAntenna[2]; 73 74 u8 AntennaToggle; 75 u8 boInTimerHandler; 76 u8 boTimerActive; /* Wb: reserved */ 77 u8 boSave; 78 79 u32 BScanEnable; /* Background scan enable. Default is On */ 80} SCAN_PARAMETERS, *psSCAN_PARAMETERS; 81 82/* Encapsulate 'adapter' data structure */ 83#define psSCAN (&(adapter->sScanPara)) 84#define psSCANREQ (&(adapter->sScanPara.sScanReq)) 85 86/* 87 * =========================================================== 88 * scan.h 89 * Define the related definitions of scan module 90 * 91 * =========================================================== 92 */ 93 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 101#define BG_SCAN 6 102#define BG_SCANNING 7 103 104 105/* 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 109 */ 110#endif 111