staging: rtl8723au: Remove unused enum SCAN_RESULT_TYPE
[jlayton/linux.git] / drivers / staging / rtl8723au / include / rtw_mlme.h
index 31f96f39b498dcb6bb9fe9ea142d749e676b6e7b..129c524578ca2098533dd8f33275f6b5c2a0efbd 100644 (file)
@@ -83,13 +83,6 @@ enum {
        GHZ_24,
 };
 
-enum SCAN_RESULT_TYPE {
-       SCAN_RESULT_P2P_ONLY = 0,       /*      Will return all the P2P devices. */
-       SCAN_RESULT_ALL = 1,            /*      Will return all the scanned device, include AP. */
-       SCAN_RESULT_WFD_TYPE = 2        /*      Will just return the correct WFD device. */
-                                       /*      If this device is Miracast sink device, it will just return all the Miracast source devices. */
-};
-
 /*
 
 there are several "locks" in mlme_priv,
@@ -148,30 +141,6 @@ struct tx_invite_resp_info {
        u8      token;  /*      Used to record the dialog token of p2p invitation request frame. */
 };
 
-#ifdef CONFIG_8723AU_P2P
-
-struct wifi_display_info {
-       u16     wfd_enable;             /* Enable/Disable the WFD function. */
-       u16     rtsp_ctrlport;          /* TCP port number at which the this WFD device listens for RTSP messages */
-       u16     peer_rtsp_ctrlport;     /* TCP port number at which the peer WFD device listens for RTSP messages */
-                                       /* This filed should be filled when receiving the gropu negotiation request */
-
-       u8      peer_session_avail;     /* WFD session is available or not for the peer wfd device. */
-                                       /* This variable will be set when sending the provisioning discovery request to peer WFD device. */
-                                       /* And this variable will be reset when it is read by using the iwpriv p2p_get wfd_sa command. */
-       u8      ip_address[4];
-       u8      peer_ip_address[4];
-       u8      wfd_pc;         /* WFD preferred connection */
-                               /* 0 -> Prefer to use the P2P for WFD connection on peer side. */
-                               /* 1 -> Prefer to use the TDLS for WFD connection on peer side. */
-
-       u8      wfd_device_type;/* WFD Device Type */
-                               /* 0 -> WFD Source Device */
-                               /* 1 -> WFD Primary Sink Device */
-       enum    SCAN_RESULT_TYPE scan_result_type;      /* Used when P2P is enable. This parameter will impact the scan result. */
-};
-#endif /* CONFIG_8723AU_P2P */
-
 struct tx_provdisc_req_info {
        u16     wps_config_method_request;      /* Used when sending the provisioning request frame */
        u16     peer_channel_num[2];            /* The channel number which the receiver stands. */
@@ -203,132 +172,6 @@ struct scan_limit_info {
        u8      operation_ch[2];        /* Store the operation channel of invitation request frame */
 };
 
-struct cfg80211_wifidirect_info {
-       struct timer_list               remain_on_ch_timer;
-       u8              restore_channel;
-       struct ieee80211_channel        remain_on_ch_channel;
-       enum nl80211_channel_type       remain_on_ch_type;
-       u64     remain_on_ch_cookie;
-       bool is_ro_ch;
-};
-
-struct wifidirect_info {
-       struct rtw_adapter      *padapter;
-       struct timer_list       find_phase_timer;
-       struct timer_list       restore_p2p_state_timer;
-
-       /*      Used to do the scanning. After confirming the peer is availalble, the driver transmits the P2P frame to peer. */
-       struct timer_list       pre_tx_scan_timer;
-       struct timer_list       reset_ch_sitesurvey;
-       struct timer_list       reset_ch_sitesurvey2;   /*      Just for resetting the scan limit function by using p2p nego */
-       struct tx_provdisc_req_info     tx_prov_disc_info;
-       struct rx_provdisc_req_info rx_prov_disc_info;
-       struct tx_invite_req_info       invitereq_info;
-       struct profile_info     profileinfo[P2P_MAX_PERSISTENT_GROUP_NUM];      /*      Store the profile information of persistent group */
-       struct tx_invite_resp_info      inviteresp_info;
-       struct tx_nego_req_info nego_req_info;
-       struct group_id_info    groupid_info;   /*      Store the group id information when doing the group negotiation handshake. */
-       struct scan_limit_info  rx_invitereq_info;      /*      Used for get the limit scan channel from the Invitation procedure */
-       struct scan_limit_info  p2p_info;               /*      Used for get the limit scan channel from the P2P negotiation handshake */
-#ifdef CONFIG_8723AU_P2P
-       struct wifi_display_info        *wfd_info;
-#endif
-       enum P2P_ROLE   role;
-       enum P2P_STATE  pre_p2p_state;
-       enum P2P_STATE  p2p_state;
-       u8      device_addr[ETH_ALEN];  /*      The device address should be the mac address of this device. */
-       u8      interface_addr[ETH_ALEN];
-       u8      social_chan[4];
-       u8      listen_channel;
-       u8      operating_channel;
-       u8      listen_dwell;           /*      This value should be between 1 and 3 */
-       u8      support_rate[8];
-       u8      p2p_wildcard_ssid[P2P_WILDCARD_SSID_LEN];
-       u8      intent;         /*      should only include the intent value. */
-       u8      p2p_peer_interface_addr[ETH_ALEN];
-       u8      p2p_peer_device_addr[ETH_ALEN];
-       u8      peer_intent;    /*      Included the intent value and tie breaker value. */
-       u8      device_name[WPS_MAX_DEVICE_NAME_LEN];   /*      Device name for displaying on searching device screen */
-       u8      device_name_len;
-       u8      profileindex;   /*      Used to point to the index of profileinfo array */
-       u8      peer_operating_ch;
-       u8      find_phase_state_exchange_cnt;
-       u16     device_password_id_for_nego;    /*      The device password ID for group negotation */
-       u8      negotiation_dialog_token;
-       /*      SSID information for group negotitation */
-       u8 nego_ssid[IEEE80211_MAX_SSID_LEN];
-       u8 nego_ssidlen;
-       u8 p2p_group_ssid[IEEE80211_MAX_SSID_LEN];
-       u8 p2p_group_ssid_len;
-       u8      persistent_supported;   /*      Flag to know the persistent function should be supported or not. */
-                                       /*      In the Sigma test, the Sigma will provide this enable from the sta_set_p2p CAPI. */
-                                       /*      0: disable */
-                                       /*      1: enable */
-       u8      session_available;      /*      Flag to set the WFD session available to enable or disable "by Sigma" */
-                                       /*      In the Sigma test, the Sigma will disable the session available by using the sta_preset CAPI. */
-                                       /*      0: disable */
-                                       /*      1: enable */
-
-       u8      wfd_tdls_enable;        /*      Flag to enable or disable the TDLS by WFD Sigma */
-                                       /*      0: disable */
-                                       /*      1: enable */
-       u8      wfd_tdls_weaksec;       /*      Flag to enable or disable the weak security function for TDLS by WFD Sigma */
-                               /*      0: disable */
-                               /*      In this case, the driver can't issue the tdsl setup request frame. */
-                               /*      1: enable */
-                               /*      In this case, the driver can issue the tdls setup request frame */
-                               /*      even the current security is weak security. */
-
-       enum    P2P_WPSINFO             ui_got_wps_info;                        /*      This field will store the WPS value (PIN value or PBC) that UI had got from the user. */
-       u16     supported_wps_cm;                       /*      This field describes the WPS config method which this driver supported. */
-                                                                                                               /*      The value should be the combination of config method defined in page104 of WPS v2.0 spec. */
-       uint    channel_list_attr_len;          /*      This field will contain the length of body of P2P Channel List attribute of group negotitation response frame. */
-       u8      channel_list_attr[100];         /*      This field will contain the body of P2P Channel List attribute of group negotitation response frame. */
-                                                                                                               /*      We will use the channel_cnt and channel_list fields when constructing the group negotitation confirm frame. */
-#ifdef CONFIG_8723AU_P2P
-       enum P2P_PS_MODE        p2p_ps_mode; /*  indicate p2p ps mode */
-       enum P2P_PS_STATE       p2p_ps_state; /*  indicate p2p ps state */
-       u8      noa_index; /*  Identifies and instance of Notice of Absence timing. */
-       u8      ctwindow; /*  Client traffic window. A period of time in TU after TBTT. */
-       u8      opp_ps; /*  opportunistic power save. */
-       u8      noa_num; /*  number of NoA descriptor in P2P IE. */
-       u8      noa_count[P2P_MAX_NOA_NUM]; /*  Count for owner, Type of client. */
-       u32     noa_duration[P2P_MAX_NOA_NUM]; /*  Max duration for owner, preferred or min acceptable duration for client. */
-       u32     noa_interval[P2P_MAX_NOA_NUM]; /*  Length of interval for owner, preferred or max acceptable interval of client. */
-       u32     noa_start_time[P2P_MAX_NOA_NUM]; /*  schedule expressed in terms of the lower 4 bytes of the TSF timer. */
-#endif /*  CONFIG_8723AU_P2P */
-};
-
-struct tdls_ss_record {        /* signal strength record */
-       u8      macaddr[ETH_ALEN];
-       u8      RxPWDBAll;
-       u8      is_tdls_sta;    /*  true: direct link sta, false: else */
-};
-
-struct tdls_info {
-       u8      ap_prohibited;
-       uint    setup_state;
-       u8      sta_cnt;
-       /* 1:tdls sta == (NUM_STA-1), reach max direct link no; 0: else; */
-       u8      sta_maximum;
-       struct tdls_ss_record   ss_record;
-       u8      macid_index;    /* macid entry that is ready to write */
-       /* cam entry that is trying to clear, using it in direct link teardown*/
-       u8      clear_cam;
-       u8      ch_sensing;
-       u8      cur_channel;
-       u8      candidate_ch;
-       u8      collect_pkt_num[MAX_CHANNEL_NUM];
-       spinlock_t      cmd_lock;
-       spinlock_t      hdl_lock;
-       u8      watchdog_count;
-       u8      dev_discovered;         /* WFD_TDLS: for sigma test */
-       u8      enable;
-#ifdef CONFIG_8723AU_P2P
-       struct wifi_display_info                *wfd_info;
-#endif
-};
-
 struct mlme_priv {
        spinlock_t      lock;
        int     fw_state;
@@ -360,7 +203,7 @@ struct mlme_priv {
        struct timer_list set_scan_deny_timer;
        atomic_t set_scan_deny; /* 0: allowed, 1: deny */
 
-       struct qos_priv qospriv;
+       unsigned int qos_option;
 
        /* Number of non-HT AP/stations */
        int num_sta_no_ht;
@@ -456,19 +299,16 @@ void hostapd_mode_unload(struct rtw_adapter *padapter);
 #endif
 
 void rtw_joinbss_event_prehandle23a(struct rtw_adapter *adapter, u8 *pbuf);
-void rtw_survey_event_cb23a(struct rtw_adapter *adapter, u8 *pbuf);
-void rtw_surveydone_event_callback23a(struct rtw_adapter *adapter, u8 *pbuf);
-void rtw23a_joinbss_event_cb(struct rtw_adapter *adapter, u8 *pbuf);
-void rtw_stassoc_event_callback23a(struct rtw_adapter *adapter, u8 *pbuf);
-void rtw_stadel_event_callback23a(struct rtw_adapter *adapter, u8 *pbuf);
-void rtw_atimdone_event_callback23a(struct rtw_adapter *adapter, u8 *pbuf);
-void rtw_cpwm_event_callback23a(struct rtw_adapter *adapter, u8 *pbuf);
-
+void rtw_survey_event_cb23a(struct rtw_adapter *adapter, const u8 *pbuf);
+void rtw_surveydone_event_callback23a(struct rtw_adapter *adapter, const u8 *pbuf);
+void rtw23a_joinbss_event_cb(struct rtw_adapter *adapter, const u8 *pbuf);
+void rtw_stassoc_event_callback23a(struct rtw_adapter *adapter, const u8 *pbuf);
+void rtw_stadel_event_callback23a(struct rtw_adapter *adapter, const u8 *pbuf);
 
 int event_thread(void *context);
 void rtw23a_join_to_handler(unsigned long);
 
-void rtw_free_network_queue23a(struct rtw_adapter *adapter, u8 isfreeall);
+void rtw_free_network_queue23a(struct rtw_adapter *adapter);
 int rtw_init_mlme_priv23a(struct rtw_adapter *adapter);
 
 void rtw_free_mlme_priv23a(struct mlme_priv *pmlmepriv);
@@ -485,7 +325,7 @@ static inline u8 *get_bssid(struct mlme_priv *pmlmepriv)
        return pmlmepriv->cur_network.network.MacAddress;
 }
 
-static inline int check_fwstate(struct mlme_priv *pmlmepriv, int state)
+static inline bool check_fwstate(struct mlme_priv *pmlmepriv, int state)
 {
        if (pmlmepriv->fw_state & state)
                return true;
@@ -553,7 +393,6 @@ void rtw_free_assoc_resources23a(struct rtw_adapter *adapter,
                              int lock_scanned_queue);
 void rtw_indicate_disconnect23a(struct rtw_adapter *adapter);
 void rtw_indicate_connect23a(struct rtw_adapter *adapter);
-void rtw_indicate_scan_done23a(struct rtw_adapter *padapter, bool aborted);
 void rtw_scan_abort23a(struct rtw_adapter *adapter);
 
 int rtw_restruct_sec_ie23a(struct rtw_adapter *adapter, u8 *in_ie, u8 *out_ie,
@@ -574,30 +413,18 @@ void rtw_clear_scan_deny(struct rtw_adapter *adapter);
 void rtw_set_scan_deny_timer_hdl(unsigned long data);
 void rtw_set_scan_deny(struct rtw_adapter *adapter, u32 ms);
 
-int _rtw_init_mlme_priv23a(struct rtw_adapter *padapter);
-
 void rtw23a_free_mlme_priv_ie_data(struct mlme_priv *pmlmepriv);
 
 void _rtw_free_mlme_priv23a(struct mlme_priv *pmlmepriv);
 
-struct wlan_network *rtw_alloc_network(struct mlme_priv *pmlmepriv);
-
-void _rtw_free_network23a(struct mlme_priv *pmlmepriv,
-                      struct wlan_network *pnetwork, u8 isfreeall);
-void _rtw_free_network23a_nolock23a(struct mlme_priv *pmlmepriv,
-                             struct wlan_network *pnetwork);
-
-struct wlan_network *_rtw_find_network23a(struct rtw_queue *scanned_queue, u8 *addr);
-
-void _rtw_free_network23a_queue23a(struct rtw_adapter *padapter, u8 isfreeall);
+struct wlan_network *rtw_alloc_network(struct mlme_priv *pmlmepriv, int gfp);
 
 int rtw_if_up23a(struct rtw_adapter *padapter);
 
 int rtw_linked_check(struct rtw_adapter *padapter);
 
-u8 *rtw_get_capability23a_from_ie(u8 *ie);
-u8 *rtw_get_timestampe_from_ie23a(u8 *ie);
-u8 *rtw_get_beacon_interval23a_from_ie(u8 *ie);
+__le16 *rtw_get_capability23a_from_ie(u8 *ie);
+__le16 *rtw_get_beacon_interval23a_from_ie(u8 *ie);
 
 
 void rtw_joinbss_reset23a(struct rtw_adapter *padapter);
@@ -613,12 +440,8 @@ int rtw_is_same_ibss23a(struct rtw_adapter *adapter,
                     struct wlan_network *pnetwork);
 int is_same_network23a(struct wlan_bssid_ex *src, struct wlan_bssid_ex *dst);
 
-void _rtw23a_roaming(struct rtw_adapter *adapter,
-                 struct wlan_network *tgt_network);
 void rtw23a_roaming(struct rtw_adapter *adapter,
                 struct wlan_network *tgt_network);
 void rtw_set_roaming(struct rtw_adapter *adapter, u8 to_roaming);
-u8 rtw_to_roaming(struct rtw_adapter *adapter);
-void rtw_stassoc_hw_rpt23a(struct rtw_adapter *adapter, struct sta_info *psta);
 
 #endif /* __RTL871X_MLME_H_ */