Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Fork of WlanBP3595AP by
WlanBP3595.h
00001 /****************************************************************************/ 00002 /* Copyright (c) 2015 GRAPE SYSTEMS INC. */ 00003 /* */ 00004 /* Licensed under the Apache License, Version 2.0 (the "License"); */ 00005 /* you may not use this file except in compliance with the License. */ 00006 /* You may obtain a copy of the License at */ 00007 /* */ 00008 /* http://www.apache.org/licenses/LICENSE-2.0 */ 00009 /* */ 00010 /* Unless required by applicable law or agreed to in writing, software */ 00011 /* distributed under the License is distributed on an "AS IS" BASIS, */ 00012 /* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. */ 00013 /* See the License for the specific language governing permissions and */ 00014 /* limitations under the License. */ 00015 /* */ 00016 /* [Additional license terms] */ 00017 /* */ 00018 /* This library is free for non-commercial purposes. */ 00019 /* To use this commercially, contact us at */ 00020 /* */ 00021 /* sales@info.grape.co.jp */ 00022 /* */ 00023 /****************************************************************************/ 00024 00025 /** @file 00026 * 00027 * WlanBP3595 library. 00028 * This library only works with GR-PEACH. 00029 * 00030 * @note 00031 * Please refer to ROHM's "Software Development Specs" for the information of WID. 00032 */ 00033 00034 #ifndef _WLANBP3595_H_ 00035 #define _WLANBP3595_H_ 00036 00037 #include "rza1_bp3595_emac.h" 00038 #include "lwip/opt.h" 00039 #include "lwip/pbuf.h" 00040 00041 #ifdef __cplusplus 00042 extern "C" { 00043 #endif 00044 00045 /**** CONSTANT DEFINES **************************************************************************/ 00046 00047 /** @name Status of WlanBP3595 00048 * 00049 */ 00050 /*@{*/ 00051 #define WLAN_BP3595_NONE 0 /*!< BP3595 is not connected, or the firmware is not downloaded */ 00052 #define WLAN_BP3595_FW_DL 1 /*!< The firmware is being downloaded */ 00053 #define WLAN_BP3595_START 2 /*!< The firmware was downloaded and is working */ 00054 /*@}*/ 00055 00056 /**** FUNCTION PROTOTYPE & MACRO FUNCTION ******************************************************/ 00057 00058 /** Initialize WlanBP3595 00059 * 00060 * @note 00061 * After executing this function, please wait until the state becomes WLAN_BP3595_START. 00062 * You can get the status by WlanBP3595_GetWlanSts(). 00063 * 00064 * @param pfnWlanInfoNotication The information callback function 00065 * - 1st param : The message type ('I' or 'N') 00066 * - 2nd param : WID number 00067 * - 3rd param : The data size 00068 * - 4th param : The data buffer 00069 * @retval 0 Success 00070 * @retval "The others" Failure 00071 */ 00072 int WlanBP3595_Init(void (*pfnWlanInfoNotication)(uint8_t, uint16_t, uint16_t, uint8_t *)); 00073 00074 /** Get the status of WlanBP3595 00075 * 00076 * @retval WLAN_BP3595_NONE BP3595 is not connected, or the firmware is not downloaded 00077 * @retval WLAN_BP3595_FW_DL The firmware is being downloaded 00078 * @retval WLAN_BP3595_START The firmware was downloaded and is working 00079 */ 00080 uint32_t WlanBP3595_GetWlanSts(void); 00081 00082 /** Execute WID function 00083 * 00084 * @param ulFunc A function number 00085 * @param pvParam The data buffer (the parameter) 00086 * @retval 0 Success 00087 * @retval "The others" Failure 00088 */ 00089 int WlanBP3595_Ioctl(uint32_t ulFunc, void *pvParam); 00090 00091 /** Output an ethernet frame 00092 * 00093 * @note 00094 * This function is used in EthernetInterface driver. 00095 * 00096 * @param p A pbuf to output 00097 * @retval 0 Success 00098 * @retval "The others" Failure 00099 */ 00100 int WlanBP3595_Output(struct pbuf *p); 00101 00102 /** Enable receiving 00103 * 00104 * @note 00105 * This function is used in EthernetInterface driver. 00106 */ 00107 void WlanBP3595_RecvEnable(void); 00108 00109 /** Disable receiving 00110 * 00111 * @note 00112 * This function is used in EthernetInterface driver. 00113 */ 00114 void WlanBP3595_RecvDisable(void); 00115 00116 /** @name Macro Function 00117 * 00118 */ 00119 /*@{*/ 00120 00121 /** Notify the EthernetInterface driver that WLAN was connected 00122 * 00123 * When WLAN was connected, 00124 * please call this macro function from your application program. 00125 * The types of the argument and the return value are "void". 00126 * You can know the change of the connection state by the information callback. 00127 * 00128 * @note 00129 * When this function is called before executing EthernetInterface::init(), this function does nothing. 00130 * If you use WlanBP3595_Disconnected() in a different thread, please perform exclusive control. 00131 */ 00132 #define WlanBP3595_Connected() rza1_bp3595_connected() 00133 00134 /** Notify the EthernetInterface driver that WLAN was disconnected 00135 * 00136 * When WLAN was disconnected, 00137 * please call this macro function from your application program. 00138 * The types of the argument and the return value are "void". 00139 * You can know the change of the connection state by the information callback. 00140 * 00141 * @note 00142 * When this function is called before executing EthernetInterface::init(), this function does nothing. 00143 * If you use WlanBP3595_Connected() in a different thread, please perform exclusive control. 00144 */ 00145 #define WlanBP3595_Disconnected() rza1_bp3595_disconnected() 00146 00147 /*@}*/ 00148 00149 /**** TYPE DEFINES ******************************************************************************/ 00150 typedef unsigned int grp_ui; 00151 typedef signed int grp_si; 00152 00153 typedef unsigned long grp_u32; 00154 typedef signed long grp_s32; 00155 00156 typedef unsigned short grp_u16; 00157 typedef signed short grp_s16; 00158 00159 typedef unsigned char grp_u8; 00160 typedef signed char grp_s8; 00161 00162 /**** SIZE DEFINES ******************************************************************************/ 00163 #define GRP_WLD_SSID_SIZE 32 00164 #define GRP_WLD_BSSID_SIZE 6 00165 #define GRP_WLD_MAC_ADDRESS_SIZE 6 00166 #define GRP_WLD_WEP_KEY_SIZE_128 13 00167 00168 /**** IOCTL FUNCTION PARAMETER DEFINES **********************************************************/ 00169 #define GRP_WLD_IOCTL_SITE_SURVEY_RESULT_MAX 8 00170 00171 /**** IOCTL FUNCTION BASE NUMBER DEFINES ********************************************************/ 00172 #define GRP_WLD_IOCTL_FUNCTION_KIND_MASK 0xc000 00173 #define GRP_WLD_IOCTL_GET_FUNCTION 0x8000 00174 #define GRP_WLD_IOCTL_SET_FUNCTION 0x4000 00175 00176 /**** IOCTL FUNCTION NUMBER DEFINES *************************************************************/ 00177 00178 /** @name Function code 00179 * 00180 */ 00181 /*@{*/ 00182 #define GRP_WLD_IOCTL_GET_BSS_TYPE GRP_WLD_IOCTL_GET_FUNCTION + 0x0001 /*!< The function code of WID_BSS_TYPE for getting. The parameter type is "grp_u8". */ 00183 #define GRP_WLD_IOCTL_SET_BSS_TYPE GRP_WLD_IOCTL_SET_FUNCTION + 0x0001 /*!< The function code of WID_BSS_TYPE for setting. The parameter type is "grp_u8". */ 00184 #define GRP_WLD_IOCTL_GET_CHANNEL GRP_WLD_IOCTL_GET_FUNCTION + 0x0002 /*!< The function code of WID_CURRENT_CHANNEL for getting. The parameter type is "grp_u8". */ 00185 #define GRP_WLD_IOCTL_SET_CHANNEL GRP_WLD_IOCTL_SET_FUNCTION + 0x0002 /*!< The function code of WID_CURRENT_CHANNEL for setting. The parameter type is "grp_u8". */ 00186 #define GRP_WLD_IOCTL_GET_ENABLE_CHANNEL GRP_WLD_IOCTL_GET_FUNCTION + 0x0003 /*!< The function code of WID_ENABLE_CHANNEL for getting. The parameter type is "grp_u32". */ 00187 #define GRP_WLD_IOCTL_SET_ENABLE_CHANNEL GRP_WLD_IOCTL_SET_FUNCTION + 0x0003 /*!< The function code of WID_ENABLE_CHANNEL for setting. The parameter type is "grp_u32". */ 00188 #define GRP_WLD_IOCTL_GET_11I_MODE GRP_WLD_IOCTL_GET_FUNCTION + 0x0004 /*!< The function code of WID_11I_MODE for getting. The parameter type is "grp_u8". */ 00189 #define GRP_WLD_IOCTL_SET_11I_MODE GRP_WLD_IOCTL_SET_FUNCTION + 0x0004 /*!< The function code of WID_11I_MODE for setting. The parameter type is "grp_u8". */ 00190 #define GRP_WLD_IOCTL_GET_11I_PSK GRP_WLD_IOCTL_GET_FUNCTION + 0x0005 /*!< The function code of WID_11I_PSK for getting. The parameter type is "grp_wld_byte_array". */ 00191 #define GRP_WLD_IOCTL_SET_11I_PSK GRP_WLD_IOCTL_SET_FUNCTION + 0x0005 /*!< The function code of WID_11I_PSK for setting. The parameter type is "grp_wld_byte_array". */ 00192 #define GRP_WLD_IOCTL_GET_SCAN_FILTER GRP_WLD_IOCTL_GET_FUNCTION + 0x0006 /*!< The function code of WID_SCAN_FILTER for getting. The parameter type is "grp_u8". */ 00193 #define GRP_WLD_IOCTL_SET_SCAN_FILTER GRP_WLD_IOCTL_SET_FUNCTION + 0x0006 /*!< The function code of WID_SCAN_FILTER for setting. The parameter type is "grp_u8". */ 00194 #define GRP_WLD_IOCTL_GET_RSSI GRP_WLD_IOCTL_GET_FUNCTION + 0x000f /*!< The function code of WID_RSSI for getting. The parameter type is "grp_u8". */ 00195 #define GRP_WLD_IOCTL_GET_POWER_MANAGEMENT GRP_WLD_IOCTL_GET_FUNCTION + 0x0010 00196 #define GRP_WLD_IOCTL_SET_POWER_MANAGEMENT GRP_WLD_IOCTL_SET_FUNCTION + 0x0010 00197 #define GRP_WLD_IOCTL_GET_POWER_SAVE GRP_WLD_IOCTL_GET_FUNCTION + 0x0011 00198 #define GRP_WLD_IOCTL_SET_POWER_SAVE GRP_WLD_IOCTL_SET_FUNCTION + 0x0011 00199 #define GRP_WLD_IOCTL_GET_MAC_STATUS GRP_WLD_IOCTL_GET_FUNCTION + 0x0012 /*!< The function code of WID_CURRENT_MAC_STATUS for getting. The parameter type is "grp_u8". */ 00200 #define GRP_WLD_IOCTL_GET_SSID GRP_WLD_IOCTL_GET_FUNCTION + 0x0013 /*!< The function code of WID_SSID for getting. The parameter type is "grp_wld_byte_array". */ 00201 #define GRP_WLD_IOCTL_SET_SSID GRP_WLD_IOCTL_SET_FUNCTION + 0x0013 /*!< The function code of WID_SSID for setting. The parameter type is "grp_wld_byte_array". */ 00202 #define GRP_WLD_IOCTL_GET_BCAST_SSID GRP_WLD_IOCTL_GET_FUNCTION + 0x0014 /*!< The function code of WID_BCAST_SSID for getting. The parameter type is "grp_u8". */ 00203 #define GRP_WLD_IOCTL_SET_BCAST_SSID GRP_WLD_IOCTL_SET_FUNCTION + 0x0014 /*!< The function code of WID_BCAST_SSID for setting. The parameter type is "grp_u8". */ 00204 #define GRP_WLD_IOCTL_GET_BSSID GRP_WLD_IOCTL_GET_FUNCTION + 0x0015 /*!< The function code of WID_BSSID for getting. The parameter type is "grp_wld_byte_array". */ 00205 #define GRP_WLD_IOCTL_GET_WEP_KEY GRP_WLD_IOCTL_GET_FUNCTION + 0x0016 /*!< The function code of WID_WEP_KEY_VALUE for getting. The parameter type is "grp_wld_byte_array". */ 00206 #define GRP_WLD_IOCTL_SET_WEP_KEY GRP_WLD_IOCTL_SET_FUNCTION + 0x0016 /*!< The function code of WID_WEP_KEY_VALUE for setting. The parameter type is "grp_wld_byte_array". */ 00207 #define GRP_WLD_IOCTL_GET_WEP_KEY_INDEX GRP_WLD_IOCTL_GET_FUNCTION + 0x0017 /*!< The function code of WID_KEY_ID for getting. The parameter type is "grp_u8". */ 00208 #define GRP_WLD_IOCTL_SET_WEP_KEY_INDEX GRP_WLD_IOCTL_SET_FUNCTION + 0x0017 /*!< The function code of WID_KEY_ID for setting. The parameter type is "grp_u8". */ 00209 #define GRP_WLD_IOCTL_GET_LISTEN_INTERVAL GRP_WLD_IOCTL_GET_FUNCTION + 0x0019 /*!< The function code of WID_LISTEN_INTERVAL for getting. The parameter type is "grp_u8". */ 00210 #define GRP_WLD_IOCTL_SET_LISTEN_INTERVAL GRP_WLD_IOCTL_SET_FUNCTION + 0x0019 /*!< The function code of WID_LISTEN_INTERVAL for setting. The parameter type is "grp_u8". */ 00211 #define GRP_WLD_IOCTL_GET_SITE_SURVEY_RESULT GRP_WLD_IOCTL_GET_FUNCTION + 0x001a /*!< The function code of WID_SITE_SURVEY_RESULTS for getting. The parameter type is "grp_wld_site_survey_result_array". */ 00212 #define GRP_WLD_IOCTL_GET_DEVICE_STRINGS GRP_WLD_IOCTL_GET_FUNCTION + 0x001b /*!< The function code of WID_FIRMWARE_VERSION & WID_SERIAL_NUMBER for getting. The parameter type is "grp_wld_dev_strings". */ 00213 #define GRP_WLD_IOCTL_GET_MAC_ADDRESS GRP_WLD_IOCTL_GET_FUNCTION + 0x001c /*!< The function code of WID_MAC_ADDR for getting. The parameter type is "grp_wld_byte_array". */ 00214 #define GRP_WLD_IOCTL_GET_SCAN_TYPE GRP_WLD_IOCTL_GET_FUNCTION + 0x0022 /*!< The function code of WID_SCAN_TYPE for getting. The parameter type is "grp_u8". */ 00215 #define GRP_WLD_IOCTL_SET_SCAN_TYPE GRP_WLD_IOCTL_SET_FUNCTION + 0x0022 /*!< The function code of WID_SCAN_TYPE for setting. The parameter type is "grp_u8". */ 00216 #define GRP_WLD_IOCTL_GET_AUTH_TYPE GRP_WLD_IOCTL_GET_FUNCTION + 0x0026 /*!< The function code of WID_AUTH_TYPE for getting. The parameter type is "grp_u8". */ 00217 #define GRP_WLD_IOCTL_SET_AUTH_TYPE GRP_WLD_IOCTL_SET_FUNCTION + 0x0026 /*!< The function code of WID_AUTH_TYPE for setting. The parameter type is "grp_u8". */ 00218 #define GRP_WLD_IOCTL_GET_SEL_ANTENNA GRP_WLD_IOCTL_GET_FUNCTION + 0x0030 /*!< The function code of WID_ANTENNA_SELECTION for getting. The parameter type is "grp_u8". */ 00219 #define GRP_WLD_IOCTL_SET_SEL_ANTENNA GRP_WLD_IOCTL_SET_FUNCTION + 0x0030 /*!< The function code of WID_ANTENNA_SELECTION for setting. The parameter type is "grp_u8". */ 00220 #define GRP_WLD_IOCTL_GET_WPS_START GRP_WLD_IOCTL_GET_FUNCTION + 0x0035 /*!< The function code of WID_WPS_START for getting. The parameter type is "grp_u8". */ 00221 #define GRP_WLD_IOCTL_SET_WPS_START GRP_WLD_IOCTL_SET_FUNCTION + 0x0035 /*!< The function code of WID_WPS_START for setting. The parameter type is "grp_u8". */ 00222 #define GRP_WLD_IOCTL_GET_WPS_DEV_MODE GRP_WLD_IOCTL_GET_FUNCTION + 0x0036 /*!< The function code of WID_WPS_DEV_MODE for getting. The parameter type is "grp_u8". */ 00223 #define GRP_WLD_IOCTL_SET_WPS_DEV_MODE GRP_WLD_IOCTL_SET_FUNCTION + 0x0036 /*!< The function code of WID_WPS_DEV_MODE for setting. The parameter type is "grp_u8". */ 00224 #define GRP_WLD_IOCTL_GET_BEACON_INTERVAL GRP_WLD_IOCTL_GET_FUNCTION + 0x004a /*!< The function code of WID_BEACON_INTERVAL for getting. The parameter type is "grp_u16". */ 00225 #define GRP_WLD_IOCTL_SET_BEACON_INTERVAL GRP_WLD_IOCTL_SET_FUNCTION + 0x004a /*!< The function code of WID_BEACON_INTERVAL for setting. The parameter type is "grp_u16". */ 00226 #define GRP_WLD_IOCTL_GET_WPS_PIN GRP_WLD_IOCTL_GET_FUNCTION + 0x0064 /*!< The function code of WID_WPS_PIN for getting. The parameter type is "grp_wld_byte_array". */ 00227 #define GRP_WLD_IOCTL_SET_WPS_PIN GRP_WLD_IOCTL_SET_FUNCTION + 0x0064 /*!< The function code of WID_WPS_PIN for setting. The parameter type is "grp_wld_byte_array". */ 00228 #define GRP_WLD_IOCTL_GET_WPS_CRED_LIST GRP_WLD_IOCTL_GET_FUNCTION + 0x006a /*!< The function code of WID_WPS_CRED_LIST for getting. The parameter type is "grp_wld_wps_cred_list". */ 00229 #define GRP_WLD_IOCTL_SET_WPS_CRED_LIST GRP_WLD_IOCTL_SET_FUNCTION + 0x006a /*!< The function code of WID_WPS_CRED_LIST for setting. The parameter type is "grp_wld_wps_cred_list". */ 00230 #define GRP_WLD_IOCTL_GET_USB_IN_XFER_MODE GRP_WLD_IOCTL_GET_FUNCTION + 0x006b /*!< The function code of WID_USB_IN_XFER_MODE for getting. The parameter type is "grp_u8". */ 00231 #define GRP_WLD_IOCTL_SET_USB_IN_XFER_MODE GRP_WLD_IOCTL_SET_FUNCTION + 0x006b /*!< The function code of WID_USB_IN_XFER_MODE for setting. The parameter type is "grp_u8". */ 00232 #define GRP_WLD_IOCTL_GET_TX_POWER_RATE GRP_WLD_IOCTL_GET_FUNCTION + 0x006c /*!< The function code of WID_TX_POWER_RATE for getting. The parameter type is "grp_u8". */ 00233 #define GRP_WLD_IOCTL_SET_TX_POWER_RATE GRP_WLD_IOCTL_SET_FUNCTION + 0x006c /*!< The function code of WID_TX_POWER_RATE for setting. The parameter type is "grp_u8". */ 00234 00235 #define GRP_WLD_IOCTL_GET_VSIE_FRAME GRP_WLD_IOCTL_GET_FUNCTION + 0x006d /*!< The function code of WID_VSIE_FRAME for getting. The parameter type is "grp_u8". */ 00236 #define GRP_WLD_IOCTL_SET_VSIE_FRAME GRP_WLD_IOCTL_SET_FUNCTION + 0x006d /*!< The function code of WID_VSIE_FRAME for setting. The parameter type is "grp_u8". */ 00237 #define GRP_WLD_IOCTL_GET_VSIE_INFO_ENABLE GRP_WLD_IOCTL_GET_FUNCTION + 0x006e /*!< The function code of WID_VSIE_INFO_ENABLE for getting. The parameter type is "grp_u8". */ 00238 #define GRP_WLD_IOCTL_SET_VSIE_INFO_ENABLE GRP_WLD_IOCTL_SET_FUNCTION + 0x006e /*!< The function code of WID_VSIE_INFO_ENABLE for setting. The parameter type is "grp_u8". */ 00239 #define GRP_WLD_IOCTL_GET_VSIE_RX_OUI GRP_WLD_IOCTL_GET_FUNCTION + 0x006f /*!< The function code of WID_VSIE_RX_OUI for getting. The parameter type is "grp_u32". */ 00240 #define GRP_WLD_IOCTL_SET_VSIE_RX_OUI GRP_WLD_IOCTL_SET_FUNCTION + 0x006f /*!< The function code of WID_VSIE_RX_OUI for setting. The parameter type is "grp_u32". */ 00241 #define GRP_WLD_IOCTL_GET_VSIE_TX_DATA GRP_WLD_IOCTL_GET_FUNCTION + 0x0070 /*!< The function code of WID_VSIE_TX_DATA for getting. The parameter type is "grp_wld_byte_array". */ 00242 #define GRP_WLD_IOCTL_SET_VSIE_TX_DATA GRP_WLD_IOCTL_SET_FUNCTION + 0x0070 /*!< The function code of WID_VSIE_TX_DATA for setting. The parameter type is "grp_wld_byte_array". */ 00243 #define GRP_WLD_IOCTL_GET_VSIE_RX_DATA GRP_WLD_IOCTL_GET_FUNCTION + 0x0071 /*!< The function code of WID_VSIE_RX_DATA for getting. The parameter type is "grp_wld_byte_array". */ 00244 #define GRP_WLD_IOCTL_GET_DTIM_PERIOD GRP_WLD_IOCTL_GET_FUNCTION + 0x0072 /*!< The function code of WID_DTIM_PERIOD for getting. The parameter type is "grp_u8". */ 00245 #define GRP_WLD_IOCTL_SET_DTIM_PERIOD GRP_WLD_IOCTL_SET_FUNCTION + 0x0072 /*!< The function code of WID_DTIM_PERIOD for setting. The parameter type is "grp_u8". */ 00246 #define GRP_WLD_IOCTL_SET_DISCONNECT GRP_WLD_IOCTL_SET_FUNCTION + 0x0073 /*!< The function code of WID_DISCONNECT for setting. The parameter type is "grp_u8". */ 00247 #define GRP_WLD_IOCTL_GET_REKEY_PERIOD GRP_WLD_IOCTL_GET_FUNCTION + 0x0074 /*!< The function code of WID_REKEY_PERIOD for getting. The parameter type is "grp_u32". */ 00248 #define GRP_WLD_IOCTL_SET_REKEY_PERIOD GRP_WLD_IOCTL_SET_FUNCTION + 0x0074 /*!< The function code of WID_REKEY_PERIOD for setting. The parameter type is "grp_u32". */ 00249 #define GRP_WLD_IOCTL_GET_WPS_PASS_ID GRP_WLD_IOCTL_GET_FUNCTION + 0x0075 /*!< The function code of WID_WPS_PASS_ID for getting. The parameter type is "grp_u16". */ 00250 #define GRP_WLD_IOCTL_SET_WPS_PASS_ID GRP_WLD_IOCTL_SET_FUNCTION + 0x0075 /*!< The function code of WID_WPS_PASS_ID for setting. The parameter type is "grp_u16". */ 00251 #define GRP_WLD_IOCTL_GET_REKEY_POLICY GRP_WLD_IOCTL_GET_FUNCTION + 0x0076 /*!< The function code of WID_REKEY_POLICY for getting. The parameter type is "grp_u8". */ 00252 #define GRP_WLD_IOCTL_SET_REKEY_POLICY GRP_WLD_IOCTL_SET_FUNCTION + 0x0076 /*!< The function code of WID_REKEY_POLICY for setting. The parameter type is "grp_u8". */ 00253 #define GRP_WLD_IOCTL_GET_CONNECTED_STA_LIST GRP_WLD_IOCTL_GET_FUNCTION + 0x0077 /*!< The function code of WID_CONNECTED_STA_LIST for getting. The parameter type is "grp_wld_connected_sta_list_info". */ 00254 00255 #define GRP_WLD_IOCTL_SET_JOIN_REQUEST GRP_WLD_IOCTL_SET_FUNCTION + 0x0902 /*!< The function code of WID_JOIN_REQ for setting. The parameter type is "grp_u8". */ 00256 #define GRP_WLD_IOCTL_SET_START_SCAN_REQ GRP_WLD_IOCTL_SET_FUNCTION + 0x0905 /*!< The function code of WID_START_SCAN_REQ for setting. The parameter type is "grp_u8". */ 00257 #define GRP_WLD_IOCTL_GET_CHECK_SCAN_END GRP_WLD_IOCTL_GET_FUNCTION + 0x0906 /*!< The function code of WID_START_SCAN_REQ for getting. The parameter type is "grp_u8". */ 00258 #define GRP_WLD_IOCTL_GET_SITE_SURVEY GRP_WLD_IOCTL_GET_FUNCTION + 0x0907 /*!< The function code of WID_SITE_SURVEY for getting. The parameter type is "grp_u8". */ 00259 #define GRP_WLD_IOCTL_SET_SITE_SURVEY GRP_WLD_IOCTL_SET_FUNCTION + 0x0907 /*!< The function code of WID_SITE_SURVEY for setting. The parameter type is "grp_u8". */ 00260 /*@}*/ 00261 00262 /**** STRUCTURE DEFINES *************************************************************************/ 00263 00264 /** Byte array structure 00265 * 00266 */ 00267 typedef struct GRP_WLD_BYTE_ARRAY_T { /* Byte array structure */ 00268 grp_u32 ulSize ; /*!< Array size */ 00269 grp_u8 *pucData ; /*!< Byte array buffer pointer */ 00270 } grp_wld_byte_array; 00271 00272 /** Device strings structure 00273 * 00274 */ 00275 typedef struct GRP_WLD_DEV_STRINGS_T { /* Device strings structure */ 00276 grp_u32 ulFirmwareVersionSize ; /*!< buffer size */ 00277 grp_u8 *pucFirmwareVersionBuf ; /*!< buffer pointer */ 00278 grp_u32 ulSerialNumberSize ; /*!< buffer size */ 00279 grp_u8 *pucSerialNumberBuf ; /*!< buffer pointer */ 00280 } grp_wld_dev_strings; 00281 00282 /** Site survey result structure 00283 * 00284 */ 00285 typedef struct GRP_WLD_SITE_SURVEY_RESULT_T { /* Site survey result structure */ 00286 grp_u8 aucSsid [GRP_WLD_SSID_SIZE + 1]; /*!< SSID */ 00287 grp_u8 ucBssType ; /*!< BSS type */ 00288 grp_u8 ucChannel ; /*!< Channel */ 00289 grp_u8 ucSecurity ; /*!< Security */ 00290 grp_u8 aucBssid [GRP_WLD_BSSID_SIZE]; /*!< BSSID */ 00291 grp_u8 ucRxPower ; /*!< Rx power */ 00292 } grp_wld_site_survey_result; 00293 00294 /** Site survey result array structure 00295 * 00296 */ 00297 typedef struct GRP_WLD_SITE_SURVEY_RESULT_ARRAY_T { /* Site survey result array structure */ 00298 grp_si iCnt ; /*!< Valid data count */ 00299 grp_wld_site_survey_result atResult [GRP_WLD_IOCTL_SITE_SURVEY_RESULT_MAX]; /*!< result */ 00300 } grp_wld_site_survey_result_array; 00301 00302 /** WPS cred list structure 00303 * 00304 */ 00305 typedef struct GRP_WLD_WPS_CRED_T { /* WPS cred list structure */ 00306 grp_u8 aucSSID [GRP_WLD_SSID_SIZE+1]; /*!< SSID */ 00307 grp_u8 ucAuthType ; /*!< auth type */ 00308 grp_u8 uc11imode ; /*!< 11i mode */ 00309 grp_u8 ucWEPKeyId ; /*!< WEP key ID */ 00310 grp_u8 aucWEPKey [GRP_WLD_WEP_KEY_SIZE_128+1]; /*!< WEP key value */ 00311 grp_u8 ucWEPKeyLen ; /*!< WEP key length */ 00312 grp_u8 aucPSK [64+1]; /*!< PSK */ 00313 grp_u8 ucPSKLen ; /*!< PSK Length */ 00314 grp_u8 aucBSSID [GRP_WLD_BSSID_SIZE]; /*!< BSSID */ 00315 } grp_wld_wps_cred; 00316 00317 /** WPS cred list structure 00318 * 00319 */ 00320 typedef struct GRP_WLD_WPS_CRED_LIST_T { /* WPS cred list structure */ 00321 grp_si iNum ; /*!< Cred info number */ 00322 grp_wld_wps_cred *ptCredBuf ; /*!< Cred info buffer */ 00323 } grp_wld_wps_cred_list; 00324 00325 /** STA join information 00326 * 00327 */ 00328 typedef struct GRP_WLD_STA_JOIN_INFO_T { /* STA join information */ 00329 grp_u8 ucAID ; /*!< Association ID lower 8bit */ 00330 grp_u8 ucSTAType ; /*!< STA type */ 00331 grp_u8 uc11gInfo ; /*!< 11g information */ 00332 grp_u8 ucSecInfo ; /*!< Security information */ 00333 grp_u16 usWMMInfo ; /*!< WMM information */ 00334 grp_u16 us11nInfo ; /*!< 11N information */ 00335 grp_u8 aucMacAddress [GRP_WLD_MAC_ADDRESS_SIZE]; 00336 /*!< MAC address */ 00337 } grp_wld_sta_join_info; 00338 00339 /** Connected Sta list information 00340 * 00341 */ 00342 typedef struct GRP_WLD_CONNECTED_STA_LIST_INFO_T { /* Connected Sta list information */ 00343 grp_si iNum ; /*!< Connected sta info number */ 00344 grp_wld_sta_join_info *ptCnctStaBuf ; /*!< Connected sta info buffer */ 00345 } grp_wld_connected_sta_list_info; 00346 00347 #ifdef __cplusplus 00348 } 00349 #endif 00350 00351 #endif /* _WLANBP3595_H_ */
Generated on Wed Jul 13 2022 05:45:33 by
1.7.2
