1 /****************************************************************************** 2 * 3 * Copyright(c) 2007 - 2011 Realtek Corporation. All rights reserved. 4 * 5 * This program is free software; you can redistribute it and/or modify it 6 * under the terms of version 2 of the GNU General Public License as 7 * published by the Free Software Foundation. 8 * 9 * This program is distributed in the hope that it will be useful, but WITHOUT 10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 * more details. 13 * 14 ******************************************************************************/ 15 #ifndef __IOCTL_CFG80211_H__ 16 #define __IOCTL_CFG80211_H__ 17 18 struct rtw_wdev_priv { 19 struct wireless_dev *rtw_wdev; 20 21 struct rtw_adapter *padapter; 22 23 struct cfg80211_scan_request *scan_request; 24 spinlock_t scan_req_lock; 25 26 struct net_device *pmon_ndev;/* for monitor interface */ 27 char ifname_mon[IFNAMSIZ + 1]; /* name for monitor interface */ 28 29 u8 p2p_enabled; 30 31 bool power_mgmt; 32 }; 33 34 #define wdev_to_priv(w) ((struct rtw_wdev_priv *)(wdev_priv(w))) 35 36 #define wiphy_to_adapter(x) \ 37 (struct rtw_adapter *)(((struct rtw_wdev_priv *) \ 38 wiphy_priv(x))->padapter) 39 40 #define wiphy_to_wdev(x) \ 41 (struct wireless_dev *)(((struct rtw_wdev_priv *) \ 42 wiphy_priv(x))->rtw_wdev) 43 44 int rtw_wdev_alloc(struct rtw_adapter *padapter, struct device *dev); 45 void rtw_wdev_free(struct wireless_dev *wdev); 46 void rtw_wdev_unregister(struct wireless_dev *wdev); 47 48 void rtw_cfg80211_init_wiphy(struct rtw_adapter *padapter); 49 50 void rtw_cfg80211_surveydone_event_callback(struct rtw_adapter *padapter); 51 52 void rtw_cfg80211_indicate_connect(struct rtw_adapter *padapter); 53 void rtw_cfg80211_indicate_disconnect(struct rtw_adapter *padapter); 54 void rtw_cfg80211_indicate_scan_done(struct rtw_wdev_priv *pwdev_priv, 55 bool aborted); 56 57 #ifdef CONFIG_8723AU_AP_MODE 58 void rtw_cfg80211_indicate_sta_assoc(struct rtw_adapter *padapter, 59 u8 *pmgmt_frame, uint frame_len); 60 void rtw_cfg80211_indicate_sta_disassoc(struct rtw_adapter *padapter, 61 unsigned char *da, unsigned short reason); 62 #endif /* CONFIG_8723AU_AP_MODE */ 63 64 bool rtw_cfg80211_pwr_mgmt(struct rtw_adapter *adapter); 65 66 #endif /* __IOCTL_CFG80211_H__ */ 67