1 /* 2 * 3 * Copyright (c) 2022 Shenzhen Kaihong Digital Industry Development Co., Ltd. 4 * 5 * This software is licensed under the terms of the GNU General Public 6 * License version 2, as published by the Free Software Foundation, and 7 * may be copied, distributed, and modified under those terms. 8 * 9 * This program is distributed in the hope that it will be useful, 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of 11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 * GNU General Public License for more details. 13 * 14 */ 15 #ifndef WAL_MAC80211_STA_EVENT_H_ 16 #define WAL_MAC80211_STA_EVENT_H_ 17 18 #define HDF_ETHER_ADDR_LEN (6) 19 #include <net/cfg80211.h> 20 21 typedef struct _HdfConnetResult { 22 uint8_t bssid[HDF_ETHER_ADDR_LEN]; /**< MAC address of the AP associated with the station */ 23 uint16_t statusCode; /**< 16-bit status code defined in the IEEE protocol */ 24 uint8_t *rspIe; /**< Association response IE */ 25 uint8_t *reqIe; /**< Association request IE */ 26 uint32_t reqIeLen; /**< Length of the association request IE */ 27 uint32_t rspIeLen; /**< Length of the association response IE */ 28 uint16_t connectStatus; /**< Connection status */ 29 uint16_t freq; /**< Frequency of the AP */ 30 } HdfConnetResult; 31 32 typedef enum { 33 HDF_WIFI_SCAN_SUCCESS, 34 HDF_WIFI_SCAN_FAILED, 35 HDF_WIFI_SCAN_REFUSED, 36 HDF_WIFI_SCAN_TIMEOUT 37 } HdfWifiScanStatus; 38 extern int32_t HdfScanEventCallback(struct net_device *ndev, HdfWifiScanStatus _status); 39 extern int32_t HdfDisconnectedEventCallback(struct net_device *ndev, uint16_t reason, uint8_t *ie, uint32_t len); 40 void WifiScanFree(struct cfg80211_scan_request **request); 41 #endif 42 43