164064216a8433360745f69edddce19a606659163The Android Open Source Project/**************************************************************************** 264064216a8433360745f69edddce19a606659163The Android Open Source Project**+-----------------------------------------------------------------------+** 364064216a8433360745f69edddce19a606659163The Android Open Source Project**| |** 464064216a8433360745f69edddce19a606659163The Android Open Source Project**| Copyright(c) 1998 - 2008 Texas Instruments. All rights reserved. |** 564064216a8433360745f69edddce19a606659163The Android Open Source Project**| All rights reserved. |** 664064216a8433360745f69edddce19a606659163The Android Open Source Project**| |** 764064216a8433360745f69edddce19a606659163The Android Open Source Project**| Redistribution and use in source and binary forms, with or without |** 864064216a8433360745f69edddce19a606659163The Android Open Source Project**| modification, are permitted provided that the following conditions |** 964064216a8433360745f69edddce19a606659163The Android Open Source Project**| are met: |** 1064064216a8433360745f69edddce19a606659163The Android Open Source Project**| |** 1164064216a8433360745f69edddce19a606659163The Android Open Source Project**| * Redistributions of source code must retain the above copyright |** 1264064216a8433360745f69edddce19a606659163The Android Open Source Project**| notice, this list of conditions and the following disclaimer. |** 1364064216a8433360745f69edddce19a606659163The Android Open Source Project**| * Redistributions in binary form must reproduce the above copyright |** 1464064216a8433360745f69edddce19a606659163The Android Open Source Project**| notice, this list of conditions and the following disclaimer in |** 1564064216a8433360745f69edddce19a606659163The Android Open Source Project**| the documentation and/or other materials provided with the |** 1664064216a8433360745f69edddce19a606659163The Android Open Source Project**| distribution. |** 1764064216a8433360745f69edddce19a606659163The Android Open Source Project**| * Neither the name Texas Instruments nor the names of its |** 1864064216a8433360745f69edddce19a606659163The Android Open Source Project**| contributors may be used to endorse or promote products derived |** 1964064216a8433360745f69edddce19a606659163The Android Open Source Project**| from this software without specific prior written permission. |** 2064064216a8433360745f69edddce19a606659163The Android Open Source Project**| |** 2164064216a8433360745f69edddce19a606659163The Android Open Source Project**| THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |** 2264064216a8433360745f69edddce19a606659163The Android Open Source Project**| "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |** 2364064216a8433360745f69edddce19a606659163The Android Open Source Project**| LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |** 2464064216a8433360745f69edddce19a606659163The Android Open Source Project**| A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |** 2564064216a8433360745f69edddce19a606659163The Android Open Source Project**| OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |** 2664064216a8433360745f69edddce19a606659163The Android Open Source Project**| SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |** 2764064216a8433360745f69edddce19a606659163The Android Open Source Project**| LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |** 2864064216a8433360745f69edddce19a606659163The Android Open Source Project**| DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |** 2964064216a8433360745f69edddce19a606659163The Android Open Source Project**| THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |** 3064064216a8433360745f69edddce19a606659163The Android Open Source Project**| (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |** 3164064216a8433360745f69edddce19a606659163The Android Open Source Project**| OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |** 3264064216a8433360745f69edddce19a606659163The Android Open Source Project**| |** 3364064216a8433360745f69edddce19a606659163The Android Open Source Project**+-----------------------------------------------------------------------+** 3464064216a8433360745f69edddce19a606659163The Android Open Source Project****************************************************************************/ 3564064216a8433360745f69edddce19a606659163The Android Open Source Project 3664064216a8433360745f69edddce19a606659163The Android Open Source Project#ifndef PUBLIC_COMMANDS_H 3764064216a8433360745f69edddce19a606659163The Android Open Source Project#define PUBLIC_COMMANDS_H 3864064216a8433360745f69edddce19a606659163The Android Open Source Project 3964064216a8433360745f69edddce19a606659163The Android Open Source Project 4064064216a8433360745f69edddce19a606659163The Android Open Source Project#include "public_types.h" 4164064216a8433360745f69edddce19a606659163The Android Open Source Project#include "public_radio.h" 4264064216a8433360745f69edddce19a606659163The Android Open Source Project 4364064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef enum 4464064216a8433360745f69edddce19a606659163The Android Open Source Project{ 4564064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_RESET = 0, 4664064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_INTERROGATE = 1, /*use this to read information elements*/ 4764064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_CONFIGURE = 2, /*use this to write information elements*/ 4864064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_ENABLE_RX = 3, 4964064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_ENABLE_TX = 4, 5064064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_DISABLE_RX = 5, 5164064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_DISABLE_TX = 6, 5264064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_SCAN = 8, 5364064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_STOP_SCAN = 9, 5464064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_VBM = 10, 5564064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_START_JOIN = 11, 5664064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_SET_KEYS = 12, 5764064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_READ_MEMORY = 13, 5864064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_WRITE_MEMORY = 14, 5964064216a8433360745f69edddce19a606659163The Android Open Source Project 6064064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_BEACON = 19, 6164064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_PROBE_RESP = 20, 6264064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_NULL_DATA = 21, 6364064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_PROBE_REQ = 22, 6464064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_TEST = 23, 6564064216a8433360745f69edddce19a606659163The Android Open Source Project 6664064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_RADIO_CALIBRATE = 25, /* OBSOLETE !!!*/ 6764064216a8433360745f69edddce19a606659163The Android Open Source Project 6864064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_ENABLE_RX_PATH = 27, /* OBSOLETE !!! (what is the difference from CMD_ENABLE_RX)*/ 6964064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_NOISE_HIST = 28, 7064064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_RX_RESET = 29, 7164064216a8433360745f69edddce19a606659163The Android Open Source Project 7264064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_PS_POLL = 30, 7364064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_QOS_NULL_DATA = 31, 7464064216a8433360745f69edddce19a606659163The Android Open Source Project 7564064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_LNA_CONTROL = 32, 7664064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_SET_BCN_MODE = 33, 7764064216a8433360745f69edddce19a606659163The Android Open Source Project 7864064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_MEASUREMENT = 34, 7964064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_STOP_MEASUREMENT = 35, 8064064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_DISCONNECT = 36, 8164064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_SET_PS_MODE = 37, 8264064216a8433360745f69edddce19a606659163The Android Open Source Project 8364064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_CHANNEL_SWITCH = 38, 8464064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_STOP_CHANNEL_SWICTH = 39, 8564064216a8433360745f69edddce19a606659163The Android Open Source Project 8664064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_AP_DISCOVERY = 40, 8764064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_STOP_AP_DISCOVERY = 41, 8864064216a8433360745f69edddce19a606659163The Android Open Source Project 8964064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_SPS_SCAN = 42, 9064064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_STOP_SPS_SCAN = 43, 9164064216a8433360745f69edddce19a606659163The Android Open Source Project 9264064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_HEALTH_CHECK = 45, 9364064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_DEBUG = 46, 9464064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_TRIGGER_SCAN_TO = 47, 9564064216a8433360745f69edddce19a606659163The Android Open Source Project 9664064216a8433360745f69edddce19a606659163The Android Open Source ProjectNUM_COMMANDS, 9764064216a8433360745f69edddce19a606659163The Android Open Source Project MAX_COMMAND_ID = 0xFFFF 9864064216a8433360745f69edddce19a606659163The Android Open Source Project} Command_enum; 9964064216a8433360745f69edddce19a606659163The Android Open Source Project 10064064216a8433360745f69edddce19a606659163The Android Open Source Project#ifdef HOST_COMPILE 10164064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef uint16 Command_e; 10264064216a8433360745f69edddce19a606659163The Android Open Source Project#else 10364064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef Command_enum Command_e; 10464064216a8433360745f69edddce19a606659163The Android Open Source Project#endif 10564064216a8433360745f69edddce19a606659163The Android Open Source Project 10664064216a8433360745f69edddce19a606659163The Android Open Source Project 10764064216a8433360745f69edddce19a606659163The Android Open Source Project#ifdef HOST_COMPILE 10864064216a8433360745f69edddce19a606659163The Android Open Source Project 10964064216a8433360745f69edddce19a606659163The Android Open Source Project#define CMD_MAILBOX_IDLE 0 11064064216a8433360745f69edddce19a606659163The Android Open Source Project#define CMD_STATUS_SUCCESS 1 11164064216a8433360745f69edddce19a606659163The Android Open Source Project#define CMD_STATUS_UNKNOWN_CMD 2 11264064216a8433360745f69edddce19a606659163The Android Open Source Project#define CMD_STATUS_UNKNOWN_IE 3 11364064216a8433360745f69edddce19a606659163The Android Open Source Project#define CMD_STATUS_REJECT_MEAS_SG_ACTIVE 11 11464064216a8433360745f69edddce19a606659163The Android Open Source Project#define CMD_STATUS_RX_BUSY 13 11564064216a8433360745f69edddce19a606659163The Android Open Source Project#define CMD_STATUS_INVALID_PARAM 14 11664064216a8433360745f69edddce19a606659163The Android Open Source Project#define CMD_STATUS_TEMPLATE_TOO_LARGE 15 11764064216a8433360745f69edddce19a606659163The Android Open Source Project#define CMD_STATUS_OUT_OF_MEMORY 16 11864064216a8433360745f69edddce19a606659163The Android Open Source Project#define CMD_STATUS_STA_TABLE_FULL 17 11964064216a8433360745f69edddce19a606659163The Android Open Source Project#define CMD_STATUS_RADIO_ERROR 18 12064064216a8433360745f69edddce19a606659163The Android Open Source Project#define CMD_STATUS_WRONG_NESTING 19 12164064216a8433360745f69edddce19a606659163The Android Open Source Project#define CMD_STATUS_TIMEOUT 21 /* Driver internal use.*/ 12264064216a8433360745f69edddce19a606659163The Android Open Source Project#define CMD_STATUS_FW_RESET 22 /* Driver internal use.*/ 12364064216a8433360745f69edddce19a606659163The Android Open Source Project#define MAX_COMMAND_STATUS MAX_POSITIVE16 12464064216a8433360745f69edddce19a606659163The Android Open Source Project 12564064216a8433360745f69edddce19a606659163The Android Open Source Project#else 12664064216a8433360745f69edddce19a606659163The Android Open Source Project 12764064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef enum 12864064216a8433360745f69edddce19a606659163The Android Open Source Project{ 12964064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_MAILBOX_IDLE = 0, 13064064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_STATUS_SUCCESS = 1, 13164064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_STATUS_UNKNOWN_CMD = 2, 13264064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_STATUS_UNKNOWN_IE = 3, 13364064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_STATUS_REJECT_MEAS_SG_ACTIVE = 11, 13464064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_STATUS_RX_BUSY = 13, 13564064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_STATUS_INVALID_PARAM = 14, 13664064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_STATUS_TEMPLATE_TOO_LARGE = 15, 13764064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_STATUS_OUT_OF_MEMORY = 16, 13864064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_STATUS_STA_TABLE_FULL = 17, 13964064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_STATUS_RADIO_ERROR = 18, 14064064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_STATUS_WRONG_NESTING = 19, 14164064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_STATUS_TIMEOUT = 21, /* Driver internal use.*/ 14264064216a8433360745f69edddce19a606659163The Android Open Source Project CMD_STATUS_FW_RESET = 22, /* Driver internal use.*/ 14364064216a8433360745f69edddce19a606659163The Android Open Source Project MAX_COMMAND_STATUS = MAX_POSITIVE16 14464064216a8433360745f69edddce19a606659163The Android Open Source Project} CommandStatus_enum; 14564064216a8433360745f69edddce19a606659163The Android Open Source Project 14664064216a8433360745f69edddce19a606659163The Android Open Source Project#endif 14764064216a8433360745f69edddce19a606659163The Android Open Source Project 14864064216a8433360745f69edddce19a606659163The Android Open Source Project#ifdef HOST_COMPILE 14964064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef uint16 CommandStatus_e; 15064064216a8433360745f69edddce19a606659163The Android Open Source Project#else 15164064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef CommandStatus_enum CommandStatus_e; 15264064216a8433360745f69edddce19a606659163The Android Open Source Project#endif 15364064216a8433360745f69edddce19a606659163The Android Open Source Project 15464064216a8433360745f69edddce19a606659163The Android Open Source Project 15564064216a8433360745f69edddce19a606659163The Android Open Source Project#ifdef FW_RUNNING_AS_STA 15664064216a8433360745f69edddce19a606659163The Android Open Source Project#define MAX_CMD_PARAMS 572 15764064216a8433360745f69edddce19a606659163The Android Open Source Project#else 15864064216a8433360745f69edddce19a606659163The Android Open Source Project#define MAX_CMD_PARAMS 384 15964064216a8433360745f69edddce19a606659163The Android Open Source Project#endif 16064064216a8433360745f69edddce19a606659163The Android Open Source Project 16164064216a8433360745f69edddce19a606659163The Android Open Source Project#define DEBUG_INDICATOR 0x8000 16264064216a8433360745f69edddce19a606659163The Android Open Source Project 16364064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef struct 16464064216a8433360745f69edddce19a606659163The Android Open Source Project{ 16564064216a8433360745f69edddce19a606659163The Android Open Source Project Command_e cmdID; 16664064216a8433360745f69edddce19a606659163The Android Open Source Project CommandStatus_e cmdStatus; 16764064216a8433360745f69edddce19a606659163The Android Open Source Project uint8 parameters[MAX_CMD_PARAMS]; 16864064216a8433360745f69edddce19a606659163The Android Open Source Project} Command_t; 16964064216a8433360745f69edddce19a606659163The Android Open Source Project 17064064216a8433360745f69edddce19a606659163The Android Open Source Project 17164064216a8433360745f69edddce19a606659163The Android Open Source Project/****************************************************************************** 17264064216a8433360745f69edddce19a606659163The Android Open Source Project 17364064216a8433360745f69edddce19a606659163The Android Open Source Project ID: CMD_RESET 17464064216a8433360745f69edddce19a606659163The Android Open Source Project Desc: This command resets all state machines in the WiLink to their power 17564064216a8433360745f69edddce19a606659163The Android Open Source Project up state and restarts the eCPU. This command has no parameters. After 17664064216a8433360745f69edddce19a606659163The Android Open Source Project issuing this command, the host must reconfigure the adapter before 17764064216a8433360745f69edddce19a606659163The Android Open Source Project normal operations resume. 17864064216a8433360745f69edddce19a606659163The Android Open Source Project In general, the host should only use this command if the WiLink has 17964064216a8433360745f69edddce19a606659163The Android Open Source Project stopped functioning properly. 18064064216a8433360745f69edddce19a606659163The Android Open Source Project Params: None. 18164064216a8433360745f69edddce19a606659163The Android Open Source Project Note: The WiLink does not return a response/status message for this command. 18264064216a8433360745f69edddce19a606659163The Android Open Source Project 18364064216a8433360745f69edddce19a606659163The Android Open Source Project******************************************************************************/ 18464064216a8433360745f69edddce19a606659163The Android Open Source Project 18564064216a8433360745f69edddce19a606659163The Android Open Source Project 18664064216a8433360745f69edddce19a606659163The Android Open Source Project/****************************************************************************** 18764064216a8433360745f69edddce19a606659163The Android Open Source Project 18864064216a8433360745f69edddce19a606659163The Android Open Source Project ID: CMD_INTERROGATE 18964064216a8433360745f69edddce19a606659163The Android Open Source Project Desc: This command requests an information element from the WiLink. The 19064064216a8433360745f69edddce19a606659163The Android Open Source Project interface for this command is somewhat different from other commands 19164064216a8433360745f69edddce19a606659163The Android Open Source Project since the interface is bi-directional and asymmetric. 19264064216a8433360745f69edddce19a606659163The Android Open Source Project The host structure consists of the Command ID, a Command Status 19364064216a8433360745f69edddce19a606659163The Android Open Source Project (returned by WiLink) place holder, and the Information Element Heading 19464064216a8433360745f69edddce19a606659163The Android Open Source Project (ID and expected length). 19564064216a8433360745f69edddce19a606659163The Android Open Source Project The response to that command is a buffer of the information element's 19664064216a8433360745f69edddce19a606659163The Android Open Source Project actual values returned by the WiLink just after the command is issued. 19764064216a8433360745f69edddce19a606659163The Android Open Source Project The response to that command is a buffer of the information element's 19864064216a8433360745f69edddce19a606659163The Android Open Source Project actual values returned by the WiLink just after the command is issued. 19964064216a8433360745f69edddce19a606659163The Android Open Source Project Params: InfoElement_t - see below. 20064064216a8433360745f69edddce19a606659163The Android Open Source Project 20164064216a8433360745f69edddce19a606659163The Android Open Source Project 20264064216a8433360745f69edddce19a606659163The Android Open Source Project******************************************************************************/ 20364064216a8433360745f69edddce19a606659163The Android Open Source Project/* 20464064216a8433360745f69edddce19a606659163The Android Open Source ProjectDescription of InfoElement structure - defined in "public_infoele.h" 20564064216a8433360745f69edddce19a606659163The Android Open Source Projectoffset length source description 20664064216a8433360745f69edddce19a606659163The Android Open Source Project====== ====== ====== =========== 20764064216a8433360745f69edddce19a606659163The Android Open Source Project0 2 host Information Element ID - contains the ID of the requested 20864064216a8433360745f69edddce19a606659163The Android Open Source Project information element (refer to InfoElement_enum in 20964064216a8433360745f69edddce19a606659163The Android Open Source Project pblic_infoele.h). In response to this command, the WiLink 21064064216a8433360745f69edddce19a606659163The Android Open Source Project writes the requested information element to the response area 21164064216a8433360745f69edddce19a606659163The Android Open Source Project for the command mailbox. 21264064216a8433360745f69edddce19a606659163The Android Open Source Project2 4 wilink Length - the length of the response (different for each IE 21364064216a8433360745f69edddce19a606659163The Android Open Source Project according to definitions in public_infoele.h). 21464064216a8433360745f69edddce19a606659163The Android Open Source Project4 Length wilink IE payload according to definition in public_infoele.h. 21564064216a8433360745f69edddce19a606659163The Android Open Source Project*/ 21664064216a8433360745f69edddce19a606659163The Android Open Source Project 21764064216a8433360745f69edddce19a606659163The Android Open Source Project 21864064216a8433360745f69edddce19a606659163The Android Open Source Project 21964064216a8433360745f69edddce19a606659163The Android Open Source Project/****************************************************************************** 22064064216a8433360745f69edddce19a606659163The Android Open Source Project 22164064216a8433360745f69edddce19a606659163The Android Open Source Project ID: CMD_CONFIGURE 22264064216a8433360745f69edddce19a606659163The Android Open Source Project Desc: This command configures an information element in the WiLink. 22364064216a8433360745f69edddce19a606659163The Android Open Source Project Params: InfoElement_t - see below. 22464064216a8433360745f69edddce19a606659163The Android Open Source Project 22564064216a8433360745f69edddce19a606659163The Android Open Source Project******************************************************************************/ 22664064216a8433360745f69edddce19a606659163The Android Open Source Project/* 22764064216a8433360745f69edddce19a606659163The Android Open Source ProjectDescription of InfoElement structure - defined in "public_infoele.h" 22864064216a8433360745f69edddce19a606659163The Android Open Source Projectoffset length source description 22964064216a8433360745f69edddce19a606659163The Android Open Source Project====== ====== ====== =========== 23064064216a8433360745f69edddce19a606659163The Android Open Source Project0 2 host Information Element ID - contains the ID of the requested 23164064216a8433360745f69edddce19a606659163The Android Open Source Project information element (refer to InfoElement_enum in 23264064216a8433360745f69edddce19a606659163The Android Open Source Project pblic_infoele.h). In response to this command, the WiLink 23364064216a8433360745f69edddce19a606659163The Android Open Source Project writes the requested information element to the response area 23464064216a8433360745f69edddce19a606659163The Android Open Source Project for the command mailbox. 23564064216a8433360745f69edddce19a606659163The Android Open Source Project2 4 host Length - the length of the response (different for each IE 23664064216a8433360745f69edddce19a606659163The Android Open Source Project according to definitions in public_infoele.h). 23764064216a8433360745f69edddce19a606659163The Android Open Source Project4 Length host IE payload according to definition in public_infoele.h. 23864064216a8433360745f69edddce19a606659163The Android Open Source Project*/ 23964064216a8433360745f69edddce19a606659163The Android Open Source Project 24064064216a8433360745f69edddce19a606659163The Android Open Source Project 24164064216a8433360745f69edddce19a606659163The Android Open Source Project/****************************************************************************** 24264064216a8433360745f69edddce19a606659163The Android Open Source Project 24364064216a8433360745f69edddce19a606659163The Android Open Source Project ID: CMD_ENABLE_RX 24464064216a8433360745f69edddce19a606659163The Android Open Source Project Desc: This command enables the normal reception of frames. 24564064216a8433360745f69edddce19a606659163The Android Open Source Project Params: Channel Number - this field indicates the radio channel on which to 24664064216a8433360745f69edddce19a606659163The Android Open Source Project receive data. This parameter also sets the channel on 24764064216a8433360745f69edddce19a606659163The Android Open Source Project which to transmit. The last channel number used, 24864064216a8433360745f69edddce19a606659163The Android Open Source Project regardless of the order in which the ENABLE_RX and 24964064216a8433360745f69edddce19a606659163The Android Open Source Project ENABLE_TX commands are issued, is the channel number 25064064216a8433360745f69edddce19a606659163The Android Open Source Project for both RX and TX. This command must be issued after 25164064216a8433360745f69edddce19a606659163The Android Open Source Project the host has set all necessary configuration elements 25264064216a8433360745f69edddce19a606659163The Android Open Source Project appropriately. 25364064216a8433360745f69edddce19a606659163The Android Open Source Project 25464064216a8433360745f69edddce19a606659163The Android Open Source Project******************************************************************************/ 25564064216a8433360745f69edddce19a606659163The Android Open Source Project 25664064216a8433360745f69edddce19a606659163The Android Open Source Project 25764064216a8433360745f69edddce19a606659163The Android Open Source Project 25864064216a8433360745f69edddce19a606659163The Android Open Source Project/****************************************************************************** 25964064216a8433360745f69edddce19a606659163The Android Open Source Project 26064064216a8433360745f69edddce19a606659163The Android Open Source Project ID: CMD_ENABLE_TX 26164064216a8433360745f69edddce19a606659163The Android Open Source Project Desc: This command enables the normal transmission of frames. 26264064216a8433360745f69edddce19a606659163The Android Open Source Project Params: Channel Number - this field indicates the radio channel on which to 26364064216a8433360745f69edddce19a606659163The Android Open Source Project transmit data. This parameter also sets the channel on 26464064216a8433360745f69edddce19a606659163The Android Open Source Project which to receive. The last channel number used, 26564064216a8433360745f69edddce19a606659163The Android Open Source Project regardless of the order in which the ENABLE_RX and 26664064216a8433360745f69edddce19a606659163The Android Open Source Project ENABLE_TX commands are issued, is the channel number 26764064216a8433360745f69edddce19a606659163The Android Open Source Project for both RX and TX. This command must be issued after 26864064216a8433360745f69edddce19a606659163The Android Open Source Project the host has set all necessary configuration elements 26964064216a8433360745f69edddce19a606659163The Android Open Source Project appropriately. 27064064216a8433360745f69edddce19a606659163The Android Open Source Project 27164064216a8433360745f69edddce19a606659163The Android Open Source Project******************************************************************************/ 27264064216a8433360745f69edddce19a606659163The Android Open Source Project 27364064216a8433360745f69edddce19a606659163The Android Open Source Project/****************************************************************************** 27464064216a8433360745f69edddce19a606659163The Android Open Source Project 27564064216a8433360745f69edddce19a606659163The Android Open Source Project ID: CMD_DISABLE_RX 27664064216a8433360745f69edddce19a606659163The Android Open Source Project Desc: This command disables the normal reception of packets over the 27764064216a8433360745f69edddce19a606659163The Android Open Source Project Baseband interface. 27864064216a8433360745f69edddce19a606659163The Android Open Source Project Params: None 27964064216a8433360745f69edddce19a606659163The Android Open Source Project 28064064216a8433360745f69edddce19a606659163The Android Open Source Project******************************************************************************/ 28164064216a8433360745f69edddce19a606659163The Android Open Source Project 28264064216a8433360745f69edddce19a606659163The Android Open Source Project/****************************************************************************** 28364064216a8433360745f69edddce19a606659163The Android Open Source Project 28464064216a8433360745f69edddce19a606659163The Android Open Source Project ID: CMD_DISABLE_TX 28564064216a8433360745f69edddce19a606659163The Android Open Source Project Desc: This command disables the normal transmission of frames. 28664064216a8433360745f69edddce19a606659163The Android Open Source Project Params: None. 28764064216a8433360745f69edddce19a606659163The Android Open Source Project 28864064216a8433360745f69edddce19a606659163The Android Open Source Project******************************************************************************/ 28964064216a8433360745f69edddce19a606659163The Android Open Source Project 29064064216a8433360745f69edddce19a606659163The Android Open Source Project/****************************************************************************** 29164064216a8433360745f69edddce19a606659163The Android Open Source Project 29264064216a8433360745f69edddce19a606659163The Android Open Source Project ID: CMD_SCAN 29364064216a8433360745f69edddce19a606659163The Android Open Source Project Desc: This command instructs the WiLink to scan for BSS/IBSSs. The host 29464064216a8433360745f69edddce19a606659163The Android Open Source Project may perform either an active scan or a passive scan. During an active 29564064216a8433360745f69edddce19a606659163The Android Open Source Project scan, the WiLink transmits a probe request on the specified channel(s) 29664064216a8433360745f69edddce19a606659163The Android Open Source Project and then listens for beacon/probe responses. During a passive scan, the 29764064216a8433360745f69edddce19a606659163The Android Open Source Project WiLink monitors the specified channel(s) for beacons. 29864064216a8433360745f69edddce19a606659163The Android Open Source Project The WiLink sends SCAN_COMPLETE event to notify the host when it has 29964064216a8433360745f69edddce19a606659163The Android Open Source Project completed a scan. 30064064216a8433360745f69edddce19a606659163The Android Open Source Project Params: ScanParameters_t - see below 30164064216a8433360745f69edddce19a606659163The Android Open Source Project 30264064216a8433360745f69edddce19a606659163The Android Open Source Project******************************************************************************/ 30364064216a8433360745f69edddce19a606659163The Android Open Source Project/* 30464064216a8433360745f69edddce19a606659163The Android Open Source ProjectOffset Length Definition 30564064216a8433360745f69edddce19a606659163The Android Open Source Project0 8 RX filters for Scan (refer to ACXRxConfigStruct) 30664064216a8433360745f69edddce19a606659163The Android Open Source Project8 2 Scan options (Band select, Voice mode and Scan type = Active/Passive) 30764064216a8433360745f69edddce19a606659163The Android Open Source Project10 1 NumChannels 30864064216a8433360745f69edddce19a606659163The Android Open Source Project11 1 Number of Probe requests (used for Active scan) 30964064216a8433360745f69edddce19a606659163The Android Open Source Project12 2 Probe request rate & modulation 31064064216a8433360745f69edddce19a606659163The Android Open Source Project14 1 AC trigger (for Voice mode only) 31164064216a8433360745f69edddce19a606659163The Android Open Source Project15 1 SSID length 31264064216a8433360745f69edddce19a606659163The Android Open Source Project16 32 SSID string (Null terminated) 31364064216a8433360745f69edddce19a606659163The Android Open Source Project48 2 Channel [0] ScanMinDuration 31464064216a8433360745f69edddce19a606659163The Android Open Source Project50 2 Channel [0] ScanMaxDuration 31564064216a8433360745f69edddce19a606659163The Android Open Source Project52 6 Channel [0] BSSID (4 bytes LOW and 2 bytes HIGH) 31664064216a8433360745f69edddce19a606659163The Android Open Source Project58 1 Channel [0].bit0-3: Early Termination count. Bit 4-5: Condition 31764064216a8433360745f69edddce19a606659163The Android Open Source Project59 1 Channel [0] TX power level for Scan (0 means do not change - other values:1-5) 31864064216a8433360745f69edddce19a606659163The Android Open Source Project60 1 Channel [0] Channel 31964064216a8433360745f69edddce19a606659163The Android Open Source Project61 3 Channel [0] Reserved 32064064216a8433360745f69edddce19a606659163The Android Open Source Project64-404 340 Optional Channel [1] - Channel [15] - same format as Channel [0] fields above. 32164064216a8433360745f69edddce19a606659163The Android Open Source Project*/ 32264064216a8433360745f69edddce19a606659163The Android Open Source Project 32364064216a8433360745f69edddce19a606659163The Android Open Source Project/* Defines for Rx "ConfigOptions".*/ 32464064216a8433360745f69edddce19a606659163The Android Open Source Project/* Only bits 2-10 can be configured by the Driver".*/ 32564064216a8433360745f69edddce19a606659163The Android Open Source Project#define CFG_RX_SERIAL BIT_0 /* 0 = use parallel interface, 1 = use serial interface from ACX101- not valid.*/ 32664064216a8433360745f69edddce19a606659163The Android Open Source Project#define CFG_RX_RAW BIT_1 /* 1 = write all data from baseband to frame buffer including PHY header.*/ 32764064216a8433360745f69edddce19a606659163The Android Open Source Project#define CFG_RX_FCS BIT_2 /* 1 = write FCS to end of frame in memory, 0 = do not write FCS to memory.*/ 32864064216a8433360745f69edddce19a606659163The Android Open Source Project#define CFG_RX_ALL_GOOD BIT_3 /* promiscuous mode, receive all good frames.*/ 32964064216a8433360745f69edddce19a606659163The Android Open Source Project#define CFG_UNI_FILTER_EN BIT_4 /* local MAC address filter enable.*/ 33064064216a8433360745f69edddce19a606659163The Android Open Source Project#define CFG_BSSID_FILTER_EN BIT_5 /* BSSID filter enable.*/ 33164064216a8433360745f69edddce19a606659163The Android Open Source Project#define CFG_MC_FILTER_EN BIT_6 /* 0 = receive all multicast, 1 = use one or both multicast address filters.*/ 33264064216a8433360745f69edddce19a606659163The Android Open Source Project#define CFG_MC_ADDR0_EN BIT_7 /* 1 = receive frames from mc_addr0, 0 = do not use this filter.*/ 33364064216a8433360745f69edddce19a606659163The Android Open Source Project#define CFG_MC_ADDR1_EN BIT_8 /* 1 = receive frames from mc_addr1, 0 = do not use this filter .*/ 33464064216a8433360745f69edddce19a606659163The Android Open Source Project#define CFG_BC_REJECT_EN BIT_9 /* 0 = receive all broadcast, 1 = filter all broadcast.*/ 33564064216a8433360745f69edddce19a606659163The Android Open Source Project#define CFG_SSID_FILTER_EN BIT_10 /* SSID Filter Enable.*/ 33664064216a8433360745f69edddce19a606659163The Android Open Source Project#define CFG_RX_INT_FCS_ERROR BIT_11 /* 1 = give rx complete interrupt for FCS errors.*/ 33764064216a8433360745f69edddce19a606659163The Android Open Source Project#define CFG_RX_INT_ENCRYPTED BIT_12 /* 1 = only give rx header interrupt if frame is encrypted.*/ 33864064216a8433360745f69edddce19a606659163The Android Open Source Project#define CFG_RX_WR_RX_STATUS BIT_13 /* 0 = do not write three status words, 1 = write three receive status words to top of rx'd MPDU.*/ 33964064216a8433360745f69edddce19a606659163The Android Open Source Project#define CFG_RX_FILTER_NULTI BIT_14 /* 1 = filter multicast/broadcast frame if SA matchs local MAC addr->.*/ 34064064216a8433360745f69edddce19a606659163The Android Open Source Project#define CFG_RX_RESERVE BIT_15 /* reserve.*/ 34164064216a8433360745f69edddce19a606659163The Android Open Source Project#define CFG_RX_TIMESTAMP_TSF BIT_16 /* 1 = sample frame's' arrival time in 32bits TSF, 0 = write it in MAC time stamp.*/ 34264064216a8433360745f69edddce19a606659163The Android Open Source Project 34364064216a8433360745f69edddce19a606659163The Android Open Source Project 34464064216a8433360745f69edddce19a606659163The Android Open Source Project/* Defines for Rx "FilterOptions".*/ 34564064216a8433360745f69edddce19a606659163The Android Open Source Project/* The rx filter enables control what type of receive frames will be rejected or received by the rx hardware*/ 34664064216a8433360745f69edddce19a606659163The Android Open Source Project/* 1 = frame is written to memory,*/ 34764064216a8433360745f69edddce19a606659163The Android Open Source Project/* 0 = not written to memory, rejected.*/ 34864064216a8433360745f69edddce19a606659163The Android Open Source Project#define CFG_RX_RSV_EN BIT_0 /* reserved types and subtypes.*/ 34964064216a8433360745f69edddce19a606659163The Android Open Source Project#define CFG_RX_RCTS_ACK BIT_1 /* rts, cts, ack frames.*/ 35064064216a8433360745f69edddce19a606659163The Android Open Source Project#define CFG_RX_PRSP_EN BIT_2 /* probe response.*/ 35164064216a8433360745f69edddce19a606659163The Android Open Source Project#define CFG_RX_PREQ_EN BIT_3 /* probe request.*/ 35264064216a8433360745f69edddce19a606659163The Android Open Source Project#define CFG_RX_MGMT_EN BIT_4 /* type = management.*/ 35364064216a8433360745f69edddce19a606659163The Android Open Source Project#define CFG_RX_FCS_ERROR BIT_5 /* frames with FCS errors.*/ 35464064216a8433360745f69edddce19a606659163The Android Open Source Project#define CFG_RX_DATA_EN BIT_6 /* type = data.*/ 35564064216a8433360745f69edddce19a606659163The Android Open Source Project#define CFG_RX_CTL_EN BIT_7 /* type = control.*/ 35664064216a8433360745f69edddce19a606659163The Android Open Source Project#define CFG_RX_CF_EN BIT_8 /* contention free frames.*/ 35764064216a8433360745f69edddce19a606659163The Android Open Source Project#define CFG_RX_BCN_EN BIT_9 /* beacons.*/ 35864064216a8433360745f69edddce19a606659163The Android Open Source Project#define CFG_RX_AUTH_EN BIT_10 /* authentication, deauthentication.*/ 35964064216a8433360745f69edddce19a606659163The Android Open Source Project#define CFG_RX_ASSOC_EN BIT_11 /* association related frames (all 5 subtypes assoc req/resp,*/ 36064064216a8433360745f69edddce19a606659163The Android Open Source Project 36164064216a8433360745f69edddce19a606659163The Android Open Source Project 36264064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef struct 36364064216a8433360745f69edddce19a606659163The Android Open Source Project{ 36464064216a8433360745f69edddce19a606659163The Android Open Source Project#ifdef FW_RUNNING_AS_AP 36564064216a8433360745f69edddce19a606659163The Android Open Source Project uint16 ConfigOptions; 36664064216a8433360745f69edddce19a606659163The Android Open Source Project uint16 FilterOptions; 36764064216a8433360745f69edddce19a606659163The Android Open Source Project#else 36864064216a8433360745f69edddce19a606659163The Android Open Source Project uint32 ConfigOptions; 36964064216a8433360745f69edddce19a606659163The Android Open Source Project uint32 FilterOptions; 37064064216a8433360745f69edddce19a606659163The Android Open Source Project#endif 37164064216a8433360745f69edddce19a606659163The Android Open Source Project} ACXRxConfigStruct; 37264064216a8433360745f69edddce19a606659163The Android Open Source Project 37364064216a8433360745f69edddce19a606659163The Android Open Source Project/* 37464064216a8433360745f69edddce19a606659163The Android Open Source ProjectTxdRateSet_t definition 37564064216a8433360745f69edddce19a606659163The Android Open Source ProjectBit Description 37664064216a8433360745f69edddce19a606659163The Android Open Source Project=== =========== 37764064216a8433360745f69edddce19a606659163The Android Open Source Project0-12 Every one of bits 0-12 specifies rate described in the column on left. Only 37864064216a8433360745f69edddce19a606659163The Android Open Source Project one bit could be set for the command, all other should be zeroed. 37964064216a8433360745f69edddce19a606659163The Android Open Source Project0 1 MBPS 38064064216a8433360745f69edddce19a606659163The Android Open Source Project1 2 MBPS 38164064216a8433360745f69edddce19a606659163The Android Open Source Project2 5.5 MBPS 38264064216a8433360745f69edddce19a606659163The Android Open Source Project3 6 MBPS 38364064216a8433360745f69edddce19a606659163The Android Open Source Project4 9 MBPS 38464064216a8433360745f69edddce19a606659163The Android Open Source Project5 11 MBPS 38564064216a8433360745f69edddce19a606659163The Android Open Source Project6 12 MBPS 38664064216a8433360745f69edddce19a606659163The Android Open Source Project7 18 MBPS 38764064216a8433360745f69edddce19a606659163The Android Open Source Project8 22 MBPS 38864064216a8433360745f69edddce19a606659163The Android Open Source Project9 24 MBPS 38964064216a8433360745f69edddce19a606659163The Android Open Source Project10 36 MBPS 39064064216a8433360745f69edddce19a606659163The Android Open Source Project11 48 MBPS 39164064216a8433360745f69edddce19a606659163The Android Open Source Project12 54 MBPS 39264064216a8433360745f69edddce19a606659163The Android Open Source Project13 Unused (set to 0). 39364064216a8433360745f69edddce19a606659163The Android Open Source Project14 PBCC - When this bit is set, the WiLink transmits probe requests with PBCC 39464064216a8433360745f69edddce19a606659163The Android Open Source Project modulation. 39564064216a8433360745f69edddce19a606659163The Android Open Source Project Notes: 39664064216a8433360745f69edddce19a606659163The Android Open Source Project Does not apply (set to 0) for rates 1 and 2 Mbps. 39764064216a8433360745f69edddce19a606659163The Android Open Source Project Does not apply (set to 0) for RevG-OFDM rates. 39864064216a8433360745f69edddce19a606659163The Android Open Source Project15 Preamble - When this bit is set, the WiLink transmits probe requests with a 39964064216a8433360745f69edddce19a606659163The Android Open Source Project short preamble. When this bit is clear, the WiLink transmits the 40064064216a8433360745f69edddce19a606659163The Android Open Source Project frame with a long preamble. 40164064216a8433360745f69edddce19a606659163The Android Open Source Project Notes: 40264064216a8433360745f69edddce19a606659163The Android Open Source Project Must be LONG (0) for 1Mbps rate. 40364064216a8433360745f69edddce19a606659163The Android Open Source Project Does not apply (set to 0) for RevG-OFDM rates. 40464064216a8433360745f69edddce19a606659163The Android Open Source Project 40564064216a8433360745f69edddce19a606659163The Android Open Source ProjectIf neither the PBCC bit or OFDM rate are set, then the modulation format for probe 40664064216a8433360745f69edddce19a606659163The Android Open Source Projectrequests is CCK for 5.5 or 11 Mbps or DBPSK/DQPSK for 1 and 2 Mbps. 40764064216a8433360745f69edddce19a606659163The Android Open Source Project*/ 40864064216a8433360745f69edddce19a606659163The Android Open Source Project 40964064216a8433360745f69edddce19a606659163The Android Open Source Project/* ScanOptions bit mask field.*/ 41064064216a8433360745f69edddce19a606659163The Android Open Source Project#define SCAN_ACTIVE 0 41164064216a8433360745f69edddce19a606659163The Android Open Source Project#define SCAN_PASSIVE 1 /* 1 = passive scan, 0 = active scan*/ 41264064216a8433360745f69edddce19a606659163The Android Open Source Project#define SCAN_5GHZ_BAND 2 /* 1 = scan channel list in 5 Ghz band, 0 = scan channel list in 2.4 Ghz band*/ 41364064216a8433360745f69edddce19a606659163The Android Open Source Project#define TRIGGERED_SCAN 4 /* 1 = Triggered scan, 0 = Normal scan*/ 41464064216a8433360745f69edddce19a606659163The Android Open Source Project#define SCAN_PRIORITY_HIGH 8 /* 1 = High priority scan, 0 = Low priority scan*/ 41564064216a8433360745f69edddce19a606659163The Android Open Source Project 41664064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef uint8 TidTrigger_t; 41764064216a8433360745f69edddce19a606659163The Android Open Source Project 41864064216a8433360745f69edddce19a606659163The Android Open Source Project/* General scan parameters.*/ 41964064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef struct 42064064216a8433360745f69edddce19a606659163The Android Open Source Project{ 42164064216a8433360745f69edddce19a606659163The Android Open Source Project ACXRxConfigStruct rxCfg; /* Rx filter to be used for each channel scan. */ 42264064216a8433360745f69edddce19a606659163The Android Open Source Project /* The BSSID filter enable will be set (by the */ 42364064216a8433360745f69edddce19a606659163The Android Open Source Project /* scan process) to ON for a specific channel if*/ 42464064216a8433360745f69edddce19a606659163The Android Open Source Project /* the BSSID of this channel is a unicast address.*/ 42564064216a8433360745f69edddce19a606659163The Android Open Source Project /* Otherwise it will be set to OFF (Refer to */ 42664064216a8433360745f69edddce19a606659163The Android Open Source Project /* ACXRxConfig IE in public_infoele.h).*/ 42764064216a8433360745f69edddce19a606659163The Android Open Source Project 42864064216a8433360745f69edddce19a606659163The Android Open Source Project uint16 scanOptions; /* This bitwise field indicates the scan options. */ 42964064216a8433360745f69edddce19a606659163The Android Open Source Project /* Bits [3:15] are reserved. */ 43064064216a8433360745f69edddce19a606659163The Android Open Source Project /* Bits [0:2] are defined as follows: */ 43164064216a8433360745f69edddce19a606659163The Android Open Source Project /* Scan Type (bit 0) - When this bit is set, the */ 43264064216a8433360745f69edddce19a606659163The Android Open Source Project /* WiLink performs a passive scan. When this bit*/ 43364064216a8433360745f69edddce19a606659163The Android Open Source Project /* is cleared, the WiLink performs an active scan. */ 43464064216a8433360745f69edddce19a606659163The Android Open Source Project /* Band Select (bit 1) - When this bit is set, the*/ 43564064216a8433360745f69edddce19a606659163The Android Open Source Project /* WiLink scans the specified channels in the */ 43664064216a8433360745f69edddce19a606659163The Android Open Source Project /* 5GHz band. When this bit is cleared, the */ 43764064216a8433360745f69edddce19a606659163The Android Open Source Project /* WiLink scans the specified channels in the */ 43864064216a8433360745f69edddce19a606659163The Android Open Source Project /* 2.4GHz band. */ 43964064216a8433360745f69edddce19a606659163The Android Open Source Project /* Voice mode (bit 2) - When this bit is set, */ 44064064216a8433360745f69edddce19a606659163The Android Open Source Project /* the request is for a voice scan. When this bit*/ 44164064216a8433360745f69edddce19a606659163The Android Open Source Project /* is cleared, the request is for a normal scan. */ 44264064216a8433360745f69edddce19a606659163The Android Open Source Project /* Scan priority (bit 3) - When this bit is set, */ 44364064216a8433360745f69edddce19a606659163The Android Open Source Project /* the request is for a high priority scan. When*/ 44464064216a8433360745f69edddce19a606659163The Android Open Source Project /* this bit is cleared, the request is for a low*/ 44564064216a8433360745f69edddce19a606659163The Android Open Source Project /* priority scan.*/ 44664064216a8433360745f69edddce19a606659163The Android Open Source Project 44764064216a8433360745f69edddce19a606659163The Android Open Source Project uint8 numChannels; /* Number of scan channels in the list (minimum is*/ 44864064216a8433360745f69edddce19a606659163The Android Open Source Project /* 1, maximum is 30).*/ 44964064216a8433360745f69edddce19a606659163The Android Open Source Project 45064064216a8433360745f69edddce19a606659163The Android Open Source Project uint8 numOfProbRqst; /* This field indicates the number of probe */ 45164064216a8433360745f69edddce19a606659163The Android Open Source Project /* requests to send per channel, in active scan. */ 45264064216a8433360745f69edddce19a606659163The Android Open Source Project 45364064216a8433360745f69edddce19a606659163The Android Open Source Project TxdRateSet_t txdRateSet; /* This bitwise field specifies the rate and */ 45464064216a8433360745f69edddce19a606659163The Android Open Source Project /* modulation to transmit the probe request during*/ 45564064216a8433360745f69edddce19a606659163The Android Open Source Project /* an active scan. The allowable values for this */ 45664064216a8433360745f69edddce19a606659163The Android Open Source Project /* field are listed in the above table (refer to */ 45764064216a8433360745f69edddce19a606659163The Android Open Source Project /* TxdRateSet). It is not used for passive scans.*/ 45864064216a8433360745f69edddce19a606659163The Android Open Source Project 45964064216a8433360745f69edddce19a606659163The Android Open Source Project TidTrigger_t tidTrigger; /* used for TidTriggered scan only.*/ 46064064216a8433360745f69edddce19a606659163The Android Open Source Project 46164064216a8433360745f69edddce19a606659163The Android Open Source Project uint8 ssidLength; /* This field specifies the size of the SSID, */ 46264064216a8433360745f69edddce19a606659163The Android Open Source Project /* which can be up to 32 bytes long. If this field*/ 46364064216a8433360745f69edddce19a606659163The Android Open Source Project /* equals to zero, SSID filter is not applied. */ 46464064216a8433360745f69edddce19a606659163The Android Open Source Project 46564064216a8433360745f69edddce19a606659163The Android Open Source Project uint32 ssidStr[8]; /* This field specifies the SSID packets from that*/ 46664064216a8433360745f69edddce19a606659163The Android Open Source Project /* are relevant for the Scan result. The WiLink*/ 46764064216a8433360745f69edddce19a606659163The Android Open Source Project /* uses this information to filter beacon, probe*/ 46864064216a8433360745f69edddce19a606659163The Android Open Source Project /* response frames (if the SSID length field of */ 46964064216a8433360745f69edddce19a606659163The Android Open Source Project /* this command structure is not zero) */ 47064064216a8433360745f69edddce19a606659163The Android Open Source Project} BasicScanParameters_t; 47164064216a8433360745f69edddce19a606659163The Android Open Source Project 47264064216a8433360745f69edddce19a606659163The Android Open Source Project 47364064216a8433360745f69edddce19a606659163The Android Open Source Project 47464064216a8433360745f69edddce19a606659163The Android Open Source Project#define SCAN_ET_COND_MASK 0x30 47564064216a8433360745f69edddce19a606659163The Android Open Source Project#define SCAN_ET_COUNT_MASK 0x0F 47664064216a8433360745f69edddce19a606659163The Android Open Source Project 47764064216a8433360745f69edddce19a606659163The Android Open Source Project#define SCAN_MAX_NUM_OF_CHANNELS 16 47864064216a8433360745f69edddce19a606659163The Android Open Source Project 47964064216a8433360745f69edddce19a606659163The Android Open Source Project/* Early Termination condition (bits 4-5) - This field can have one of the following */ 48064064216a8433360745f69edddce19a606659163The Android Open Source Project/* values (note that bits 0-3 indicates Early Termination count): */ 48164064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef enum 48264064216a8433360745f69edddce19a606659163The Android Open Source Project{ 48364064216a8433360745f69edddce19a606659163The Android Open Source Project ET_COND_DISABLE = 0x00, /* Disable - No early termination condition.*/ 48464064216a8433360745f69edddce19a606659163The Android Open Source Project 48564064216a8433360745f69edddce19a606659163The Android Open Source Project ET_COND_BEACON = 0x10, /* Beacon only. When this value is selected, the */ 48664064216a8433360745f69edddce19a606659163The Android Open Source Project /* Early Termination count field specifies the */ 48764064216a8433360745f69edddce19a606659163The Android Open Source Project /* maximum number of beacons to collect before */ 48864064216a8433360745f69edddce19a606659163The Android Open Source Project /* ending a scan. */ 48964064216a8433360745f69edddce19a606659163The Android Open Source Project 49064064216a8433360745f69edddce19a606659163The Android Open Source Project ET_COND_PROBE_RESP = 0x20, /* Probe responses only. When this value is */ 49164064216a8433360745f69edddce19a606659163The Android Open Source Project /* selected, the Early Termination count field */ 49264064216a8433360745f69edddce19a606659163The Android Open Source Project /* specifies the maximum number of probe responses*/ 49364064216a8433360745f69edddce19a606659163The Android Open Source Project /* to collect before ending a scan. */ 49464064216a8433360745f69edddce19a606659163The Android Open Source Project 49564064216a8433360745f69edddce19a606659163The Android Open Source Project ET_COND_BEACON_PROBE_RESP = 0x30,/* Beacon/probe response. When this value is */ 49664064216a8433360745f69edddce19a606659163The Android Open Source Project /* selected, the Early Termination count field */ 49764064216a8433360745f69edddce19a606659163The Android Open Source Project /* specifies the maximum number of beacons or probe*/ 49864064216a8433360745f69edddce19a606659163The Android Open Source Project /* responses to collect before ending a scan. */ 49964064216a8433360745f69edddce19a606659163The Android Open Source Project 50064064216a8433360745f69edddce19a606659163The Android Open Source Project ET_COND_INVALID = 0xFF 50164064216a8433360745f69edddce19a606659163The Android Open Source Project} ETCondition_enum; 50264064216a8433360745f69edddce19a606659163The Android Open Source Project 50364064216a8433360745f69edddce19a606659163The Android Open Source Project#ifdef HOST_COMPILE 50464064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef uint8 ETCondition_e; 50564064216a8433360745f69edddce19a606659163The Android Open Source Project#else 50664064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef ETCondition_enum ETCondition_e; 50764064216a8433360745f69edddce19a606659163The Android Open Source Project#endif 50864064216a8433360745f69edddce19a606659163The Android Open Source Project 50964064216a8433360745f69edddce19a606659163The Android Open Source Project 51064064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef uint8 ETCondCount_t; 51164064216a8433360745f69edddce19a606659163The Android Open Source Project 51264064216a8433360745f69edddce19a606659163The Android Open Source Project 51364064216a8433360745f69edddce19a606659163The Android Open Source Project 51464064216a8433360745f69edddce19a606659163The Android Open Source Project#define PROCESS_SCAN_IS_HIGH(pScanParameters) ((pScanParameters)->basicScanParameters.scanOptions & SCAN_PRIORITY_HIGH) 51564064216a8433360745f69edddce19a606659163The Android Open Source Project#define PROCESS_SCAN_IS_LOW(pScanParameters) ((PROCESS_SCAN_IS_HIGH(pScanParameters)) == 0) 51664064216a8433360745f69edddce19a606659163The Android Open Source Project 51764064216a8433360745f69edddce19a606659163The Android Open Source Project 51864064216a8433360745f69edddce19a606659163The Android Open Source Project/* Per-Channel scan parameters.*/ 51964064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef struct 52064064216a8433360745f69edddce19a606659163The Android Open Source Project{ 52164064216a8433360745f69edddce19a606659163The Android Open Source Project 52264064216a8433360745f69edddce19a606659163The Android Open Source Project uint32 scanMinDuration; /* For active scans, this field specifies the */ 52364064216a8433360745f69edddce19a606659163The Android Open Source Project /* minimum amount of time, in time units (TUs), */ 52464064216a8433360745f69edddce19a606659163The Android Open Source Project /* to wait for a frame on a channel. This */ 52564064216a8433360745f69edddce19a606659163The Android Open Source Project /* parameter is not used for passive scans. The*/ 52664064216a8433360745f69edddce19a606659163The Android Open Source Project /* value can range from 0 to 65535 TUs */ 52764064216a8433360745f69edddce19a606659163The Android Open Source Project /* (67.1 seconds). */ 52864064216a8433360745f69edddce19a606659163The Android Open Source Project 52964064216a8433360745f69edddce19a606659163The Android Open Source Project uint32 scanMaxDuration; /* For active scans, this field specifies the */ 53064064216a8433360745f69edddce19a606659163The Android Open Source Project /* maximum amount of time, in time units (TUs), */ 53164064216a8433360745f69edddce19a606659163The Android Open Source Project /* to wait for a probe response on a channel.*/ 53264064216a8433360745f69edddce19a606659163The Android Open Source Project /* For passive scans, this field specifies the */ 53364064216a8433360745f69edddce19a606659163The Android Open Source Project /* amount of time, in time units (TUs), to listen*/ 53464064216a8433360745f69edddce19a606659163The Android Open Source Project /* on a channel. The value can range from 0 to */ 53564064216a8433360745f69edddce19a606659163The Android Open Source Project /* 65535 TUs (67.1 seconds). */ 53664064216a8433360745f69edddce19a606659163The Android Open Source Project 53764064216a8433360745f69edddce19a606659163The Android Open Source Project 53864064216a8433360745f69edddce19a606659163The Android Open Source Project uint32 bssIdL; /* 32 LSBits of BSSID of the AP to scan for. */ 53964064216a8433360745f69edddce19a606659163The Android Open Source Project /* If scanning on this channel any BSSID, this */ 54064064216a8433360745f69edddce19a606659163The Android Open Source Project /* field shall be set to broadcast BSSID. */ 54164064216a8433360745f69edddce19a606659163The Android Open Source Project 54264064216a8433360745f69edddce19a606659163The Android Open Source Project uint16 bssIdH; /* 16 MSBits of BSSID of the AP to scan for.*/ 54364064216a8433360745f69edddce19a606659163The Android Open Source Project 54464064216a8433360745f69edddce19a606659163The Android Open Source Project ETCondCount_t ETCondCount; /* bit 0-3: Early Termination count - This field */ 54564064216a8433360745f69edddce19a606659163The Android Open Source Project /* defines the maximum number of beacons*/ 54664064216a8433360745f69edddce19a606659163The Android Open Source Project /* or probe responses or both (according*/ 54764064216a8433360745f69edddce19a606659163The Android Open Source Project /* to condition) to collect before ending*/ 54864064216a8433360745f69edddce19a606659163The Android Open Source Project /* a scan.*/ 54964064216a8433360745f69edddce19a606659163The Android Open Source Project 55064064216a8433360745f69edddce19a606659163The Android Open Source Project /* Bit 4-5: Early Termination Condition (refer */ 55164064216a8433360745f69edddce19a606659163The Android Open Source Project /* to ETCondition_enum).*/ 55264064216a8433360745f69edddce19a606659163The Android Open Source Project 55364064216a8433360745f69edddce19a606659163The Android Open Source Project uint8 txPowerAttenuation; /* TX power level to be used per channel scanned. */ 55464064216a8433360745f69edddce19a606659163The Android Open Source Project /* If 0, leave normal TX power level for this */ 55564064216a8433360745f69edddce19a606659163The Android Open Source Project /* channel. Range: 0 - 20 [dB].*/ 55664064216a8433360745f69edddce19a606659163The Android Open Source Project 55764064216a8433360745f69edddce19a606659163The Android Open Source Project Channel_e channel; /* Channel number to scan, valid range 0-255 */ 55864064216a8433360745f69edddce19a606659163The Android Open Source Project /* (1-14 for 802.11b). */ 55964064216a8433360745f69edddce19a606659163The Android Open Source Project uint8 padding[3]; /* for alignment to 32 bits boundry*/ 56064064216a8433360745f69edddce19a606659163The Android Open Source Project} BasicScanChannelParameters_t; 56164064216a8433360745f69edddce19a606659163The Android Open Source Project 56264064216a8433360745f69edddce19a606659163The Android Open Source Project/* The Scan command structure.*/ 56364064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef struct 56464064216a8433360745f69edddce19a606659163The Android Open Source Project{ 56564064216a8433360745f69edddce19a606659163The Android Open Source Project BasicScanParameters_t basicScanParameters; /* refer to BasicScanParameters_t */ 56664064216a8433360745f69edddce19a606659163The Android Open Source Project /* definition*/ 56764064216a8433360745f69edddce19a606659163The Android Open Source Project 56864064216a8433360745f69edddce19a606659163The Android Open Source Project BasicScanChannelParameters_t basicScanChannelParameters[SCAN_MAX_NUM_OF_CHANNELS]; 56964064216a8433360745f69edddce19a606659163The Android Open Source Project} ScanParameters_t; 57064064216a8433360745f69edddce19a606659163The Android Open Source Project 57164064216a8433360745f69edddce19a606659163The Android Open Source Project/***************************************************************************** 57264064216a8433360745f69edddce19a606659163The Android Open Source Project 57364064216a8433360745f69edddce19a606659163The Android Open Source Project ID: CMD_TRIGGER_SCAN_TO 57464064216a8433360745f69edddce19a606659163The Android Open Source Project Desc: This Command will configure the enhanced Trigger Scan Timeout 57564064216a8433360745f69edddce19a606659163The Android Open Source Project information. 57664064216a8433360745f69edddce19a606659163The Android Open Source Project To use legacy Trigger Scan, configure the parameter to 0 57764064216a8433360745f69edddce19a606659163The Android Open Source Project Params: None 57864064216a8433360745f69edddce19a606659163The Android Open Source Project 57964064216a8433360745f69edddce19a606659163The Android Open Source Project******************************************************************************/ 58064064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef struct 58164064216a8433360745f69edddce19a606659163The Android Open Source Project{ 58264064216a8433360745f69edddce19a606659163The Android Open Source Project uint32 SlicedScanTimeOut; /* 0 - Split Scan Disable 58364064216a8433360745f69edddce19a606659163The Android Open Source Project any other value will represent the timeout 58464064216a8433360745f69edddce19a606659163The Android Open Source Project for each channel "mini scan" in uSec */ 58564064216a8433360745f69edddce19a606659163The Android Open Source Project}enhancedTriggerTO_t; 58664064216a8433360745f69edddce19a606659163The Android Open Source Project 58764064216a8433360745f69edddce19a606659163The Android Open Source Project 58864064216a8433360745f69edddce19a606659163The Android Open Source Project 58964064216a8433360745f69edddce19a606659163The Android Open Source Project/***************************************************************************** 59064064216a8433360745f69edddce19a606659163The Android Open Source Project 59164064216a8433360745f69edddce19a606659163The Android Open Source Project ID: CMD_STOP_SCAN 59264064216a8433360745f69edddce19a606659163The Android Open Source Project Desc: This command instructs the WiLink to terminate any scan in progress. 59364064216a8433360745f69edddce19a606659163The Android Open Source Project After processing this command, the WiLink returns to its previous state 59464064216a8433360745f69edddce19a606659163The Android Open Source Project (the state before the scan was started) and generates the SCAN_COMPLETE 59564064216a8433360745f69edddce19a606659163The Android Open Source Project information message. 59664064216a8433360745f69edddce19a606659163The Android Open Source Project Params: None 59764064216a8433360745f69edddce19a606659163The Android Open Source Project 59864064216a8433360745f69edddce19a606659163The Android Open Source Project******************************************************************************/ 59964064216a8433360745f69edddce19a606659163The Android Open Source Project 60064064216a8433360745f69edddce19a606659163The Android Open Source Project 60164064216a8433360745f69edddce19a606659163The Android Open Source Project 60264064216a8433360745f69edddce19a606659163The Android Open Source Project/****************************************************************************** 60364064216a8433360745f69edddce19a606659163The Android Open Source Project 60464064216a8433360745f69edddce19a606659163The Android Open Source Project ID: CMD_VBM 60564064216a8433360745f69edddce19a606659163The Android Open Source Project Desc: This command specifies the contents of the beacon TIM template stored 60664064216a8433360745f69edddce19a606659163The Android Open Source Project in the WiLink. 60764064216a8433360745f69edddce19a606659163The Android Open Source Project Params: VBMUpdateRequest_t - see below. 60864064216a8433360745f69edddce19a606659163The Android Open Source Project Note: Second part of Beacon template 60964064216a8433360745f69edddce19a606659163The Android Open Source Project 61064064216a8433360745f69edddce19a606659163The Android Open Source Project******************************************************************************/ 61164064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef struct 61264064216a8433360745f69edddce19a606659163The Android Open Source Project{ 61364064216a8433360745f69edddce19a606659163The Android Open Source Project uint8 identity; /* TIM IE ID*/ 61464064216a8433360745f69edddce19a606659163The Android Open Source Project uint8 length; /* TIM IE Length*/ 61564064216a8433360745f69edddce19a606659163The Android Open Source Project uint8 DTIM_count; 61664064216a8433360745f69edddce19a606659163The Android Open Source Project uint8 DTIM_period; 61764064216a8433360745f69edddce19a606659163The Android Open Source Project uint8 BitMap_ctrl; 61864064216a8433360745f69edddce19a606659163The Android Open Source Project uint8 PVB_field[251]; /* Partial Virtual Bitmap*/ 61964064216a8433360745f69edddce19a606659163The Android Open Source Project} TIMStruct_t; 62064064216a8433360745f69edddce19a606659163The Android Open Source Project 62164064216a8433360745f69edddce19a606659163The Android Open Source Project 62264064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef struct 62364064216a8433360745f69edddce19a606659163The Android Open Source Project{ 62464064216a8433360745f69edddce19a606659163The Android Open Source Project uint16 len; /* length*/ 62564064216a8433360745f69edddce19a606659163The Android Open Source Project uint8 padding[2]; /* for alignment to 32 bits boundry*/ 62664064216a8433360745f69edddce19a606659163The Android Open Source Project TIMStruct_t tim; 62764064216a8433360745f69edddce19a606659163The Android Open Source Project} VBMUpdateRequest_t; 62864064216a8433360745f69edddce19a606659163The Android Open Source Project 62964064216a8433360745f69edddce19a606659163The Android Open Source Project 63064064216a8433360745f69edddce19a606659163The Android Open Source Project/****************************************************************************** 63164064216a8433360745f69edddce19a606659163The Android Open Source Project 63264064216a8433360745f69edddce19a606659163The Android Open Source Project ID: CMD_START_JOIN 63364064216a8433360745f69edddce19a606659163The Android Open Source Project Desc: This command instructs the WiLink to either join a BSS or IBSS, or 63464064216a8433360745f69edddce19a606659163The Android Open Source Project start an IBSS. When the device has joined the BSS or IBSS the Join 63564064216a8433360745f69edddce19a606659163The Android Open Source Project Complete event is raised to the host. 63664064216a8433360745f69edddce19a606659163The Android Open Source Project Params: StartJoinRequest_t - see below. 63764064216a8433360745f69edddce19a606659163The Android Open Source Project 63864064216a8433360745f69edddce19a606659163The Android Open Source Project******************************************************************************/ 63964064216a8433360745f69edddce19a606659163The Android Open Source Project 64064064216a8433360745f69edddce19a606659163The Android Open Source Project#define JOIN_CMD_CTRL_TX_FLUSH 0x80 // When this bit is set, the firmware will flush all Tx 64164064216a8433360745f69edddce19a606659163The Android Open Source Project // frames in the pipe and will not transmit them. 64264064216a8433360745f69edddce19a606659163The Android Open Source Project#define JOIN_CMD_CTRL_EARLY_WAKEUP_ENABLE 0x01 // When this bit is set, the firmware will support 64364064216a8433360745f69edddce19a606659163The Android Open Source Project // early wakeup time 64464064216a8433360745f69edddce19a606659163The Android Open Source Project 64564064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef enum 64664064216a8433360745f69edddce19a606659163The Android Open Source Project{ 64764064216a8433360745f69edddce19a606659163The Android Open Source Project BSS_TYPE_IBSS = 0, 64864064216a8433360745f69edddce19a606659163The Android Open Source Project BSS_TYPE_STA_BSS = 2, 64964064216a8433360745f69edddce19a606659163The Android Open Source Project BSS_TYPE_AP_BSS = 3, 65064064216a8433360745f69edddce19a606659163The Android Open Source Project MAX_BSS_TYPE = 0xFF 65164064216a8433360745f69edddce19a606659163The Android Open Source Project} BssType_enum; 65264064216a8433360745f69edddce19a606659163The Android Open Source Project 65364064216a8433360745f69edddce19a606659163The Android Open Source Project#ifdef HOST_COMPILE 65464064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef uint8 BSS_e; 65564064216a8433360745f69edddce19a606659163The Android Open Source Project#else 65664064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef BssType_enum BSS_e; 65764064216a8433360745f69edddce19a606659163The Android Open Source Project#endif 65864064216a8433360745f69edddce19a606659163The Android Open Source Project 65964064216a8433360745f69edddce19a606659163The Android Open Source Project#define MAX_SSID_STR_LEN_BYTESX4 8 66064064216a8433360745f69edddce19a606659163The Android Open Source Project/* 66164064216a8433360745f69edddce19a606659163The Android Open Source ProjectBasicRateSet_t definition 66264064216a8433360745f69edddce19a606659163The Android Open Source ProjectBit Description 66364064216a8433360745f69edddce19a606659163The Android Open Source Project=== =========== 66464064216a8433360745f69edddce19a606659163The Android Open Source Project0 When this bit is set, 1 MBPS is a member of the basic rate set. 66564064216a8433360745f69edddce19a606659163The Android Open Source Project1 When this bit is set, 2 MBPS is a member of the basic rate set. 66664064216a8433360745f69edddce19a606659163The Android Open Source Project2 When this bit is set, 5.5 MBPS is a member of the basic rate set. 66764064216a8433360745f69edddce19a606659163The Android Open Source Project3 Must be set to 0. 66864064216a8433360745f69edddce19a606659163The Android Open Source Project4 Must be set to 0. 66964064216a8433360745f69edddce19a606659163The Android Open Source Project5 When this bit is set, 11 MBPS is a member of the basic rate set. 67064064216a8433360745f69edddce19a606659163The Android Open Source Project6 Must be set to 0. 67164064216a8433360745f69edddce19a606659163The Android Open Source Project7 Must be set to 0. 67264064216a8433360745f69edddce19a606659163The Android Open Source Project8 When this bit is set, 22 MBPS is a member of the basic rate set. 67364064216a8433360745f69edddce19a606659163The Android Open Source Project9-15 Must be set to 0. 67464064216a8433360745f69edddce19a606659163The Android Open Source Project 67564064216a8433360745f69edddce19a606659163The Android Open Source ProjectNote: For OFDM, the control response frame rates 6, 9, 12, 18, 24 and 36 Mbps are the 67664064216a8433360745f69edddce19a606659163The Android Open Source Project default values and are not configurable. Contact your TI representative for 67764064216a8433360745f69edddce19a606659163The Android Open Source Project information. 67864064216a8433360745f69edddce19a606659163The Android Open Source Project*/ 67964064216a8433360745f69edddce19a606659163The Android Open Source Project 68064064216a8433360745f69edddce19a606659163The Android Open Source Project 68164064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef struct 68264064216a8433360745f69edddce19a606659163The Android Open Source Project{ 68364064216a8433360745f69edddce19a606659163The Android Open Source Project uint32 bssIdL; /* This field indicates the 32 LSBits of the MAC*/ 68464064216a8433360745f69edddce19a606659163The Android Open Source Project /* address of the BSS to join. */ 68564064216a8433360745f69edddce19a606659163The Android Open Source Project /* Note: To correctly generate beacon frames, the */ 68664064216a8433360745f69edddce19a606659163The Android Open Source Project /* byte order of the BSS ID field must be */ 68764064216a8433360745f69edddce19a606659163The Android Open Source Project /* reversed. for example, if the MAC address of */ 68864064216a8433360745f69edddce19a606659163The Android Open Source Project /* the AP is 00 7E 99 11 22 33, program the BSS */ 68964064216a8433360745f69edddce19a606659163The Android Open Source Project /* ID field as 33 22 11 99 7E 00.*/ 69064064216a8433360745f69edddce19a606659163The Android Open Source Project 69164064216a8433360745f69edddce19a606659163The Android Open Source Project uint16 bssIdH; /* This field indicates the 16 MSBits of the MAC*/ 69264064216a8433360745f69edddce19a606659163The Android Open Source Project /* address of the BSS to join. */ 69364064216a8433360745f69edddce19a606659163The Android Open Source Project 69464064216a8433360745f69edddce19a606659163The Android Open Source Project uint16 beaconInterval;/* This field specifies the time between target */ 69564064216a8433360745f69edddce19a606659163The Android Open Source Project /* beacon transmission times (TBTTs), in time */ 69664064216a8433360745f69edddce19a606659163The Android Open Source Project /* units (TUs). Valid values are 1 to 1024.*/ 69764064216a8433360745f69edddce19a606659163The Android Open Source Project 69864064216a8433360745f69edddce19a606659163The Android Open Source Project#ifdef FW_RUNNING_AS_STA 69964064216a8433360745f69edddce19a606659163The Android Open Source Project ACXRxConfigStruct rxFilter; /* This filed is the Rx filter configuration for*/ 70064064216a8433360745f69edddce19a606659163The Android Open Source Project /* the device while connected to the BSS or IBSS.*/ 70164064216a8433360745f69edddce19a606659163The Android Open Source Project /* This setting is overridden in case of a */ 70264064216a8433360745f69edddce19a606659163The Android Open Source Project /* measurement or a scan activity and is reset */ 70364064216a8433360745f69edddce19a606659163The Android Open Source Project /* after these activities end.*/ 70464064216a8433360745f69edddce19a606659163The Android Open Source Project#endif 70564064216a8433360745f69edddce19a606659163The Android Open Source Project BasicRateSet_t basicRateSet; /* For 802.11b, this field specifies the control*/ 70664064216a8433360745f69edddce19a606659163The Android Open Source Project /* response frame rate for the BSS or IBSS (that*/ 70764064216a8433360745f69edddce19a606659163The Android Open Source Project /* is, the BSSBasicRateSet parameter in the */ 70864064216a8433360745f69edddce19a606659163The Android Open Source Project /* 802.11 Specification). The WiLink uses this */ 70964064216a8433360745f69edddce19a606659163The Android Open Source Project /* field to determine the rate at which to */ 71064064216a8433360745f69edddce19a606659163The Android Open Source Project /* transmit control frame responses (such as ACK */ 71164064216a8433360745f69edddce19a606659163The Android Open Source Project /* or CTS frames). The format of this field is */ 71264064216a8433360745f69edddce19a606659163The Android Open Source Project /* shown in the above table (refer to */ 71364064216a8433360745f69edddce19a606659163The Android Open Source Project /* BasicRateSet_t).*/ 71464064216a8433360745f69edddce19a606659163The Android Open Source Project 71564064216a8433360745f69edddce19a606659163The Android Open Source Project uint8 dtimInterval; /* This field specifies the number of beacon */ 71664064216a8433360745f69edddce19a606659163The Android Open Source Project /* intervals between DTIM beacon frames. The host*/ 71764064216a8433360745f69edddce19a606659163The Android Open Source Project /* is only required to set this field when the */ 71864064216a8433360745f69edddce19a606659163The Android Open Source Project /* BSS Type is infrastructure BSS (STA) or AP. */ 71964064216a8433360745f69edddce19a606659163The Android Open Source Project /* For an independent BSS, the host should set */ 72064064216a8433360745f69edddce19a606659163The Android Open Source Project /* this field to 1.*/ 72164064216a8433360745f69edddce19a606659163The Android Open Source Project 72264064216a8433360745f69edddce19a606659163The Android Open Source Project Rate_e txCtrlFrmRate; /* OBSOLETE (replaced by ACX_FW_GEN_FRAME_RATES)*/ 72364064216a8433360745f69edddce19a606659163The Android Open Source Project Mod_e txCtrlFrmMod; /* OBSOLETE (replaced by ACX_FW_GEN_FRAME_RATES)*/ 72464064216a8433360745f69edddce19a606659163The Android Open Source Project 72564064216a8433360745f69edddce19a606659163The Android Open Source Project BSS_e bssType; /* bits 0-2: This bitwise field specifies the type */ 72664064216a8433360745f69edddce19a606659163The Android Open Source Project /* of BSS to start or join (Refer to BssType_enum). */ 72764064216a8433360745f69edddce19a606659163The Android Open Source Project /* bit 4: Band - The radio band in which to join*/ 72864064216a8433360745f69edddce19a606659163The Android Open Source Project /* or start.*/ 72964064216a8433360745f69edddce19a606659163The Android Open Source Project /* 0 - 2.4GHz band */ 73064064216a8433360745f69edddce19a606659163The Android Open Source Project /* 1 - 5GHz band*/ 73164064216a8433360745f69edddce19a606659163The Android Open Source Project /* bits 3, 5-7: Reserved*/ 73264064216a8433360745f69edddce19a606659163The Android Open Source Project 73364064216a8433360745f69edddce19a606659163The Android Open Source Project Channel_e channelNumber; /* This field specifies the channel number of the*/ 73464064216a8433360745f69edddce19a606659163The Android Open Source Project /* BSS to join or start. Valid values are 1 to 14. */ 73564064216a8433360745f69edddce19a606659163The Android Open Source Project /* If the specified channel is not allowed in the*/ 73664064216a8433360745f69edddce19a606659163The Android Open Source Project /* regulatory domain, the command is rejected and*/ 73764064216a8433360745f69edddce19a606659163The Android Open Source Project /* the status code 0x0005 is returned in the */ 73864064216a8433360745f69edddce19a606659163The Android Open Source Project /* Command Status field.*/ 73964064216a8433360745f69edddce19a606659163The Android Open Source Project 74064064216a8433360745f69edddce19a606659163The Android Open Source Project uint8 ssidLength; /* This field specifies the size of the SSID, which*/ 74164064216a8433360745f69edddce19a606659163The Android Open Source Project /* can be up to 32 bytes long.*/ 74264064216a8433360745f69edddce19a606659163The Android Open Source Project 74364064216a8433360745f69edddce19a606659163The Android Open Source Project uint32 ssidStr[MAX_SSID_STR_LEN_BYTESX4]; 74464064216a8433360745f69edddce19a606659163The Android Open Source Project /* This field specifies the SSID of the BSS to */ 74564064216a8433360745f69edddce19a606659163The Android Open Source Project /* start or join. The WiLink uses this information*/ 74664064216a8433360745f69edddce19a606659163The Android Open Source Project /* to filter beacon, probe response and probe */ 74764064216a8433360745f69edddce19a606659163The Android Open Source Project /* request frames (if configured to do so in bit 10*/ 74864064216a8433360745f69edddce19a606659163The Android Open Source Project /* in the Receive Configuration field of the */ 74964064216a8433360745f69edddce19a606659163The Android Open Source Project /* ACXRxConfig information element). */ 75064064216a8433360745f69edddce19a606659163The Android Open Source Project /* It also uses this information to determine if a*/ 75164064216a8433360745f69edddce19a606659163The Android Open Source Project /* probe response should be transmitted in */ 75264064216a8433360745f69edddce19a606659163The Android Open Source Project /* response to a received probe request.*/ 75364064216a8433360745f69edddce19a606659163The Android Open Source Project 75464064216a8433360745f69edddce19a606659163The Android Open Source Project uint8 ctrl; /* Join command control field (refer to */ 75564064216a8433360745f69edddce19a606659163The Android Open Source Project /* JoinCmdCtrl_enum).*/ 75664064216a8433360745f69edddce19a606659163The Android Open Source Project 75764064216a8433360745f69edddce19a606659163The Android Open Source Project Rate_e txMgmtFrmRate; /* OBSOLETE (replaced by ACX_FW_GEN_FRAME_RATES)*/ 75864064216a8433360745f69edddce19a606659163The Android Open Source Project Mod_e txMgmtFrmMod; /* OBSOLETE (replaced by ACX_FW_GEN_FRAME_RATES)*/ 75964064216a8433360745f69edddce19a606659163The Android Open Source Project uint8 reserved1; 76064064216a8433360745f69edddce19a606659163The Android Open Source Project} StartJoinRequest_t; 76164064216a8433360745f69edddce19a606659163The Android Open Source Project 76264064216a8433360745f69edddce19a606659163The Android Open Source Project 76364064216a8433360745f69edddce19a606659163The Android Open Source Project/****************************************************************************** 76464064216a8433360745f69edddce19a606659163The Android Open Source Project 76564064216a8433360745f69edddce19a606659163The Android Open Source Project ID: CMD_SET_KEYS 76664064216a8433360745f69edddce19a606659163The Android Open Source Project Desc: The host issues this command to manage the WEP key cache in the WiLink. 76764064216a8433360745f69edddce19a606659163The Android Open Source Project The host can issue this command during the configuration or operation 76864064216a8433360745f69edddce19a606659163The Android Open Source Project phase. 76964064216a8433360745f69edddce19a606659163The Android Open Source Project Params: SetKey_t - see below. 77064064216a8433360745f69edddce19a606659163The Android Open Source Project 77164064216a8433360745f69edddce19a606659163The Android Open Source Project******************************************************************************/ 77264064216a8433360745f69edddce19a606659163The Android Open Source Project 77364064216a8433360745f69edddce19a606659163The Android Open Source Project#define NUM_ACCESS_CATEGORIES_COPY 4 77464064216a8433360745f69edddce19a606659163The Android Open Source Project 77564064216a8433360745f69edddce19a606659163The Android Open Source Project#define MAX_KEY_SIZE 32 77664064216a8433360745f69edddce19a606659163The Android Open Source Project 77764064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef enum 77864064216a8433360745f69edddce19a606659163The Android Open Source Project{ 77964064216a8433360745f69edddce19a606659163The Android Open Source Project KEY_ADD_OR_REPLACE = 1, /* Add or replace a key in the WEP cache*/ 78064064216a8433360745f69edddce19a606659163The Android Open Source Project KEY_REMOVE = 2, /* Remove a key from the WEP cache*/ 78164064216a8433360745f69edddce19a606659163The Android Open Source Project KEY_SET_ID = 3, /* Set Key ID*/ 78264064216a8433360745f69edddce19a606659163The Android Open Source Project MAX_KEY_ACTION = MAX_POSITIVE16 /* force this enum to be uint16*/ 78364064216a8433360745f69edddce19a606659163The Android Open Source Project} KeyAction_enum; 78464064216a8433360745f69edddce19a606659163The Android Open Source Project 78564064216a8433360745f69edddce19a606659163The Android Open Source Project#ifdef HOST_COMPILE 78664064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef uint16 KeyAction_e; 78764064216a8433360745f69edddce19a606659163The Android Open Source Project#else 78864064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef KeyAction_enum KeyAction_e; 78964064216a8433360745f69edddce19a606659163The Android Open Source Project#endif 79064064216a8433360745f69edddce19a606659163The Android Open Source Project 79164064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef enum 79264064216a8433360745f69edddce19a606659163The Android Open Source Project{ 79364064216a8433360745f69edddce19a606659163The Android Open Source Project KEY_WEP_DEFAULT = 0, 79464064216a8433360745f69edddce19a606659163The Android Open Source Project KEY_WEP_ADDR = 1, 79564064216a8433360745f69edddce19a606659163The Android Open Source Project KEY_AES_GROUP = 4, 79664064216a8433360745f69edddce19a606659163The Android Open Source Project KEY_AES_PAIRWISE = 5, 79764064216a8433360745f69edddce19a606659163The Android Open Source Project KEY_WEP_GROUP = 6, 79864064216a8433360745f69edddce19a606659163The Android Open Source Project KEY_TKIP_MIC_GROUP = 10, 79964064216a8433360745f69edddce19a606659163The Android Open Source Project KEY_TKIP_MIC_PAIRWISE = 11 80064064216a8433360745f69edddce19a606659163The Android Open Source Project} KeyType_enum; 80164064216a8433360745f69edddce19a606659163The Android Open Source Project 80264064216a8433360745f69edddce19a606659163The Android Open Source Project/* 80364064216a8433360745f69edddce19a606659163The Android Open Source ProjectKey Size+Key Data table (valid value) 80464064216a8433360745f69edddce19a606659163The Android Open Source ProjectKeyType_enum Key Type Valid Key Size Key Data Field Format 80564064216a8433360745f69edddce19a606659163The Android Open Source Project============ ======== ============== ===================== 80664064216a8433360745f69edddce19a606659163The Android Open Source Project0x00 WEP default key 5, 13, 29 Key Size bytes of key data 80764064216a8433360745f69edddce19a606659163The Android Open Source Project 80864064216a8433360745f69edddce19a606659163The Android Open Source Project0x01 WEP key mapping key 5, 13, 29 Key Size bytes of key data 80964064216a8433360745f69edddce19a606659163The Android Open Source Project 81064064216a8433360745f69edddce19a606659163The Android Open Source Project0x04 AES Group Key 16 16 bytes of key data 81164064216a8433360745f69edddce19a606659163The Android Open Source Project 81264064216a8433360745f69edddce19a606659163The Android Open Source Project0x05 AES Pairwise Key 16 16 bytes of key data 81364064216a8433360745f69edddce19a606659163The Android Open Source Project 81464064216a8433360745f69edddce19a606659163The Android Open Source Project0x0A TKIP and MIC Group Key 32 16 bytes of TKIP key data 81564064216a8433360745f69edddce19a606659163The Android Open Source Project 8 bytes of Rx MIC key data 81664064216a8433360745f69edddce19a606659163The Android Open Source Project 8 bytes of Tx MIC key data 81764064216a8433360745f69edddce19a606659163The Android Open Source Project 81864064216a8433360745f69edddce19a606659163The Android Open Source Project0x0B TKIP and MIC Pairwise Key 32 16 bytes of TKIP key data 81964064216a8433360745f69edddce19a606659163The Android Open Source Project 8 bytes of Rx MIC key data 82064064216a8433360745f69edddce19a606659163The Android Open Source Project 8 bytes of Tx MIC key data 82164064216a8433360745f69edddce19a606659163The Android Open Source Project*/ 82264064216a8433360745f69edddce19a606659163The Android Open Source Project 82364064216a8433360745f69edddce19a606659163The Android Open Source Project#ifdef HOST_COMPILE 82464064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef uint8 KeyType_e; 82564064216a8433360745f69edddce19a606659163The Android Open Source Project#else 82664064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef KeyType_enum KeyType_e; 82764064216a8433360745f69edddce19a606659163The Android Open Source Project#endif 82864064216a8433360745f69edddce19a606659163The Android Open Source Project 82964064216a8433360745f69edddce19a606659163The Android Open Source Project 83064064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef enum 83164064216a8433360745f69edddce19a606659163The Android Open Source Project{ 83264064216a8433360745f69edddce19a606659163The Android Open Source Project NO_KEY = 0, 83364064216a8433360745f69edddce19a606659163The Android Open Source Project KEY_SIZE_WEP_64 = 5, 83464064216a8433360745f69edddce19a606659163The Android Open Source Project KEY_SIZE_WEP_128 = 13, 83564064216a8433360745f69edddce19a606659163The Android Open Source Project KEY_SIZE_WEP_256 = 29, 83664064216a8433360745f69edddce19a606659163The Android Open Source Project KEY_SIZE_TKIP = MAX_KEY_SIZE 83764064216a8433360745f69edddce19a606659163The Android Open Source Project} KeySize_enum; /* WEP keysizes reflect 3 bytes appended from IV.*/ 83864064216a8433360745f69edddce19a606659163The Android Open Source Project 83964064216a8433360745f69edddce19a606659163The Android Open Source Project#ifdef HOST_COMPILE 84064064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef uint8 KeySize_e; 84164064216a8433360745f69edddce19a606659163The Android Open Source Project#else 84264064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef KeySize_enum KeySize_e; 84364064216a8433360745f69edddce19a606659163The Android Open Source Project#endif 84464064216a8433360745f69edddce19a606659163The Android Open Source Project 84564064216a8433360745f69edddce19a606659163The Android Open Source Project 84664064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef struct 84764064216a8433360745f69edddce19a606659163The Android Open Source Project{ 84864064216a8433360745f69edddce19a606659163The Android Open Source Project uint8 addr[MAC_ADDR_SIZE]; /* This field specifies the MAC address of the station to*/ 84964064216a8433360745f69edddce19a606659163The Android Open Source Project /* add or remove from the WEP key cache. This field is */ 85064064216a8433360745f69edddce19a606659163The Android Open Source Project /* ignored if a WEP default key is being added or removed.*/ 85164064216a8433360745f69edddce19a606659163The Android Open Source Project 85264064216a8433360745f69edddce19a606659163The Android Open Source Project KeyAction_e action; /* This field specifies the action to be performed.*/ 85364064216a8433360745f69edddce19a606659163The Android Open Source Project /* Refer to KeyAction_enum.*/ 85464064216a8433360745f69edddce19a606659163The Android Open Source Project 85564064216a8433360745f69edddce19a606659163The Android Open Source Project uint16 reserved; 85664064216a8433360745f69edddce19a606659163The Android Open Source Project KeySize_e keySize; /* This field indicates the size of the key in bytes */ 85764064216a8433360745f69edddce19a606659163The Android Open Source Project /* being added. Valid values are listed in the Valid Key */ 85864064216a8433360745f69edddce19a606659163The Android Open Source Project /* Size column in the above "Key Size+Key Data table". */ 85964064216a8433360745f69edddce19a606659163The Android Open Source Project 86064064216a8433360745f69edddce19a606659163The Android Open Source Project KeyType_e type; /* This field indicates the type of key being added.*/ 86164064216a8433360745f69edddce19a606659163The Android Open Source Project /* Valid values are listed in the Value column in the*/ 86264064216a8433360745f69edddce19a606659163The Android Open Source Project /* KeyType_enum.*/ 86364064216a8433360745f69edddce19a606659163The Android Open Source Project 86464064216a8433360745f69edddce19a606659163The Android Open Source Project uint8 ssidProfile; /* This field indicates the SSID profile for which the */ 86564064216a8433360745f69edddce19a606659163The Android Open Source Project /* key is set.*/ 86664064216a8433360745f69edddce19a606659163The Android Open Source Project uint8 id; /* Key ID - For TKIP and AES key types, this field */ 86764064216a8433360745f69edddce19a606659163The Android Open Source Project /* indicates the value that should be inserted into the*/ 86864064216a8433360745f69edddce19a606659163The Android Open Source Project /* KeyID field of frames transmitted using this key */ 86964064216a8433360745f69edddce19a606659163The Android Open Source Project /* entry. For WEP default key types, this field indicates*/ 87064064216a8433360745f69edddce19a606659163The Android Open Source Project /* the ID of the key to add or remove. */ 87164064216a8433360745f69edddce19a606659163The Android Open Source Project /* For WEP key mapping key types, this field is ignored.*/ 87264064216a8433360745f69edddce19a606659163The Android Open Source Project /* Valid values for this field are 0 to 3.*/ 87364064216a8433360745f69edddce19a606659163The Android Open Source Project 87464064216a8433360745f69edddce19a606659163The Android Open Source Project uint8 reserved2[6]; 87564064216a8433360745f69edddce19a606659163The Android Open Source Project uint8 key[MAX_KEY_SIZE]; 87664064216a8433360745f69edddce19a606659163The Android Open Source Project /* This field holds the security key data to add to the*/ 87764064216a8433360745f69edddce19a606659163The Android Open Source Project /* STA table. The format of this field varies depending*/ 87864064216a8433360745f69edddce19a606659163The Android Open Source Project /* on the type field. The format of this field for each*/ 87964064216a8433360745f69edddce19a606659163The Android Open Source Project /* key type is described in the Key Data Field Format */ 88064064216a8433360745f69edddce19a606659163The Android Open Source Project /* column in the "Key Size+Key Data table", above.*/ 88164064216a8433360745f69edddce19a606659163The Android Open Source Project 88264064216a8433360745f69edddce19a606659163The Android Open Source Project uint16 AcSeqNum16[NUM_ACCESS_CATEGORIES_COPY]; 88364064216a8433360745f69edddce19a606659163The Android Open Source Project /* This field indicates the lower part of the PN\IV */ 88464064216a8433360745f69edddce19a606659163The Android Open Source Project /* sequence number that is used, for the four Access*/ 88564064216a8433360745f69edddce19a606659163The Android Open Source Project /* Categories.*/ 88664064216a8433360745f69edddce19a606659163The Android Open Source Project 88764064216a8433360745f69edddce19a606659163The Android Open Source Project uint32 AcSeqNum32[NUM_ACCESS_CATEGORIES_COPY]; 88864064216a8433360745f69edddce19a606659163The Android Open Source Project /* This field indicates the higher part of the PN\IV */ 88964064216a8433360745f69edddce19a606659163The Android Open Source Project /* sequence number that is used, for four Access */ 89064064216a8433360745f69edddce19a606659163The Android Open Source Project /* Categories.*/ 89164064216a8433360745f69edddce19a606659163The Android Open Source Project 89264064216a8433360745f69edddce19a606659163The Android Open Source Project} SetKey_t; 89364064216a8433360745f69edddce19a606659163The Android Open Source Project 89464064216a8433360745f69edddce19a606659163The Android Open Source Project 89564064216a8433360745f69edddce19a606659163The Android Open Source Project/****************************************************************************** 89664064216a8433360745f69edddce19a606659163The Android Open Source Project 89764064216a8433360745f69edddce19a606659163The Android Open Source Project ID: CMD_READ_MEMORY 89864064216a8433360745f69edddce19a606659163The Android Open Source Project Desc: The host issues this command to read the WiLink device 89964064216a8433360745f69edddce19a606659163The Android Open Source Project memory/registers. 90064064216a8433360745f69edddce19a606659163The Android Open Source Project Params: ReadWriteCommand_t - see below. 90164064216a8433360745f69edddce19a606659163The Android Open Source Project Note: The Base Band address has special handling (16 bits registers and 90264064216a8433360745f69edddce19a606659163The Android Open Source Project addresses). For more information, see the hardware specification. 90364064216a8433360745f69edddce19a606659163The Android Open Source Project 90464064216a8433360745f69edddce19a606659163The Android Open Source Project******************************************************************************/ 90564064216a8433360745f69edddce19a606659163The Android Open Source Project/****************************************************************************** 90664064216a8433360745f69edddce19a606659163The Android Open Source Project 90764064216a8433360745f69edddce19a606659163The Android Open Source Project ID: CMD_WRITE_MEMORY 90864064216a8433360745f69edddce19a606659163The Android Open Source Project Desc: The host issues this command to write the WiLink device memory/registers. 90964064216a8433360745f69edddce19a606659163The Android Open Source Project Params: ReadWriteCommand_t - see below. 91064064216a8433360745f69edddce19a606659163The Android Open Source Project Note: The Base Band address has special handling (16 bits registers and 91164064216a8433360745f69edddce19a606659163The Android Open Source Project addresses). For more information, see the hardware specification. 91264064216a8433360745f69edddce19a606659163The Android Open Source Project 91364064216a8433360745f69edddce19a606659163The Android Open Source Project******************************************************************************/ 91464064216a8433360745f69edddce19a606659163The Android Open Source Project 91564064216a8433360745f69edddce19a606659163The Android Open Source Project#define MAX_READ_SIZE 256 91664064216a8433360745f69edddce19a606659163The Android Open Source Project 91764064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef struct 91864064216a8433360745f69edddce19a606659163The Android Open Source Project{ 91964064216a8433360745f69edddce19a606659163The Android Open Source Project uint32 addr; /* The address of the memory to read from or write to.*/ 92064064216a8433360745f69edddce19a606659163The Android Open Source Project uint32 size; /* The amount of data in bytes to read from or write */ 92164064216a8433360745f69edddce19a606659163The Android Open Source Project /* to the WiLink device.*/ 92264064216a8433360745f69edddce19a606659163The Android Open Source Project uint8 value[MAX_READ_SIZE]; /* The actual value read from or written to the Wilink.*/ 92364064216a8433360745f69edddce19a606659163The Android Open Source Project /* The source of this field is the Host in WRITE */ 92464064216a8433360745f69edddce19a606659163The Android Open Source Project /* command or the Wilink in READ command.*/ 92564064216a8433360745f69edddce19a606659163The Android Open Source Project} ReadWriteCommand_t; 92664064216a8433360745f69edddce19a606659163The Android Open Source Project 92764064216a8433360745f69edddce19a606659163The Android Open Source Project 92864064216a8433360745f69edddce19a606659163The Android Open Source Project/****************************************************************************** 92964064216a8433360745f69edddce19a606659163The Android Open Source Project 93064064216a8433360745f69edddce19a606659163The Android Open Source Project ID: CMD_BEACON 93164064216a8433360745f69edddce19a606659163The Android Open Source Project Desc: This command specifies the contents of the beacon template stored in 93264064216a8433360745f69edddce19a606659163The Android Open Source Project the WiLink. 93364064216a8433360745f69edddce19a606659163The Android Open Source Project Params: PktTemplate_t - see below. 93464064216a8433360745f69edddce19a606659163The Android Open Source Project 93564064216a8433360745f69edddce19a606659163The Android Open Source Project******************************************************************************/ 93664064216a8433360745f69edddce19a606659163The Android Open Source Project 93764064216a8433360745f69edddce19a606659163The Android Open Source Project/****************************************************************************** 93864064216a8433360745f69edddce19a606659163The Android Open Source Project 93964064216a8433360745f69edddce19a606659163The Android Open Source Project ID: CMD_PROBE_RESP 94064064216a8433360745f69edddce19a606659163The Android Open Source Project Desc: This command specifies the contents of the probe response template 94164064216a8433360745f69edddce19a606659163The Android Open Source Project stored in the WiLink. 94264064216a8433360745f69edddce19a606659163The Android Open Source Project Params: PktTemplate_t - see below. 94364064216a8433360745f69edddce19a606659163The Android Open Source Project 94464064216a8433360745f69edddce19a606659163The Android Open Source Project******************************************************************************/ 94564064216a8433360745f69edddce19a606659163The Android Open Source Project 94664064216a8433360745f69edddce19a606659163The Android Open Source Project/****************************************************************************** 94764064216a8433360745f69edddce19a606659163The Android Open Source Project 94864064216a8433360745f69edddce19a606659163The Android Open Source Project ID: CMD_NULL_DATA 94964064216a8433360745f69edddce19a606659163The Android Open Source Project Desc: This command specifies the contents of the Null data template 95064064216a8433360745f69edddce19a606659163The Android Open Source Project stored in the WiLink. 95164064216a8433360745f69edddce19a606659163The Android Open Source Project Params: PktTemplate_t - see below. 95264064216a8433360745f69edddce19a606659163The Android Open Source Project 95364064216a8433360745f69edddce19a606659163The Android Open Source Project******************************************************************************/ 95464064216a8433360745f69edddce19a606659163The Android Open Source Project 95564064216a8433360745f69edddce19a606659163The Android Open Source Project/****************************************************************************** 95664064216a8433360745f69edddce19a606659163The Android Open Source Project 95764064216a8433360745f69edddce19a606659163The Android Open Source Project ID: CMD_PROBE_REQ 95864064216a8433360745f69edddce19a606659163The Android Open Source Project Desc: This command specifies the contents of the probe request template 95964064216a8433360745f69edddce19a606659163The Android Open Source Project stored in the WiLink. 96064064216a8433360745f69edddce19a606659163The Android Open Source Project Params: PktTemplate_t - see below. 96164064216a8433360745f69edddce19a606659163The Android Open Source Project 96264064216a8433360745f69edddce19a606659163The Android Open Source Project******************************************************************************/ 96364064216a8433360745f69edddce19a606659163The Android Open Source Project 96464064216a8433360745f69edddce19a606659163The Android Open Source Project/****************************************************************************** 96564064216a8433360745f69edddce19a606659163The Android Open Source Project 96664064216a8433360745f69edddce19a606659163The Android Open Source Project ID: CMD_PS_POLL 96764064216a8433360745f69edddce19a606659163The Android Open Source Project Desc: This command specifies the contents of the PS-poll template 96864064216a8433360745f69edddce19a606659163The Android Open Source Project stored in the WiLink. 96964064216a8433360745f69edddce19a606659163The Android Open Source Project Params: PktTemplate_t - see below. 97064064216a8433360745f69edddce19a606659163The Android Open Source Project 97164064216a8433360745f69edddce19a606659163The Android Open Source Project******************************************************************************/ 97264064216a8433360745f69edddce19a606659163The Android Open Source Project 97364064216a8433360745f69edddce19a606659163The Android Open Source Project 97464064216a8433360745f69edddce19a606659163The Android Open Source Project/****************************************************************************** 97564064216a8433360745f69edddce19a606659163The Android Open Source Project 97664064216a8433360745f69edddce19a606659163The Android Open Source Project ID: CMD_QOS_NULL_DATA 97764064216a8433360745f69edddce19a606659163The Android Open Source Project Desc: This command specifies the contents of the QOS-Null template 97864064216a8433360745f69edddce19a606659163The Android Open Source Project stored in the WiLink. 97964064216a8433360745f69edddce19a606659163The Android Open Source Project Params: PktTemplate_t - see below. 98064064216a8433360745f69edddce19a606659163The Android Open Source Project 98164064216a8433360745f69edddce19a606659163The Android Open Source Project******************************************************************************/ 98264064216a8433360745f69edddce19a606659163The Android Open Source Project/* Template command data structure.*/ 98364064216a8433360745f69edddce19a606659163The Android Open Source Project#define MAX_TEMPLATES_SIZE 300 98464064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef struct 98564064216a8433360745f69edddce19a606659163The Android Open Source Project{ 98664064216a8433360745f69edddce19a606659163The Android Open Source Project uint16 len; 98764064216a8433360745f69edddce19a606659163The Android Open Source Project uint8 templateStart[MAX_TEMPLATES_SIZE]; 98864064216a8433360745f69edddce19a606659163The Android Open Source Project} PktTemplate_t; 98964064216a8433360745f69edddce19a606659163The Android Open Source Project 99064064216a8433360745f69edddce19a606659163The Android Open Source Project 99164064216a8433360745f69edddce19a606659163The Android Open Source Project/****************************************************************************** 99264064216a8433360745f69edddce19a606659163The Android Open Source Project 99364064216a8433360745f69edddce19a606659163The Android Open Source Project ID: CMD_TEST 99464064216a8433360745f69edddce19a606659163The Android Open Source Project Desc: The TEST command can be issued immediately after the firmware has 99564064216a8433360745f69edddce19a606659163The Android Open Source Project been downloaded, with no further configuration of the WiLink required. 99664064216a8433360745f69edddce19a606659163The Android Open Source Project Full initialization of the WiLink is not required to invoke the TEST 99764064216a8433360745f69edddce19a606659163The Android Open Source Project command and perform the radio test function. 99864064216a8433360745f69edddce19a606659163The Android Open Source Project After testing, the system must be reset. 99964064216a8433360745f69edddce19a606659163The Android Open Source Project Test parameters can be modified while a test is executing. 100064064216a8433360745f69edddce19a606659163The Android Open Source Project For instance, the host program can change the channel without resetting 100164064216a8433360745f69edddce19a606659163The Android Open Source Project the system. 100264064216a8433360745f69edddce19a606659163The Android Open Source Project 100364064216a8433360745f69edddce19a606659163The Android Open Source Project Params: TestCmd_t - see below. 100464064216a8433360745f69edddce19a606659163The Android Open Source Project The returned values are copied to the cmd/sts MB replacing the command 100564064216a8433360745f69edddce19a606659163The Android Open Source Project (similar to the interrogate mechanism). 100664064216a8433360745f69edddce19a606659163The Android Open Source Project 100764064216a8433360745f69edddce19a606659163The Android Open Source Project******************************************************************************/ 100864064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef enum 100964064216a8433360745f69edddce19a606659163The Android Open Source Project{ 101064064216a8433360745f69edddce19a606659163The Android Open Source Project TEST_CMD_FCC = 0x01, 101164064216a8433360745f69edddce19a606659163The Android Open Source Project TEST_CMD_TELEC = 0x02, 101264064216a8433360745f69edddce19a606659163The Android Open Source Project TEST_CMD_PLT_FCC_TELEC_TX_STOP = 0x04, 101364064216a8433360745f69edddce19a606659163The Android Open Source Project TEST_CMD_PLT_GAIN_GET = 0x05, 101464064216a8433360745f69edddce19a606659163The Android Open Source Project TEST_CMD_PLT_GAIN_ADJUST = 0x06, 101564064216a8433360745f69edddce19a606659163The Android Open Source Project TEST_CMD_PLT_TXPOWER_CAL_START = 0x07, 101664064216a8433360745f69edddce19a606659163The Android Open Source Project TEST_CMD_PLT_TXPOWER_CAL_STOP = 0x08, 101764064216a8433360745f69edddce19a606659163The Android Open Source Project TEST_CMD_PLT_GET_NVS_UPDATE_BUFFER = 0x09, 101864064216a8433360745f69edddce19a606659163The Android Open Source Project TEST_CMD_PLT_RX_CALIBRATION = 0x0a, 101964064216a8433360745f69edddce19a606659163The Android Open Source Project TEST_CMD_RADIO_TUNE = 0x0b, 102064064216a8433360745f69edddce19a606659163The Android Open Source Project TEST_CMD_RX_PER_START = 0x0c, 102164064216a8433360745f69edddce19a606659163The Android Open Source Project TEST_CMD_RX_PER_STOP = 0x0d, 102264064216a8433360745f69edddce19a606659163The Android Open Source Project MAX_TEST_CMD_ID = 0xFF 102364064216a8433360745f69edddce19a606659163The Android Open Source Project} TestCmdID_enum; 102464064216a8433360745f69edddce19a606659163The Android Open Source Project 102564064216a8433360745f69edddce19a606659163The Android Open Source Project#ifdef HOST_COMPILE 102664064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef uint8 TestCmdID_e; 102764064216a8433360745f69edddce19a606659163The Android Open Source Project#else 102864064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef TestCmdID_enum TestCmdID_e; 102964064216a8433360745f69edddce19a606659163The Android Open Source Project#endif 103064064216a8433360745f69edddce19a606659163The Android Open Source Project 103164064216a8433360745f69edddce19a606659163The Android Open Source Project/******************************************************************************/ 103264064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef enum 103364064216a8433360745f69edddce19a606659163The Android Open Source Project{ 103464064216a8433360745f69edddce19a606659163The Android Open Source Project TEST_MODE_HOST_ORIGINATED_DATA = 0x00, 103564064216a8433360745f69edddce19a606659163The Android Open Source Project TEST_MODE_FIXED_SEQ_NUMBER = 0x00, 103664064216a8433360745f69edddce19a606659163The Android Open Source Project TEST_MODE_FW_ORIGINATED_DATA = 0x01, 103764064216a8433360745f69edddce19a606659163The Android Open Source Project TEST_MODE_RANDOM_DATA = 0x05, 103864064216a8433360745f69edddce19a606659163The Android Open Source Project TEST_MODE_ZOZO_DATA = 0x09, 103964064216a8433360745f69edddce19a606659163The Android Open Source Project TEST_MODE_FILLING_PATERN_MASK = 0x0F, 104064064216a8433360745f69edddce19a606659163The Android Open Source Project TEST_MODE_DELAY_REQUIRED = 0x10, 104164064216a8433360745f69edddce19a606659163The Android Open Source Project TEST_MODE_DISABLE_SRCRAMBLING_FLAG = 0x20 104264064216a8433360745f69edddce19a606659163The Android Open Source Project}TestModeCtrlTypes_e; 104364064216a8433360745f69edddce19a606659163The Android Open Source Project 104464064216a8433360745f69edddce19a606659163The Android Open Source Project#ifdef HOST_COMPILE 104564064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef uint8 FccTestType_e; 104664064216a8433360745f69edddce19a606659163The Android Open Source Project#else 104764064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef TestModeCtrlTypes_e FccTestType_e; 104864064216a8433360745f69edddce19a606659163The Android Open Source Project#endif 104964064216a8433360745f69edddce19a606659163The Android Open Source Project 105064064216a8433360745f69edddce19a606659163The Android Open Source Project/******************************************************************************/ 105164064216a8433360745f69edddce19a606659163The Android Open Source Project#define TEST_SEQ_NUM_MODE_FIXED (0) 105264064216a8433360745f69edddce19a606659163The Android Open Source Project#define TEST_SEQ_NUM_MODE_INCREMENTED (1) 105364064216a8433360745f69edddce19a606659163The Android Open Source Project 105464064216a8433360745f69edddce19a606659163The Android Open Source Project/****************************************************************************** 105564064216a8433360745f69edddce19a606659163The Android Open Source Project 105664064216a8433360745f69edddce19a606659163The Android Open Source Project TestCmdId : TEST_CMD_FCC - Tx continuous test 105764064216a8433360745f69edddce19a606659163The Android Open Source Project 105864064216a8433360745f69edddce19a606659163The Android Open Source Project Description: Continuous transmit series of numbers with a valid MAC header 105964064216a8433360745f69edddce19a606659163The Android Open Source Project as was received from driver. 106064064216a8433360745f69edddce19a606659163The Android Open Source Project However there is no 802.11 air access compliance. 106164064216a8433360745f69edddce19a606659163The Android Open Source Project 106264064216a8433360745f69edddce19a606659163The Android Open Source Project Params: PERTxCfg_t fcc - see below. 106364064216a8433360745f69edddce19a606659163The Android Open Source Project 106464064216a8433360745f69edddce19a606659163The Android Open Source Project******************************************************************************/ 106564064216a8433360745f69edddce19a606659163The Android Open Source Project#define NUM_OF_MAC_ADDR_ELEMENTS 6 106664064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef struct PERTxCfg_t 106764064216a8433360745f69edddce19a606659163The Android Open Source Project{ 106864064216a8433360745f69edddce19a606659163The Android Open Source Project /*input parameters*/ 106964064216a8433360745f69edddce19a606659163The Android Open Source Project uint32 numFrames; /* number of frams to transmit, 0 = endless*/ 107064064216a8433360745f69edddce19a606659163The Android Open Source Project uint32 interFrameGap; /* time gap in uSec */ 107164064216a8433360745f69edddce19a606659163The Android Open Source Project uint32 seqNumMode; /* Fixed / Incremented */ 107264064216a8433360745f69edddce19a606659163The Android Open Source Project uint32 frameBodySize; /* length of Mac Payload */ 107364064216a8433360745f69edddce19a606659163The Android Open Source Project uint8 channel; /*channel number*/ 107464064216a8433360745f69edddce19a606659163The Android Open Source Project uint8 dataRate; /* MBps 1,2,11,22,... 54 */ 107564064216a8433360745f69edddce19a606659163The Android Open Source Project uint8 modPreamble; /* CTL_PREAMBLE 0x01 */ 107664064216a8433360745f69edddce19a606659163The Android Open Source Project uint8 band; /* {BAND_SELECT_24GHZ 0x00 | BAND_SELECT_5GHZ 0x01} */ 107764064216a8433360745f69edddce19a606659163The Android Open Source Project uint8 modulation; /* {PBCC_MODULATION_MASK |OFDM_MODULATION_MASK }*/ 107864064216a8433360745f69edddce19a606659163The Android Open Source Project FccTestType_e testModeCtrl; 107964064216a8433360745f69edddce19a606659163The Android Open Source Project uint8 dest[NUM_OF_MAC_ADDR_ELEMENTS]; /* set to hard codded default {0,0,0xde,0xad,0xbe,0xef}; */ 108064064216a8433360745f69edddce19a606659163The Android Open Source Project} PERTxCfg_t; 108164064216a8433360745f69edddce19a606659163The Android Open Source Project 108264064216a8433360745f69edddce19a606659163The Android Open Source Project/****************************************************************************** 108364064216a8433360745f69edddce19a606659163The Android Open Source Project TestCmdId : TEST_CMD_TELEC 108464064216a8433360745f69edddce19a606659163The Android Open Source Project 108564064216a8433360745f69edddce19a606659163The Android Open Source Project Description: Generate carrier wave in a specific channel and band 108664064216a8433360745f69edddce19a606659163The Android Open Source Project 108764064216a8433360745f69edddce19a606659163The Android Open Source Project Params: TestCmdChannelBand_t telec - see below. 108864064216a8433360745f69edddce19a606659163The Android Open Source Project 108964064216a8433360745f69edddce19a606659163The Android Open Source Project******************************************************************************/ 109064064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef struct 109164064216a8433360745f69edddce19a606659163The Android Open Source Project{ 109264064216a8433360745f69edddce19a606659163The Android Open Source Project /*input parameters*/ 109364064216a8433360745f69edddce19a606659163The Android Open Source Project Channel_e channel; /*Channel number*/ 109464064216a8433360745f69edddce19a606659163The Android Open Source Project RadioBand_e band; /* {BAND_SELECT_24GHZ 0x00 | BAND_SELECT_5GHZ 0x01} */ 109564064216a8433360745f69edddce19a606659163The Android Open Source Project uint8 padding[2]; /* padding to 32 bit */ 109664064216a8433360745f69edddce19a606659163The Android Open Source Project} TestCmdChannelBand_t; 109764064216a8433360745f69edddce19a606659163The Android Open Source Project 109864064216a8433360745f69edddce19a606659163The Android Open Source Project/****************************************************************************** 109964064216a8433360745f69edddce19a606659163The Android Open Source Project 110064064216a8433360745f69edddce19a606659163The Android Open Source Project TestCmdId : TEST_CMD_PLT_GAIN_GET 110164064216a8433360745f69edddce19a606659163The Android Open Source Project 110264064216a8433360745f69edddce19a606659163The Android Open Source Project Description: Retrieves the TX chain gain settings. 110364064216a8433360745f69edddce19a606659163The Android Open Source Project 110464064216a8433360745f69edddce19a606659163The Android Open Source Project Params: PltGainGet_t gainGet - see public_radio.h 110564064216a8433360745f69edddce19a606659163The Android Open Source Project 110664064216a8433360745f69edddce19a606659163The Android Open Source Project 110764064216a8433360745f69edddce19a606659163The Android Open Source Project******************************************************************************/ 110864064216a8433360745f69edddce19a606659163The Android Open Source Project 110964064216a8433360745f69edddce19a606659163The Android Open Source Project/****************************************************************************** 111064064216a8433360745f69edddce19a606659163The Android Open Source Project 111164064216a8433360745f69edddce19a606659163The Android Open Source Project TestCmdId: TEST_CMD_PLT_GET_NVS_UPDATE_BUFFER 111264064216a8433360745f69edddce19a606659163The Android Open Source Project 111364064216a8433360745f69edddce19a606659163The Android Open Source Project Description: This PLT function provides the all information required by 111464064216a8433360745f69edddce19a606659163The Android Open Source Project the upper driver in order to update the NVS image. 111564064216a8433360745f69edddce19a606659163The Android Open Source Project It received a parameter defining the type of update 111664064216a8433360745f69edddce19a606659163The Android Open Source Project information required and provides an array of elements 111764064216a8433360745f69edddce19a606659163The Android Open Source Project defining the data bytes to be written to the NVS image 111864064216a8433360745f69edddce19a606659163The Android Open Source Project and the byte offset in which they should be written. 111964064216a8433360745f69edddce19a606659163The Android Open Source Project Params: PltNvsResultsBuffer_t nvsUpdateBuffer - see public_radio.h 112064064216a8433360745f69edddce19a606659163The Android Open Source Project 112164064216a8433360745f69edddce19a606659163The Android Open Source Project 112264064216a8433360745f69edddce19a606659163The Android Open Source Project*****************************************************************************/ 112364064216a8433360745f69edddce19a606659163The Android Open Source Project 112464064216a8433360745f69edddce19a606659163The Android Open Source Project 112564064216a8433360745f69edddce19a606659163The Android Open Source Project/****************************************************************************** 112664064216a8433360745f69edddce19a606659163The Android Open Source Project 112764064216a8433360745f69edddce19a606659163The Android Open Source Project TestCmdId : TEST_CMD_PLT_GAIN_ADJUST 112864064216a8433360745f69edddce19a606659163The Android Open Source Project 112964064216a8433360745f69edddce19a606659163The Android Open Source Project Description: retrieves the TX chain gain settings. 113064064216a8433360745f69edddce19a606659163The Android Open Source Project 113164064216a8433360745f69edddce19a606659163The Android Open Source Project Params: int32 txGainAdjust 113264064216a8433360745f69edddce19a606659163The Android Open Source Project 113364064216a8433360745f69edddce19a606659163The Android Open Source Project*****************************************************************************/ 113464064216a8433360745f69edddce19a606659163The Android Open Source Project 113564064216a8433360745f69edddce19a606659163The Android Open Source Project/****************************************************************************** 113664064216a8433360745f69edddce19a606659163The Android Open Source Project 113764064216a8433360745f69edddce19a606659163The Android Open Source Project TestCmdId : TEST_CMD_PLT_RX_CALIBRATION 113864064216a8433360745f69edddce19a606659163The Android Open Source Project 113964064216a8433360745f69edddce19a606659163The Android Open Source Project Description: Used as part of the RX calibration procedure, call this 114064064216a8433360745f69edddce19a606659163The Android Open Source Project function for every calibration channel. 114164064216a8433360745f69edddce19a606659163The Android Open Source Project The response for that function indicates only that command had been received by th FW, 114264064216a8433360745f69edddce19a606659163The Android Open Source Project and not that the calibration procedure had been finished. 114364064216a8433360745f69edddce19a606659163The Android Open Source Project The upper layer need to wait amount of ((numOfSamples*intervalBetweenSamplesUsec). 114464064216a8433360745f69edddce19a606659163The Android Open Source Project To make sure that the RX calibration completed. before calling to the next command. 114564064216a8433360745f69edddce19a606659163The Android Open Source Project 114664064216a8433360745f69edddce19a606659163The Android Open Source Project Params: PltRxCalibrationRequest_t rxCalibration 114764064216a8433360745f69edddce19a606659163The Android Open Source Project 114864064216a8433360745f69edddce19a606659163The Android Open Source Project ******************************************************************************/ 114964064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef struct PltRxCalibrationRequest_t 115064064216a8433360745f69edddce19a606659163The Android Open Source Project{ 115164064216a8433360745f69edddce19a606659163The Android Open Source Project int32 expectedRssi; /* The calibration generated signal power (db) */ 115264064216a8433360745f69edddce19a606659163The Android Open Source Project int32 intervalBetweenSamplesUsec; /* uSec - recommended value 100 */ 115364064216a8433360745f69edddce19a606659163The Android Open Source Project uint8 channel; 115464064216a8433360745f69edddce19a606659163The Android Open Source Project RadioBand_e band; 115564064216a8433360745f69edddce19a606659163The Android Open Source Project int16 numOfSamples; /* recommended value 1000*/ 115664064216a8433360745f69edddce19a606659163The Android Open Source Project}PltRxCalibrationRequest_t; 115764064216a8433360745f69edddce19a606659163The Android Open Source Project 115864064216a8433360745f69edddce19a606659163The Android Open Source Project/****************************************************************************** 115964064216a8433360745f69edddce19a606659163The Android Open Source Project 116064064216a8433360745f69edddce19a606659163The Android Open Source ProjectTestCmdId : TEST_CMD_PLT_TXPOWER_CAL_START 116164064216a8433360745f69edddce19a606659163The Android Open Source Project 116264064216a8433360745f69edddce19a606659163The Android Open Source ProjectDescription: 116364064216a8433360745f69edddce19a606659163The Android Open Source Project 116464064216a8433360745f69edddce19a606659163The Android Open Source ProjectParams: PltTxCalibrationRequest_t 116564064216a8433360745f69edddce19a606659163The Android Open Source Project 116664064216a8433360745f69edddce19a606659163The Android Open Source Project******************************************************************************/ 116764064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef struct 116864064216a8433360745f69edddce19a606659163The Android Open Source Project{ 116964064216a8433360745f69edddce19a606659163The Android Open Source Project uint8 refTxPower; 117064064216a8433360745f69edddce19a606659163The Android Open Source Project uint8 padding[3]; 117164064216a8433360745f69edddce19a606659163The Android Open Source Project}PltTxCalibrationRequest_t; 117264064216a8433360745f69edddce19a606659163The Android Open Source Project 117364064216a8433360745f69edddce19a606659163The Android Open Source Project/****************************************************************************** 117464064216a8433360745f69edddce19a606659163The Android Open Source Project TestCmd_t - the main PLT structure 117564064216a8433360745f69edddce19a606659163The Android Open Source Project*******************************************************************************/ 117664064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef struct TestCmd_t 117764064216a8433360745f69edddce19a606659163The Android Open Source Project{ 117864064216a8433360745f69edddce19a606659163The Android Open Source Project union 117964064216a8433360745f69edddce19a606659163The Android Open Source Project { 118064064216a8433360745f69edddce19a606659163The Android Open Source Project PERTxCfg_t fcc; 118164064216a8433360745f69edddce19a606659163The Android Open Source Project TestCmdChannelBand_t telec; 118264064216a8433360745f69edddce19a606659163The Android Open Source Project PltGainGet_t gainGet; 118364064216a8433360745f69edddce19a606659163The Android Open Source Project PltNvsResultsBuffer_t nvsUpdateBuffer; 118464064216a8433360745f69edddce19a606659163The Android Open Source Project PltRxCalibrationRequest_t rxCalibration; 118564064216a8433360745f69edddce19a606659163The Android Open Source Project uint32 txGainAdjust; 118664064216a8433360745f69edddce19a606659163The Android Open Source Project TestCmdChannelBand_t radioTune; 118764064216a8433360745f69edddce19a606659163The Android Open Source Project PltTxCalibrationRequest_t txCalibration; 118864064216a8433360745f69edddce19a606659163The Android Open Source Project }testCmd_u; 118964064216a8433360745f69edddce19a606659163The Android Open Source Project TestCmdID_e testCmdId; 119064064216a8433360745f69edddce19a606659163The Android Open Source Project int8 padding[3]; 119164064216a8433360745f69edddce19a606659163The Android Open Source Project}TestCmd_t; 119264064216a8433360745f69edddce19a606659163The Android Open Source Project 119364064216a8433360745f69edddce19a606659163The Android Open Source Project 119464064216a8433360745f69edddce19a606659163The Android Open Source Project 119564064216a8433360745f69edddce19a606659163The Android Open Source Project/****************************************************************************** 119664064216a8433360745f69edddce19a606659163The Android Open Source Project 119764064216a8433360745f69edddce19a606659163The Android Open Source Project ID: CMD_NOISE_HIST 119864064216a8433360745f69edddce19a606659163The Android Open Source Project Desc: This command starts/stops the noise histogram measurements. 119964064216a8433360745f69edddce19a606659163The Android Open Source Project Params: NoiseHistRequest_t - see below. 120064064216a8433360745f69edddce19a606659163The Android Open Source Project 120164064216a8433360745f69edddce19a606659163The Android Open Source Project******************************************************************************/ 120264064216a8433360745f69edddce19a606659163The Android Open Source Project#define NOISE_HIST_LEN 8 120364064216a8433360745f69edddce19a606659163The Android Open Source Project 120464064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef enum 120564064216a8433360745f69edddce19a606659163The Android Open Source Project{ 120664064216a8433360745f69edddce19a606659163The Android Open Source Project NOISE_HIST_STOP, 120764064216a8433360745f69edddce19a606659163The Android Open Source Project NOISE_HIST_START, 120864064216a8433360745f69edddce19a606659163The Android Open Source Project NOISE_HIST_INVALID = MAX_POSITIVE16 /* Force to be 16 bits enum*/ 120964064216a8433360745f69edddce19a606659163The Android Open Source Project} NoiseHistMode_enum; 121064064216a8433360745f69edddce19a606659163The Android Open Source Project 121164064216a8433360745f69edddce19a606659163The Android Open Source Project#ifdef HOST_COMPILE 121264064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef uint16 NoiseHistMode_e; 121364064216a8433360745f69edddce19a606659163The Android Open Source Project#else 121464064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef NoiseHistMode_enum NoiseHistMode_e; 121564064216a8433360745f69edddce19a606659163The Android Open Source Project#endif 121664064216a8433360745f69edddce19a606659163The Android Open Source Project 121764064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef struct 121864064216a8433360745f69edddce19a606659163The Android Open Source Project{ 121964064216a8433360745f69edddce19a606659163The Android Open Source Project NoiseHistMode_e mode; /* Start or stop the FW engine. */ 122064064216a8433360745f69edddce19a606659163The Android Open Source Project /* Possible values are 1 (Start) and 0 (Stop).*/ 122164064216a8433360745f69edddce19a606659163The Android Open Source Project 122264064216a8433360745f69edddce19a606659163The Android Open Source Project uint16 sampleIntervalUSec; /* The time interval in usec between measurements.*/ 122364064216a8433360745f69edddce19a606659163The Android Open Source Project /* Valid values are between 100us (default) and */ 122464064216a8433360745f69edddce19a606659163The Android Open Source Project /* 2ms (with 100us jumps). This parameter is */ 122564064216a8433360745f69edddce19a606659163The Android Open Source Project /* relevant only when Mode is Start (1).*/ 122664064216a8433360745f69edddce19a606659163The Android Open Source Project 122764064216a8433360745f69edddce19a606659163The Android Open Source Project uint8 thresholds[NOISE_HIST_LEN];/* An array of eight 8 bit thresholds. The FW */ 122864064216a8433360745f69edddce19a606659163The Android Open Source Project /* takes noise measurements, once every */ 122964064216a8433360745f69edddce19a606659163The Android Open Source Project /* SampleIntervalUSec interval. If the measured */ 123064064216a8433360745f69edddce19a606659163The Android Open Source Project /* noise level is between the threshold[X] and */ 123164064216a8433360745f69edddce19a606659163The Android Open Source Project /* threshold[X 1], then the FW increments the */ 123264064216a8433360745f69edddce19a606659163The Android Open Source Project /* noise histogram counter[X]. */ 123364064216a8433360745f69edddce19a606659163The Android Open Source Project /* The counters are read via the */ 123464064216a8433360745f69edddce19a606659163The Android Open Source Project /* ACXNoiseHistogramResults IE. This parameter is */ 123564064216a8433360745f69edddce19a606659163The Android Open Source Project /* relevant only when Mode is Start (1).*/ 123664064216a8433360745f69edddce19a606659163The Android Open Source Project} NoiseHistRequest_t; 123764064216a8433360745f69edddce19a606659163The Android Open Source Project 123864064216a8433360745f69edddce19a606659163The Android Open Source Project 123964064216a8433360745f69edddce19a606659163The Android Open Source Project/****************************************************************************** 124064064216a8433360745f69edddce19a606659163The Android Open Source Project 124164064216a8433360745f69edddce19a606659163The Android Open Source Project ID: CMD_RX_RESET 124264064216a8433360745f69edddce19a606659163The Android Open Source Project Desc: This command resets the MAC Rx path. After the command is issued, 124364064216a8433360745f69edddce19a606659163The Android Open Source Project the MAC Rx path is reset the next time a frame is received (in the PHY 124464064216a8433360745f69edddce19a606659163The Android Open Source Project Rx Header interrupt). 124564064216a8433360745f69edddce19a606659163The Android Open Source Project Params: None. 124664064216a8433360745f69edddce19a606659163The Android Open Source Project Note: This command is for TI internal use only. 124764064216a8433360745f69edddce19a606659163The Android Open Source Project 124864064216a8433360745f69edddce19a606659163The Android Open Source Project******************************************************************************/ 124964064216a8433360745f69edddce19a606659163The Android Open Source Project 125064064216a8433360745f69edddce19a606659163The Android Open Source Project 125164064216a8433360745f69edddce19a606659163The Android Open Source Project/****************************************************************************** 125264064216a8433360745f69edddce19a606659163The Android Open Source Project 125364064216a8433360745f69edddce19a606659163The Android Open Source Project ID: CMD_LNA_CONTROL 125464064216a8433360745f69edddce19a606659163The Android Open Source Project Desc: This command controls the LNA state. 125564064216a8433360745f69edddce19a606659163The Android Open Source Project Params: LNAControl_t - see below. 125664064216a8433360745f69edddce19a606659163The Android Open Source Project 125764064216a8433360745f69edddce19a606659163The Android Open Source Project******************************************************************************/ 125864064216a8433360745f69edddce19a606659163The Android Open Source Project 125964064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef enum 126064064216a8433360745f69edddce19a606659163The Android Open Source Project{ 126164064216a8433360745f69edddce19a606659163The Android Open Source Project LNA_MODE_MANUAL, /* 0: The LNA is set to manual mode and is turned off.*/ 126264064216a8433360745f69edddce19a606659163The Android Open Source Project LNA_MODE_AUTO, /* 1: The LNA is set to automatic mode.*/ 126364064216a8433360745f69edddce19a606659163The Android Open Source Project LNA_MODE_INVALID = 0xFF 126464064216a8433360745f69edddce19a606659163The Android Open Source Project} LnaMode_enum; 126564064216a8433360745f69edddce19a606659163The Android Open Source Project 126664064216a8433360745f69edddce19a606659163The Android Open Source Project#ifdef HOST_COMPILE 126764064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef uint8 LnaMode_e; 126864064216a8433360745f69edddce19a606659163The Android Open Source Project#else 126964064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef LnaMode_enum LnaMode_e; 127064064216a8433360745f69edddce19a606659163The Android Open Source Project#endif 127164064216a8433360745f69edddce19a606659163The Android Open Source Project 127264064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef struct 127364064216a8433360745f69edddce19a606659163The Android Open Source Project{ 127464064216a8433360745f69edddce19a606659163The Android Open Source Project LnaMode_e LNAControlField; /* refer to LnaMode_enum*/ 127564064216a8433360745f69edddce19a606659163The Android Open Source Project uint8 padding[3]; /* for alignment to 32 bits boundry*/ 127664064216a8433360745f69edddce19a606659163The Android Open Source Project} LNAControl_t; 127764064216a8433360745f69edddce19a606659163The Android Open Source Project 127864064216a8433360745f69edddce19a606659163The Android Open Source Project 127964064216a8433360745f69edddce19a606659163The Android Open Source Project/****************************************************************************** 128064064216a8433360745f69edddce19a606659163The Android Open Source Project 128164064216a8433360745f69edddce19a606659163The Android Open Source Project ID: CMD_MEASUREMENT 128264064216a8433360745f69edddce19a606659163The Android Open Source Project Desc: This command instructs the WiLink device to begin a basic channel 128364064216a8433360745f69edddce19a606659163The Android Open Source Project load measurement on the specified channel. When the measurement 128464064216a8433360745f69edddce19a606659163The Android Open Source Project process actually starts running the WilLink device will raise the 128564064216a8433360745f69edddce19a606659163The Android Open Source Project Measurement Started event. When the measurement process completes as 128664064216a8433360745f69edddce19a606659163The Android Open Source Project a result of the end of the measurement duration or a STOP_MEASUREMENT 128764064216a8433360745f69edddce19a606659163The Android Open Source Project command, the WilLink device will raise a Measurement Complete event. 128864064216a8433360745f69edddce19a606659163The Android Open Source Project Params: MeasurementParameters_t - see below. 128964064216a8433360745f69edddce19a606659163The Android Open Source Project 129064064216a8433360745f69edddce19a606659163The Android Open Source Project******************************************************************************/ 129164064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef struct 129264064216a8433360745f69edddce19a606659163The Android Open Source Project{ 129364064216a8433360745f69edddce19a606659163The Android Open Source Project ACXRxConfigStruct rxFilter; /* This field is the Rx filter configuration for the */ 129464064216a8433360745f69edddce19a606659163The Android Open Source Project /* device while the measurement process is running. */ 129564064216a8433360745f69edddce19a606659163The Android Open Source Project /* When the process ends the previous Rx filter */ 129664064216a8433360745f69edddce19a606659163The Android Open Source Project /* configuration is reset. The filter configuration is*/ 129764064216a8433360745f69edddce19a606659163The Android Open Source Project /* composed of two 32 bit registers. When they are set*/ 129864064216a8433360745f69edddce19a606659163The Android Open Source Project /* to 0xFFFFFFFF the Rx filter configuration is not*/ 129964064216a8433360745f69edddce19a606659163The Android Open Source Project /* changed.*/ 130064064216a8433360745f69edddce19a606659163The Android Open Source Project 130164064216a8433360745f69edddce19a606659163The Android Open Source Project uint32 duration; /* Specifies the measurement process duration in */ 130264064216a8433360745f69edddce19a606659163The Android Open Source Project /* microseconds. The value of 0 means infinite duration*/ 130364064216a8433360745f69edddce19a606659163The Android Open Source Project /* in which only a STOP_MEASUREMENT command can*/ 130464064216a8433360745f69edddce19a606659163The Android Open Source Project /* stop the measurement process.*/ 130564064216a8433360745f69edddce19a606659163The Android Open Source Project 130664064216a8433360745f69edddce19a606659163The Android Open Source Project Channel_e channel; /* Channel number on which the measurement is performed,*/ 130764064216a8433360745f69edddce19a606659163The Android Open Source Project /* valid range 0-255 (1-14 for 802.11b).*/ 130864064216a8433360745f69edddce19a606659163The Android Open Source Project 130964064216a8433360745f69edddce19a606659163The Android Open Source Project RadioBand_e band; /* Specifies the band to which the channel belongs. */ 131064064216a8433360745f69edddce19a606659163The Android Open Source Project /* 0 - 2.4GHz */ 131164064216a8433360745f69edddce19a606659163The Android Open Source Project /* 1 - 5GHz , */ 131264064216a8433360745f69edddce19a606659163The Android Open Source Project /* 0xFF - Current band.*/ 131364064216a8433360745f69edddce19a606659163The Android Open Source Project 131464064216a8433360745f69edddce19a606659163The Android Open Source Project uint8 padding[2]; /* for alignment to 32 bits boundry*/ 131564064216a8433360745f69edddce19a606659163The Android Open Source Project} MeasurementParameters_t; 131664064216a8433360745f69edddce19a606659163The Android Open Source Project 131764064216a8433360745f69edddce19a606659163The Android Open Source Project/****************************************************************************** 131864064216a8433360745f69edddce19a606659163The Android Open Source Project 131964064216a8433360745f69edddce19a606659163The Android Open Source Project ID: CMD_STOP_MEASUREMENT 132064064216a8433360745f69edddce19a606659163The Android Open Source Project Desc: This command instructs the WiLink to terminate any measurement in 132164064216a8433360745f69edddce19a606659163The Android Open Source Project progress. After processing this command, the WiLink returns to its 132264064216a8433360745f69edddce19a606659163The Android Open Source Project previous state (the state before the measurement was started) and 132364064216a8433360745f69edddce19a606659163The Android Open Source Project generates the Measurment Complete event. 132464064216a8433360745f69edddce19a606659163The Android Open Source Project Params: None. 132564064216a8433360745f69edddce19a606659163The Android Open Source Project 132664064216a8433360745f69edddce19a606659163The Android Open Source Project******************************************************************************/ 132764064216a8433360745f69edddce19a606659163The Android Open Source Project 132864064216a8433360745f69edddce19a606659163The Android Open Source Project/****************************************************************************** 132964064216a8433360745f69edddce19a606659163The Android Open Source Project 133064064216a8433360745f69edddce19a606659163The Android Open Source Project ID: CMD_DISCONNECT 133164064216a8433360745f69edddce19a606659163The Android Open Source Project Desc: This command instructs the WiLink device to stop all BSS or IBSS activity. 133264064216a8433360745f69edddce19a606659163The Android Open Source Project The device will cancel all of its TSF dependent events and activities. 133364064216a8433360745f69edddce19a606659163The Android Open Source Project Power Save dependent activities are an exception to this, therefore 133464064216a8433360745f69edddce19a606659163The Android Open Source Project the host must exit Power Save mode by issuing the SET_PS_MODE command 133564064216a8433360745f69edddce19a606659163The Android Open Source Project before calling this command. When this command is complete the Disconnect 133664064216a8433360745f69edddce19a606659163The Android Open Source Project Complete event is raised to the host and the WiLink device is allowed 133764064216a8433360745f69edddce19a606659163The Android Open Source Project to enter the configured low power state. 133864064216a8433360745f69edddce19a606659163The Android Open Source Project Params: DisconnectParameters_t - see below. 133964064216a8433360745f69edddce19a606659163The Android Open Source Project 134064064216a8433360745f69edddce19a606659163The Android Open Source Project******************************************************************************/ 134164064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef struct 134264064216a8433360745f69edddce19a606659163The Android Open Source Project{ 134364064216a8433360745f69edddce19a606659163The Android Open Source Project ACXRxConfigStruct rxFilter; /* This field is the Rx filter configuration for the*/ 134464064216a8433360745f69edddce19a606659163The Android Open Source Project /* device that is set after the disconnection is */ 134564064216a8433360745f69edddce19a606659163The Android Open Source Project /* complete. */ 134664064216a8433360745f69edddce19a606659163The Android Open Source Project 134764064216a8433360745f69edddce19a606659163The Android Open Source Project 134864064216a8433360745f69edddce19a606659163The Android Open Source Project} DisconnectParameters_t; 134964064216a8433360745f69edddce19a606659163The Android Open Source Project 135064064216a8433360745f69edddce19a606659163The Android Open Source Project 135164064216a8433360745f69edddce19a606659163The Android Open Source Project/****************************************************************************** 135264064216a8433360745f69edddce19a606659163The Android Open Source Project 135364064216a8433360745f69edddce19a606659163The Android Open Source Project ID: CMD_SET_PS_MODE 135464064216a8433360745f69edddce19a606659163The Android Open Source Project Desc: This command turns ON/OFF Power save protocol on the WiLink. 135564064216a8433360745f69edddce19a606659163The Android Open Source Project After HW configuration, FW sends Null data packet to the AP with Power 135664064216a8433360745f69edddce19a606659163The Android Open Source Project Management bit set accordingly to the field "Mode" of this command 135764064216a8433360745f69edddce19a606659163The Android Open Source Project structure. After processing this command, the FW generates the 135864064216a8433360745f69edddce19a606659163The Android Open Source Project PS_COMPLETE event. 135964064216a8433360745f69edddce19a606659163The Android Open Source Project Params: PSModeParameters_t - see below. 136064064216a8433360745f69edddce19a606659163The Android Open Source Project 136164064216a8433360745f69edddce19a606659163The Android Open Source Project******************************************************************************/ 136264064216a8433360745f69edddce19a606659163The Android Open Source Project 136364064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef enum 136464064216a8433360745f69edddce19a606659163The Android Open Source Project{ 136564064216a8433360745f69edddce19a606659163The Android Open Source Project STATION_ACTIVE_MODE, 136664064216a8433360745f69edddce19a606659163The Android Open Source Project STATION_POWER_SAVE_MODE 136764064216a8433360745f69edddce19a606659163The Android Open Source Project} StationPSMode_enum; 136864064216a8433360745f69edddce19a606659163The Android Open Source Project 136964064216a8433360745f69edddce19a606659163The Android Open Source Project#ifdef HOST_COMPILE 137064064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef uint8 StationPowerSaveMode_e; 137164064216a8433360745f69edddce19a606659163The Android Open Source Project#else 137264064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef StationPSMode_enum StationPowerSaveMode_e; 137364064216a8433360745f69edddce19a606659163The Android Open Source Project#endif 137464064216a8433360745f69edddce19a606659163The Android Open Source Project 137564064216a8433360745f69edddce19a606659163The Android Open Source Project/* 137664064216a8433360745f69edddce19a606659163The Android Open Source ProjectTxdRateSet_t definition 137764064216a8433360745f69edddce19a606659163The Android Open Source ProjectBit Description 137864064216a8433360745f69edddce19a606659163The Android Open Source Project=== =========== 137964064216a8433360745f69edddce19a606659163The Android Open Source Project0-12 Every one of bits 0-12 specifies rate described in the column on left. Only 138064064216a8433360745f69edddce19a606659163The Android Open Source Project one bit could be set for the command, all other should be zeroed. 138164064216a8433360745f69edddce19a606659163The Android Open Source Project0 1 MBPS 138264064216a8433360745f69edddce19a606659163The Android Open Source Project1 2 MBPS 138364064216a8433360745f69edddce19a606659163The Android Open Source Project2 5.5 MBPS 138464064216a8433360745f69edddce19a606659163The Android Open Source Project3 6 MBPS 138564064216a8433360745f69edddce19a606659163The Android Open Source Project4 9 MBPS 138664064216a8433360745f69edddce19a606659163The Android Open Source Project5 11 MBPS 138764064216a8433360745f69edddce19a606659163The Android Open Source Project6 12 MBPS 138864064216a8433360745f69edddce19a606659163The Android Open Source Project7 18 MBPS 138964064216a8433360745f69edddce19a606659163The Android Open Source Project8 22 MBPS 139064064216a8433360745f69edddce19a606659163The Android Open Source Project9 24 MBPS 139164064216a8433360745f69edddce19a606659163The Android Open Source Project10 36 MBPS 139264064216a8433360745f69edddce19a606659163The Android Open Source Project11 48 MBPS 139364064216a8433360745f69edddce19a606659163The Android Open Source Project12 54 MBPS 139464064216a8433360745f69edddce19a606659163The Android Open Source Project13 Unused (set to 0). 139564064216a8433360745f69edddce19a606659163The Android Open Source Project14 PBCC - When this bit is set, the WiLink transmits probe requests with PBCC 139664064216a8433360745f69edddce19a606659163The Android Open Source Project modulation. 139764064216a8433360745f69edddce19a606659163The Android Open Source Project15 Preamble - When this bit is set, the WiLink transmits probe requests with a 139864064216a8433360745f69edddce19a606659163The Android Open Source Project short preamble. When this bit is clear, the WiLink transmits the 139964064216a8433360745f69edddce19a606659163The Android Open Source Project frame with a long preamble. 140064064216a8433360745f69edddce19a606659163The Android Open Source Project 140164064216a8433360745f69edddce19a606659163The Android Open Source ProjectIf neither the PBCC bit or OFDM rate are set, then the modulation format for probe 140264064216a8433360745f69edddce19a606659163The Android Open Source Projectrequests is CCK for 5.5 or 11 Mbps or DBPSK/DQPSK for 1 and 2 Mbps. 140364064216a8433360745f69edddce19a606659163The Android Open Source Project*/ 140464064216a8433360745f69edddce19a606659163The Android Open Source Project 140564064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef struct 140664064216a8433360745f69edddce19a606659163The Android Open Source Project{ 140764064216a8433360745f69edddce19a606659163The Android Open Source Project StationPowerSaveMode_e mode; /* This field specifies the future Power save*/ 140864064216a8433360745f69edddce19a606659163The Android Open Source Project /* protocol mode of the system. */ 140964064216a8433360745f69edddce19a606659163The Android Open Source Project /* When set, Power save protocol is enabled. */ 141064064216a8433360745f69edddce19a606659163The Android Open Source Project /* When cleared, Power save protocol is */ 141164064216a8433360745f69edddce19a606659163The Android Open Source Project /* disabled (refer to StationPSMode_enum).*/ 141264064216a8433360745f69edddce19a606659163The Android Open Source Project 141364064216a8433360745f69edddce19a606659163The Android Open Source Project uint8 needToSendNullData; 141464064216a8433360745f69edddce19a606659163The Android Open Source Project uint8 numberOfRetries; /* This field specifies the maximum allowed */ 141564064216a8433360745f69edddce19a606659163The Android Open Source Project /* number of retries of the Null data packet */ 141664064216a8433360745f69edddce19a606659163The Android Open Source Project /* that FW will send after switching the */ 141764064216a8433360745f69edddce19a606659163The Android Open Source Project /* Power Save Protocol mode.*/ 141864064216a8433360745f69edddce19a606659163The Android Open Source Project 141964064216a8433360745f69edddce19a606659163The Android Open Source Project uint8 hangOverPeriod; /* This field specifies the hangover period, */ 142064064216a8433360745f69edddce19a606659163The Android Open Source Project /* which is the time in TUs during which the */ 142164064216a8433360745f69edddce19a606659163The Android Open Source Project /* WiLink remains awake after sending an MPDU */ 142264064216a8433360745f69edddce19a606659163The Android Open Source Project /* with the Power Save bit set, indicating that*/ 142364064216a8433360745f69edddce19a606659163The Android Open Source Project /* the station is to go into Power Save mode. */ 142464064216a8433360745f69edddce19a606659163The Android Open Source Project /* Setting bit 0 does not affect the hangover */ 142564064216a8433360745f69edddce19a606659163The Android Open Source Project /* period.*/ 142664064216a8433360745f69edddce19a606659163The Android Open Source Project 142764064216a8433360745f69edddce19a606659163The Android Open Source Project TxdRateSet_t rateToTransmitNullData; /* This bitwise field specifies the rate and */ 142864064216a8433360745f69edddce19a606659163The Android Open Source Project /* modulation to transmit the Null data packet*/ 142964064216a8433360745f69edddce19a606659163The Android Open Source Project /* to the AP. refer to above table */ 143064064216a8433360745f69edddce19a606659163The Android Open Source Project /* (TxdRateSet_t). */ 143164064216a8433360745f69edddce19a606659163The Android Open Source Project 143264064216a8433360745f69edddce19a606659163The Android Open Source Project uint8 padding[2]; /* for alignment to 32 bits boundry*/ 143364064216a8433360745f69edddce19a606659163The Android Open Source Project} PSModeParameters_t; 143464064216a8433360745f69edddce19a606659163The Android Open Source Project 143564064216a8433360745f69edddce19a606659163The Android Open Source Project/****************************************************************************** 143664064216a8433360745f69edddce19a606659163The Android Open Source Project 143764064216a8433360745f69edddce19a606659163The Android Open Source Project ID: CMD_CHANNEL_SWITCH 143864064216a8433360745f69edddce19a606659163The Android Open Source Project Desc: This command instructs the WiLink to switch serving channel at the given 143964064216a8433360745f69edddce19a606659163The Android Open Source Project time. Once the channel switch is performed, the Channel Switch Complete 144064064216a8433360745f69edddce19a606659163The Android Open Source Project event is raised to the host. 144164064216a8433360745f69edddce19a606659163The Android Open Source Project Params: ChannelSwitchParameters_t - see below. 144264064216a8433360745f69edddce19a606659163The Android Open Source Project 144364064216a8433360745f69edddce19a606659163The Android Open Source Project******************************************************************************/ 144464064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef struct 144564064216a8433360745f69edddce19a606659163The Android Open Source Project{ 144664064216a8433360745f69edddce19a606659163The Android Open Source Project Channel_e channel; /* The new serving channel.*/ 144764064216a8433360745f69edddce19a606659163The Android Open Source Project uint8 switchTime; /* Relative time of the serving channel switch in TBTT units.*/ 144864064216a8433360745f69edddce19a606659163The Android Open Source Project Bool_e txSuspend; /* 1: Suspend TX till switch time; */ 144964064216a8433360745f69edddce19a606659163The Android Open Source Project /* 0: Do not suspend TX*/ 145064064216a8433360745f69edddce19a606659163The Android Open Source Project Bool_e flush; /* 1: Flush TX at switch time; */ 145164064216a8433360745f69edddce19a606659163The Android Open Source Project /* 0: Do not flush*/ 145264064216a8433360745f69edddce19a606659163The Android Open Source Project 145364064216a8433360745f69edddce19a606659163The Android Open Source Project} ChannelSwitchParameters_t; 145464064216a8433360745f69edddce19a606659163The Android Open Source Project 145564064216a8433360745f69edddce19a606659163The Android Open Source Project/****************************************************************************** 145664064216a8433360745f69edddce19a606659163The Android Open Source Project 145764064216a8433360745f69edddce19a606659163The Android Open Source Project ID: CMD_STOP_CHANNEL_SWICTH 145864064216a8433360745f69edddce19a606659163The Android Open Source Project Desc: This command instructs the WiLink device to cancel performing a 145964064216a8433360745f69edddce19a606659163The Android Open Source Project pending channel switch event command. 146064064216a8433360745f69edddce19a606659163The Android Open Source Project Params: None. 146164064216a8433360745f69edddce19a606659163The Android Open Source Project 146264064216a8433360745f69edddce19a606659163The Android Open Source Project******************************************************************************/ 146364064216a8433360745f69edddce19a606659163The Android Open Source Project 146464064216a8433360745f69edddce19a606659163The Android Open Source Project/****************************************************************************** 146564064216a8433360745f69edddce19a606659163The Android Open Source Project 146664064216a8433360745f69edddce19a606659163The Android Open Source Project ID: CMD_AP_DISCOVERY 146764064216a8433360745f69edddce19a606659163The Android Open Source Project Desc: This command instructs the WiLink device to perform an AP discovery 146864064216a8433360745f69edddce19a606659163The Android Open Source Project measurement on a single channel. This command can only be issued after 146964064216a8433360745f69edddce19a606659163The Android Open Source Project a measurement process has been started by the WiLink device as a result 147064064216a8433360745f69edddce19a606659163The Android Open Source Project of a previous Measurement command. The Measurement command specifies the 147164064216a8433360745f69edddce19a606659163The Android Open Source Project channel on which the AP discovery is performed. Once the "AP discovery" 147264064216a8433360745f69edddce19a606659163The Android Open Source Project measurement is completed either by a STOP_AP_DISCOVERY command or when 147364064216a8433360745f69edddce19a606659163The Android Open Source Project the duration has expired, it will send an "AP discovery complete event" 147464064216a8433360745f69edddce19a606659163The Android Open Source Project to the host. 147564064216a8433360745f69edddce19a606659163The Android Open Source Project Params: ApDiscoveryParameters_t - see below. 147664064216a8433360745f69edddce19a606659163The Android Open Source Project 147764064216a8433360745f69edddce19a606659163The Android Open Source Project******************************************************************************/ 147864064216a8433360745f69edddce19a606659163The Android Open Source Project/* 147964064216a8433360745f69edddce19a606659163The Android Open Source ProjectTxdRateSet_t definition 148064064216a8433360745f69edddce19a606659163The Android Open Source ProjectBit Description 148164064216a8433360745f69edddce19a606659163The Android Open Source Project=== =========== 148264064216a8433360745f69edddce19a606659163The Android Open Source Project0-12 Every one of bits 0-12 specifies rate described in the column on left. Only 148364064216a8433360745f69edddce19a606659163The Android Open Source Project one bit could be set for the command, all other should be zeroed. 148464064216a8433360745f69edddce19a606659163The Android Open Source Project0 1 MBPS 148564064216a8433360745f69edddce19a606659163The Android Open Source Project1 2 MBPS 148664064216a8433360745f69edddce19a606659163The Android Open Source Project2 5.5 MBPS 148764064216a8433360745f69edddce19a606659163The Android Open Source Project3 6 MBPS 148864064216a8433360745f69edddce19a606659163The Android Open Source Project4 9 MBPS 148964064216a8433360745f69edddce19a606659163The Android Open Source Project5 11 MBPS 149064064216a8433360745f69edddce19a606659163The Android Open Source Project6 12 MBPS 149164064216a8433360745f69edddce19a606659163The Android Open Source Project7 18 MBPS 149264064216a8433360745f69edddce19a606659163The Android Open Source Project8 22 MBPS 149364064216a8433360745f69edddce19a606659163The Android Open Source Project9 24 MBPS 149464064216a8433360745f69edddce19a606659163The Android Open Source Project10 36 MBPS 149564064216a8433360745f69edddce19a606659163The Android Open Source Project11 48 MBPS 149664064216a8433360745f69edddce19a606659163The Android Open Source Project12 54 MBPS 149764064216a8433360745f69edddce19a606659163The Android Open Source Project13 Unused (set to 0). 149864064216a8433360745f69edddce19a606659163The Android Open Source Project14 PBCC - When this bit is set, the WiLink transmits probe requests with PBCC 149964064216a8433360745f69edddce19a606659163The Android Open Source Project modulation. 150064064216a8433360745f69edddce19a606659163The Android Open Source Project Notes: 150164064216a8433360745f69edddce19a606659163The Android Open Source Project Does not apply (set to 0) for rates 1 and 2 Mbps. 150264064216a8433360745f69edddce19a606659163The Android Open Source Project Does not apply (set to 0) for RevG-OFDM rates. 150364064216a8433360745f69edddce19a606659163The Android Open Source Project15 Preamble - When this bit is set, the WiLink transmits probe requests with a 150464064216a8433360745f69edddce19a606659163The Android Open Source Project short preamble. When this bit is clear, the WiLink transmits the 150564064216a8433360745f69edddce19a606659163The Android Open Source Project frame with a long preamble. 150664064216a8433360745f69edddce19a606659163The Android Open Source Project Notes: 150764064216a8433360745f69edddce19a606659163The Android Open Source Project Must be LONG (0) for 1Mbps rate. 150864064216a8433360745f69edddce19a606659163The Android Open Source Project Does not apply (set to 0) for RevG-OFDM rates. 150964064216a8433360745f69edddce19a606659163The Android Open Source Project 151064064216a8433360745f69edddce19a606659163The Android Open Source ProjectIf neither the PBCC bit or OFDM rate are set, then the modulation format for probe 151164064216a8433360745f69edddce19a606659163The Android Open Source Projectrequests is CCK for 5.5 or 11 Mbps or DBPSK/DQPSK for 1 and 2 Mbps. 151264064216a8433360745f69edddce19a606659163The Android Open Source Project*/ 151364064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef struct 151464064216a8433360745f69edddce19a606659163The Android Open Source Project{ 151564064216a8433360745f69edddce19a606659163The Android Open Source Project ACXRxConfigStruct rxFilter; /* This field is the Rx filter configuration for the */ 151664064216a8433360745f69edddce19a606659163The Android Open Source Project /* device while the AP Discovery process is running. */ 151764064216a8433360745f69edddce19a606659163The Android Open Source Project /* When the process ends the previous Rx filter */ 151864064216a8433360745f69edddce19a606659163The Android Open Source Project /* configuration is reset. The filter configuration is*/ 151964064216a8433360745f69edddce19a606659163The Android Open Source Project /* composed of two 32 bit registers. When they are set */ 152064064216a8433360745f69edddce19a606659163The Android Open Source Project /* to 0xFFFFFFFF the Rx filter configuration is not */ 152164064216a8433360745f69edddce19a606659163The Android Open Source Project /* changed.*/ 152264064216a8433360745f69edddce19a606659163The Android Open Source Project 152364064216a8433360745f69edddce19a606659163The Android Open Source Project uint32 scanDuration; /* This field specifies the amount of time, in time*/ 152464064216a8433360745f69edddce19a606659163The Android Open Source Project /* units (TUs), to perform the AP discovery. The value*/ 152564064216a8433360745f69edddce19a606659163The Android Open Source Project /* can range from 0 to 65535 TUs (67.1 seconds). */ 152664064216a8433360745f69edddce19a606659163The Android Open Source Project 152764064216a8433360745f69edddce19a606659163The Android Open Source Project uint16 scanOptions; /* This field specifies whether the AP discovery is */ 152864064216a8433360745f69edddce19a606659163The Android Open Source Project /* performed by an active scan or a passive scan. */ 152964064216a8433360745f69edddce19a606659163The Android Open Source Project /* 0 - ACTIVE, 1 - PASSIVE.*/ 153064064216a8433360745f69edddce19a606659163The Android Open Source Project 153164064216a8433360745f69edddce19a606659163The Android Open Source Project uint8 numOfProbRqst; /* This field indicates the number of probe requests to*/ 153264064216a8433360745f69edddce19a606659163The Android Open Source Project /* send per channel, when active scan is specified. */ 153364064216a8433360745f69edddce19a606659163The Android Open Source Project /* Note: for EXC measurement this value should be set */ 153464064216a8433360745f69edddce19a606659163The Android Open Source Project /* to 1.*/ 153564064216a8433360745f69edddce19a606659163The Android Open Source Project 153664064216a8433360745f69edddce19a606659163The Android Open Source Project uint8 txPowerAttenuation; /* TX power level to be used for sending probe requests*/ 153764064216a8433360745f69edddce19a606659163The Android Open Source Project /* when active scan is specified. */ 153864064216a8433360745f69edddce19a606659163The Android Open Source Project /* If 0, leave normal TX power level for this channel. */ 153964064216a8433360745f69edddce19a606659163The Android Open Source Project 154064064216a8433360745f69edddce19a606659163The Android Open Source Project TxdRateSet_t txdRateSet; /* This bitwise field specifies the rate and modulation*/ 154164064216a8433360745f69edddce19a606659163The Android Open Source Project /* to transmit the probe request when an active scan is*/ 154264064216a8433360745f69edddce19a606659163The Android Open Source Project /* specified. Refer to above descrption ob TxdRateSet.*/ 154364064216a8433360745f69edddce19a606659163The Android Open Source Project uint8 padding[3]; /* for alignment to 32 bits boundry*/ 154464064216a8433360745f69edddce19a606659163The Android Open Source Project} ApDiscoveryParameters_t; 154564064216a8433360745f69edddce19a606659163The Android Open Source Project 154664064216a8433360745f69edddce19a606659163The Android Open Source Project/****************************************************************************** 154764064216a8433360745f69edddce19a606659163The Android Open Source Project 154864064216a8433360745f69edddce19a606659163The Android Open Source Project ID: CMD_STOP_AP_DISCOVERY 154964064216a8433360745f69edddce19a606659163The Android Open Source Project Desc: This command instructs the WiLink to terminate the AP Discovery 155064064216a8433360745f69edddce19a606659163The Android Open Source Project measurement in progress. After processing this command, the WiLink 155164064216a8433360745f69edddce19a606659163The Android Open Source Project returns to its previous state and generates the AP Discovery Complete 155264064216a8433360745f69edddce19a606659163The Android Open Source Project Event. 155364064216a8433360745f69edddce19a606659163The Android Open Source Project Params: None. 155464064216a8433360745f69edddce19a606659163The Android Open Source Project 155564064216a8433360745f69edddce19a606659163The Android Open Source Project******************************************************************************/ 155664064216a8433360745f69edddce19a606659163The Android Open Source Project 155764064216a8433360745f69edddce19a606659163The Android Open Source Project/****************************************************************************** 155864064216a8433360745f69edddce19a606659163The Android Open Source Project 155964064216a8433360745f69edddce19a606659163The Android Open Source Project ID: CMD_SPS_SCAN 156064064216a8433360745f69edddce19a606659163The Android Open Source Project Desc: This command instructs the WiLink to perform a scheduled passive 156164064216a8433360745f69edddce19a606659163The Android Open Source Project scan for BSS/IBSSs. The WiLink monitors the specified channel(s) 156264064216a8433360745f69edddce19a606659163The Android Open Source Project for beacons. The WiLink sends Scheduled Scan Complete event to notify 156364064216a8433360745f69edddce19a606659163The Android Open Source Project the host when it has completed a scan. 156464064216a8433360745f69edddce19a606659163The Android Open Source Project Params: InfoElement_t - see below. 156564064216a8433360745f69edddce19a606659163The Android Open Source Project 156664064216a8433360745f69edddce19a606659163The Android Open Source Project******************************************************************************/ 156764064216a8433360745f69edddce19a606659163The Android Open Source Project/* Scheduled - General scan parameters.*/ 156864064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef struct 156964064216a8433360745f69edddce19a606659163The Android Open Source Project{ 157064064216a8433360745f69edddce19a606659163The Android Open Source Project ACXRxConfigStruct rxCfg; /* Rx filter to be used for each channel scan. */ 157164064216a8433360745f69edddce19a606659163The Android Open Source Project /* The BSSID filter enable will be set (by the scan*/ 157264064216a8433360745f69edddce19a606659163The Android Open Source Project /* process) to ON for a specific channel if the*/ 157364064216a8433360745f69edddce19a606659163The Android Open Source Project /* BSSID of this channel is a unicast address. */ 157464064216a8433360745f69edddce19a606659163The Android Open Source Project /* Otherwise it will be set to OFF (Refer to */ 157564064216a8433360745f69edddce19a606659163The Android Open Source Project /* ACXRxConfigStruct).*/ 157664064216a8433360745f69edddce19a606659163The Android Open Source Project 157764064216a8433360745f69edddce19a606659163The Android Open Source Project uint32 scanCmdTime_h; /* This filed is the latest 32 MSBits of TSF known*/ 157864064216a8433360745f69edddce19a606659163The Android Open Source Project /* at the time the SPS command was issued. When the*/ 157964064216a8433360745f69edddce19a606659163The Android Open Source Project /* scan process is about to begin, this value is */ 158064064216a8433360745f69edddce19a606659163The Android Open Source Project /* used to determine if the AP has performed a */ 158164064216a8433360745f69edddce19a606659163The Android Open Source Project /* recovery by comparing this value to the current*/ 158264064216a8433360745f69edddce19a606659163The Android Open Source Project /* TSF. (An AP that has performed a recovery should*/ 158364064216a8433360745f69edddce19a606659163The Android Open Source Project /* have a lower TSF then the one that was saved).*/ 158464064216a8433360745f69edddce19a606659163The Android Open Source Project 158564064216a8433360745f69edddce19a606659163The Android Open Source Project uint32 scanCmdTime_l; /* This filed is the latest 32 LSBits of TSF known*/ 158664064216a8433360745f69edddce19a606659163The Android Open Source Project /* at the time the SPS command was issued. */ 158764064216a8433360745f69edddce19a606659163The Android Open Source Project 158864064216a8433360745f69edddce19a606659163The Android Open Source Project uint16 scanOptions; /* This bitwise field indicates the scan options. */ 158964064216a8433360745f69edddce19a606659163The Android Open Source Project /* Bits [0,2:15] are reserved. */ 159064064216a8433360745f69edddce19a606659163The Android Open Source Project /* Bit 1 is defined as follows:*/ 159164064216a8433360745f69edddce19a606659163The Android Open Source Project /* Band Select - When this bit is set, the WiLink*/ 159264064216a8433360745f69edddce19a606659163The Android Open Source Project /* scans the specified channels in */ 159364064216a8433360745f69edddce19a606659163The Android Open Source Project /* the 5GHz band. */ 159464064216a8433360745f69edddce19a606659163The Android Open Source Project /* When this bit is cleared, the */ 159564064216a8433360745f69edddce19a606659163The Android Open Source Project /* WiLink scans the specified */ 159664064216a8433360745f69edddce19a606659163The Android Open Source Project /* channels in the 2.4GHz band. */ 159764064216a8433360745f69edddce19a606659163The Android Open Source Project 159864064216a8433360745f69edddce19a606659163The Android Open Source Project 159964064216a8433360745f69edddce19a606659163The Android Open Source Project uint8 numChannels; /* Number of scan channels in the list (minimum */ 160064064216a8433360745f69edddce19a606659163The Android Open Source Project /* (minimumis 1, maximum is 30).*/ 160164064216a8433360745f69edddce19a606659163The Android Open Source Project 160264064216a8433360745f69edddce19a606659163The Android Open Source Project uint8 padding; /* for alignment to 32 bits boundry*/ 160364064216a8433360745f69edddce19a606659163The Android Open Source Project} ScheduledGeneralParameters_t; 160464064216a8433360745f69edddce19a606659163The Android Open Source Project 160564064216a8433360745f69edddce19a606659163The Android Open Source Project 160664064216a8433360745f69edddce19a606659163The Android Open Source Project/* Scheduled - Per-Channel scan parameters.*/ 160764064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef struct 160864064216a8433360745f69edddce19a606659163The Android Open Source Project{ 160964064216a8433360745f69edddce19a606659163The Android Open Source Project uint32 scanStartTime; /* Duration in microseconds of the scan on this channel */ 161064064216a8433360745f69edddce19a606659163The Android Open Source Project /* (Scan could be aborted before this duration in case of*/ 161164064216a8433360745f69edddce19a606659163The Android Open Source Project /* early termination condition met on the channel). */ 161264064216a8433360745f69edddce19a606659163The Android Open Source Project 161364064216a8433360745f69edddce19a606659163The Android Open Source Project uint32 scanMaxDuration; /* Lower 4 bytes of TSF time in microseconds when the */ 161464064216a8433360745f69edddce19a606659163The Android Open Source Project /* scan should start listening on the desired channel. */ 161564064216a8433360745f69edddce19a606659163The Android Open Source Project 161664064216a8433360745f69edddce19a606659163The Android Open Source Project uint32 bssIdL; /* 32 LSBits of BSSID of the AP to scan for. If scanning */ 161764064216a8433360745f69edddce19a606659163The Android Open Source Project /* on this channel any BSSID, this field shall be set */ 161864064216a8433360745f69edddce19a606659163The Android Open Source Project /* to broadcast BSSID. */ 161964064216a8433360745f69edddce19a606659163The Android Open Source Project 162064064216a8433360745f69edddce19a606659163The Android Open Source Project uint16 bssIdH; /* 16 MSBits of BSSID of the AP to scan for. */ 162164064216a8433360745f69edddce19a606659163The Android Open Source Project 162264064216a8433360745f69edddce19a606659163The Android Open Source Project ETCondCount_t ETCondCount; /* bit 0-3: Early Termination count - This field */ 162364064216a8433360745f69edddce19a606659163The Android Open Source Project /* defines the maximum number of beacons*/ 162464064216a8433360745f69edddce19a606659163The Android Open Source Project /* or probe responses or both (according*/ 162564064216a8433360745f69edddce19a606659163The Android Open Source Project /* to condition) to collect before ending*/ 162664064216a8433360745f69edddce19a606659163The Android Open Source Project /* a scan.*/ 162764064216a8433360745f69edddce19a606659163The Android Open Source Project 162864064216a8433360745f69edddce19a606659163The Android Open Source Project /* Bit 4-5: Early Termination Condition (refer */ 162964064216a8433360745f69edddce19a606659163The Android Open Source Project /* to ETCondition_enum).*/ 163064064216a8433360745f69edddce19a606659163The Android Open Source Project Channel_e channel; /* Channel number to scan, valid range 0-255 */ 163164064216a8433360745f69edddce19a606659163The Android Open Source Project /* (1-14 for 802.11b).*/ 163264064216a8433360745f69edddce19a606659163The Android Open Source Project} ScheduledChannelParameters_t; 163364064216a8433360745f69edddce19a606659163The Android Open Source Project 163464064216a8433360745f69edddce19a606659163The Android Open Source Project 163564064216a8433360745f69edddce19a606659163The Android Open Source Project/* The Scheduled Scan command structure.*/ 163664064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef struct 163764064216a8433360745f69edddce19a606659163The Android Open Source Project{ 163864064216a8433360745f69edddce19a606659163The Android Open Source Project ScheduledGeneralParameters_t scheduledGeneralParameters; 163964064216a8433360745f69edddce19a606659163The Android Open Source Project ScheduledChannelParameters_t scheduledChannelParameters[SCAN_MAX_NUM_OF_CHANNELS]; 164064064216a8433360745f69edddce19a606659163The Android Open Source Project} ScheduledScanParameters_t; 164164064216a8433360745f69edddce19a606659163The Android Open Source Project 164264064216a8433360745f69edddce19a606659163The Android Open Source Project/****************************************************************************** 164364064216a8433360745f69edddce19a606659163The Android Open Source Project 164464064216a8433360745f69edddce19a606659163The Android Open Source Project ID: CMD_STOP_SPS_SCAN 164564064216a8433360745f69edddce19a606659163The Android Open Source Project Desc: This command instructs the WiLink to terminate a currently running 164664064216a8433360745f69edddce19a606659163The Android Open Source Project SPS or a pending SPS.. After processing this command, the WiLink 164764064216a8433360745f69edddce19a606659163The Android Open Source Project returns to its previous state and generates the Scheduled Scan 164864064216a8433360745f69edddce19a606659163The Android Open Source Project Complete Event. 164964064216a8433360745f69edddce19a606659163The Android Open Source Project Params: None. 165064064216a8433360745f69edddce19a606659163The Android Open Source Project 165164064216a8433360745f69edddce19a606659163The Android Open Source Project******************************************************************************/ 165264064216a8433360745f69edddce19a606659163The Android Open Source Project 165364064216a8433360745f69edddce19a606659163The Android Open Source Project/****************************************************************************** 165464064216a8433360745f69edddce19a606659163The Android Open Source Project 165564064216a8433360745f69edddce19a606659163The Android Open Source Project ID: CMD_HEALTH_CHECK 165664064216a8433360745f69edddce19a606659163The Android Open Source Project Desc: This command instructs the WiLink to raise a MAC status event 165764064216a8433360745f69edddce19a606659163The Android Open Source Project which contains the current FCS Error counter. 165864064216a8433360745f69edddce19a606659163The Android Open Source Project Params: None. 165964064216a8433360745f69edddce19a606659163The Android Open Source Project 166064064216a8433360745f69edddce19a606659163The Android Open Source Project******************************************************************************/ 166164064216a8433360745f69edddce19a606659163The Android Open Source Project 166264064216a8433360745f69edddce19a606659163The Android Open Source Project/****************************************************************************** 166364064216a8433360745f69edddce19a606659163The Android Open Source Project 166464064216a8433360745f69edddce19a606659163The Android Open Source Project ID: CMD_DEBUG 166564064216a8433360745f69edddce19a606659163The Android Open Source Project Desc: 166664064216a8433360745f69edddce19a606659163The Android Open Source Project Params: debugCommnad_t - see below. 166764064216a8433360745f69edddce19a606659163The Android Open Source Project 166864064216a8433360745f69edddce19a606659163The Android Open Source Project******************************************************************************/ 166964064216a8433360745f69edddce19a606659163The Android Open Source Project#define MAX_DEBUG_PARAMETERS 10 167064064216a8433360745f69edddce19a606659163The Android Open Source Project 167164064216a8433360745f69edddce19a606659163The Android Open Source Projecttypedef struct 167264064216a8433360745f69edddce19a606659163The Android Open Source Project{ 167364064216a8433360745f69edddce19a606659163The Android Open Source Project uint32 id; 167464064216a8433360745f69edddce19a606659163The Android Open Source Project uint32 params[MAX_DEBUG_PARAMETERS]; 167564064216a8433360745f69edddce19a606659163The Android Open Source Project} debugCommnad_t; 167664064216a8433360745f69edddce19a606659163The Android Open Source Project 167764064216a8433360745f69edddce19a606659163The Android Open Source Project/* PLT public definitions*/ 167864064216a8433360745f69edddce19a606659163The Android Open Source Project#define TEST_CONTINUOUS 0x04 /* transmit frames contimuously */ 167964064216a8433360745f69edddce19a606659163The Android Open Source Project 168064064216a8433360745f69edddce19a606659163The Android Open Source Project 168164064216a8433360745f69edddce19a606659163The Android Open Source Project/*This typedef corresponds to the Fig 1 Frame Format for PER test given in PER test doc.*/ 168264064216a8433360745f69edddce19a606659163The Android Open Source Project#define PER_MODE_TX 1 168364064216a8433360745f69edddce19a606659163The Android Open Source Project#define PER_MODE_RX 2 168464064216a8433360745f69edddce19a606659163The Android Open Source Project#define INFRA 0x2 /* BSS is in Infrastructure mode */ 168564064216a8433360745f69edddce19a606659163The Android Open Source Project#define LOCAL_MEM_LAST 0x02000000 168664064216a8433360745f69edddce19a606659163The Android Open Source Project#define PBCC_MODULATION_MASK 0x80 168764064216a8433360745f69edddce19a606659163The Android Open Source Project#define OFDM_MODULATION_MASK 0x40 168864064216a8433360745f69edddce19a606659163The Android Open Source Project#define BAND_SELECT_5GHZ 0x10 168964064216a8433360745f69edddce19a606659163The Android Open Source Project#define CTL_PREAMBLE 0x01 169064064216a8433360745f69edddce19a606659163The Android Open Source Project 169164064216a8433360745f69edddce19a606659163The Android Open Source Project 169264064216a8433360745f69edddce19a606659163The Android Open Source Project 169364064216a8433360745f69edddce19a606659163The Android Open Source Project#endif /* PUBLIC_COMMANDS_H*/ 1694