blob: 3a4ead54f948c5a79e5380469c8a0445e88177d7 [file] [log] [blame]
Larry Finger364e30e2014-03-28 21:37:41 -05001/******************************************************************************
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
Larry Finger364e30e2014-03-28 21:37:41 -050018struct 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
Larry Finger364e30e2014-03-28 21:37:41 -050031 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
44int rtw_wdev_alloc(struct rtw_adapter *padapter, struct device *dev);
45void rtw_wdev_free(struct wireless_dev *wdev);
46void rtw_wdev_unregister(struct wireless_dev *wdev);
47
48void rtw_cfg80211_init_wiphy(struct rtw_adapter *padapter);
49
50void rtw_cfg80211_surveydone_event_callback(struct rtw_adapter *padapter);
51
52void rtw_cfg80211_indicate_connect(struct rtw_adapter *padapter);
53void rtw_cfg80211_indicate_disconnect(struct rtw_adapter *padapter);
54void rtw_cfg80211_indicate_scan_done(struct rtw_wdev_priv *pwdev_priv,
55 bool aborted);
56
57#ifdef CONFIG_8723AU_AP_MODE
58void rtw_cfg80211_indicate_sta_assoc(struct rtw_adapter *padapter,
59 u8 *pmgmt_frame, uint frame_len);
60void rtw_cfg80211_indicate_sta_disassoc(struct rtw_adapter *padapter,
61 unsigned char *da, unsigned short reason);
62#endif /* CONFIG_8723AU_AP_MODE */
63
Larry Finger364e30e2014-03-28 21:37:41 -050064bool rtw_cfg80211_pwr_mgmt(struct rtw_adapter *adapter);
65
Larry Finger364e30e2014-03-28 21:37:41 -050066#endif /* __IOCTL_CFG80211_H__ */