qcacld-3.0: Use API to change the connection state

Use the API hdd_conn_set_connection_state to change the
HDD connection state

Change-Id: I3635cec841a3788c9576e8e49ab859e21d89e32d
CRs-Fixed: 2076017
Tento commit je obsažen v:
Varun Reddy Yeturu
2017-07-12 18:39:59 -07:00
odevzdal snandini
rodič 9c9e34211d
revize 9e0032c720
4 změnil soubory, kde provedl 24 přidání a 26 odebrání

Zobrazit soubor

@@ -165,31 +165,30 @@ hdd_conn_set_authenticated(hdd_adapter_t *pAdapter, uint8_t authState)
/**
* hdd_conn_set_connection_state() - set connection state
* @pAdapter: pointer to the adapter
* @connState: connection state
* @adapter: pointer to the adapter
* @conn_state: connection state
*
* This function updates the global HDD station context connection state.
*
* Return: none
*/
void hdd_conn_set_connection_state(hdd_adapter_t *pAdapter,
eConnectionState connState)
void hdd_conn_set_connection_state(hdd_adapter_t *adapter,
eConnectionState conn_state)
{
hdd_station_ctx_t *pHddStaCtx = WLAN_HDD_GET_STATION_CTX_PTR(pAdapter);
hdd_context_t *pHddCtx = WLAN_HDD_GET_CTX(pAdapter);
hdd_station_ctx_t *hdd_sta_ctx = WLAN_HDD_GET_STATION_CTX_PTR(adapter);
hdd_context_t *hdd_ctx = WLAN_HDD_GET_CTX(adapter);
/* save the new connection state */
hdd_debug("%pS Changed connectionState Changed from oldState:%d to State:%d",
(void *)_RET_IP_, pHddStaCtx->conn_info.connState,
connState);
hdd_debug("%pS Changed conn state from old:%d to new:%d for dev %s",
(void *)_RET_IP_, hdd_sta_ctx->conn_info.connState,
conn_state, adapter->dev->name);
hdd_tsf_notify_wlan_state_change(pAdapter,
pHddStaCtx->conn_info.connState,
connState);
pHddStaCtx->conn_info.connState = connState;
hdd_tsf_notify_wlan_state_change(adapter,
hdd_sta_ctx->conn_info.connState,
conn_state);
hdd_sta_ctx->conn_info.connState = conn_state;
/* Check is pending ROC request or not when connection state changed */
schedule_delayed_work(&pHddCtx->roc_req_work, 0);
schedule_delayed_work(&hdd_ctx->roc_req_work, 0);
}
/**
@@ -2474,7 +2473,9 @@ static QDF_STATUS hdd_association_completion_handler(hdd_adapter_t *pAdapter,
pHddStaCtx->conn_info.connState)) &&
((eCSR_ROAM_RESULT_ASSOCIATED == roamResult) ||
(eCSR_ROAM_ASSOCIATION_FAILURE == roamStatus))) {
hdd_info("Disconnect from HDD in progress");
hdd_info("hddDisconInProgress state=%d, result=%d, status=%d",
pHddStaCtx->conn_info.connState,
roamResult, roamStatus);
hddDisconInProgress = true;
}
@@ -3350,8 +3351,8 @@ static bool roam_remove_ibss_station(hdd_adapter_t *pAdapter, uint8_t staId)
if (MAX_PEERS == empty_slots) {
/* Last peer departed, set the IBSS state appropriately */
pHddStaCtx->conn_info.connState =
eConnectionState_IbssDisconnected;
hdd_conn_set_connection_state(pAdapter,
eConnectionState_IbssDisconnected);
hdd_debug("Last IBSS Peer Departed!!!");
}
/* Find next active staId, to have a valid sta trigger for TL. */

Zobrazit soubor

@@ -15491,7 +15491,8 @@ static int wlan_hdd_disconnect(hdd_adapter_t *pAdapter, u16 reason)
wlan_hdd_netif_queue_control(pAdapter,
WLAN_STOP_ALL_NETIF_QUEUE_N_CARRIER, WLAN_CONTROL_PATH);
hdd_debug("Set HDD connState to eConnectionState_Disconnecting");
pHddStaCtx->conn_info.connState = eConnectionState_Disconnecting;
hdd_conn_set_connection_state(pAdapter, eConnectionState_Disconnecting);
INIT_COMPLETION(pAdapter->disconnect_comp_var);
/* issue disconnect */

Zobrazit soubor

@@ -3196,10 +3196,7 @@ QDF_STATUS hdd_init_station_mode(hdd_adapter_t *adapter)
hdd_err("failed to register wireless extensions: %d", status);
goto error_register_wext;
}
/* Set the Connection State to Not Connected */
hdd_debug("Set HDD connState to eConnectionState_NotConnected");
pHddStaCtx->conn_info.connState = eConnectionState_NotConnected;
hdd_conn_set_connection_state(adapter, eConnectionState_NotConnected);
qdf_mem_set(pHddStaCtx->conn_info.staId,
sizeof(pHddStaCtx->conn_info.staId), HDD_WLAN_INVALID_STA_ID);

Zobrazit soubor

@@ -1251,8 +1251,8 @@ static void hdd_ndp_new_peer_ind_handler(hdd_adapter_t *adapter,
hdd_ctx->sta_to_adapter[new_peer_ind->sta_id] = adapter;
/* perform following steps for first new peer ind */
if (ndp_ctx->active_ndp_peers == 1) {
hdd_info("Set ctx connection state to connected");
sta_ctx->conn_info.connState = eConnectionState_NdiConnected;
hdd_conn_set_connection_state(adapter,
eConnectionState_NdiConnected);
hdd_wmm_connect(adapter, &roam_info, eCSR_BSS_TYPE_NDI);
wlan_hdd_netif_queue_control(adapter,
WLAN_WAKE_ALL_NETIF_QUEUE, WLAN_CONTROL_PATH);
@@ -1281,7 +1281,6 @@ static void hdd_ndp_peer_departed_ind_handler(hdd_adapter_t *adapter,
if (--ndp_ctx->active_ndp_peers == 0) {
hdd_info("No more ndp peers.");
sta_ctx->conn_info.connState = eConnectionState_NdiDisconnected;
hdd_conn_set_connection_state(adapter,
eConnectionState_NdiDisconnected);
hdd_info("Stop netif tx queues.");