summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYun Park <yunp@codeaurora.org>2017-09-06 10:40:07 -0700
committersnandini <snandini@codeaurora.org>2017-09-22 00:58:50 -0700
commitbf3c8ea38482cb964ea8095baaae79c29534f838 (patch)
tree1524b01d3abbe1ed216e8f358c3181fe51ac7a83
parent782e50842143f1fb59e6b9e220f23c22644266bd (diff)
qcacld-3.0: Add default log message to IPA init/deinit code
Add default log message to IPA interface init/deinit code while WLAN driver load/unload process. Change-Id: Ibfb1f9444c73e0dbbb1899f02aee0727c44765bf CRs-Fixed: 2108804
-rw-r--r--core/hdd/src/wlan_hdd_ipa.c83
-rw-r--r--core/hdd/src/wlan_hdd_main.c4
2 files changed, 75 insertions, 12 deletions
diff --git a/core/hdd/src/wlan_hdd_ipa.c b/core/hdd/src/wlan_hdd_ipa.c
index 5dda5b2cf1bc..d165f2c3b6f2 100644
--- a/core/hdd/src/wlan_hdd_ipa.c
+++ b/core/hdd/src/wlan_hdd_ipa.c
@@ -1691,6 +1691,8 @@ static int hdd_ipa_uc_enable_pipes(struct hdd_ipa_priv *hdd_ipa)
int result;
p_cds_contextType cds_ctx = hdd_ipa->hdd_ctx->pcds_context;
+ HDD_IPA_LOG(QDF_TRACE_LEVEL_FATAL, "enter");
+
/* ACTIVATE TX PIPE */
HDD_IPA_LOG(QDF_TRACE_LEVEL_DEBUG,
"%s: Enable TX PIPE(tx_pipe_handle=%d)",
@@ -1732,6 +1734,9 @@ static int hdd_ipa_uc_enable_pipes(struct hdd_ipa_priv *hdd_ipa)
INIT_COMPLETION(hdd_ipa->ipa_resource_comp);
ol_txrx_ipa_uc_set_active(cds_ctx->pdev_txrx_ctx, true, false);
hdd_ipa->ipa_pipes_down = false;
+
+ HDD_IPA_LOG(QDF_TRACE_LEVEL_FATAL, "exit: ipa_pipes_down=%d",
+ hdd_ipa->ipa_pipes_down);
return 0;
}
@@ -1745,6 +1750,8 @@ static int hdd_ipa_uc_disable_pipes(struct hdd_ipa_priv *hdd_ipa)
{
int result;
+ HDD_IPA_LOG(QDF_TRACE_LEVEL_FATAL, "enter");
+
HDD_IPA_LOG(QDF_TRACE_LEVEL_DEBUG, "%s: Disable RX PIPE", __func__);
result = ipa_suspend_wdi_pipe(hdd_ipa->rx_pipe_handle);
if (result) {
@@ -1778,6 +1785,9 @@ static int hdd_ipa_uc_disable_pipes(struct hdd_ipa_priv *hdd_ipa)
}
hdd_ipa->ipa_pipes_down = true;
+
+ HDD_IPA_LOG(QDF_TRACE_LEVEL_FATAL, "exit: ipa_pipes_down=%d",
+ hdd_ipa->ipa_pipes_down);
return 0;
}
@@ -1789,6 +1799,8 @@ static int hdd_ipa_uc_disable_pipes(struct hdd_ipa_priv *hdd_ipa)
*/
static int hdd_ipa_uc_handle_first_con(struct hdd_ipa_priv *hdd_ipa)
{
+ HDD_IPA_LOG(QDF_TRACE_LEVEL_FATAL, "enter");
+
hdd_ipa->activated_fw_pipe = 0;
hdd_ipa->resource_loading = true;
@@ -1834,8 +1846,7 @@ static int hdd_ipa_uc_handle_first_con(struct hdd_ipa_priv *hdd_ipa)
hdd_ipa->resource_loading = false;
}
- HDD_IPA_LOG(QDF_TRACE_LEVEL_DEBUG,
- "%s: IPA WDI Pipes activated successfully", __func__);
+ HDD_IPA_LOG(QDF_TRACE_LEVEL_FATAL, "exit: IPA WDI Pipes activated!");
return 0;
}
@@ -1849,6 +1860,8 @@ static void hdd_ipa_uc_handle_last_discon(struct hdd_ipa_priv *hdd_ipa)
{
p_cds_contextType cds_ctx = hdd_ipa->hdd_ctx->pcds_context;
+ HDD_IPA_LOG(QDF_TRACE_LEVEL_FATAL, "enter");
+
if (!cds_ctx || !cds_ctx->pdev_txrx_ctx) {
HDD_IPA_LOG(QDF_TRACE_LEVEL_ERROR, "txrx context is NULL");
QDF_ASSERT(0);
@@ -1861,6 +1874,8 @@ static void hdd_ipa_uc_handle_last_discon(struct hdd_ipa_priv *hdd_ipa)
ol_txrx_ipa_uc_set_active(cds_ctx->pdev_txrx_ctx, false, false);
HDD_IPA_LOG(QDF_TRACE_LEVEL_DEBUG, "%s: Disable FW TX PIPE", __func__);
ol_txrx_ipa_uc_set_active(cds_ctx->pdev_txrx_ctx, false, true);
+
+ HDD_IPA_LOG(QDF_TRACE_LEVEL_FATAL, "exit: IPA WDI Pipes deactivated");
}
/**
@@ -2730,11 +2745,11 @@ QDF_STATUS hdd_ipa_uc_ol_init(hdd_context_t *hdd_ctx)
qdf_device_t osdev = cds_get_context(QDF_MODULE_ID_QDF_DEVICE);
uint32_t tx_comp_db_dmaaddr = 0, rx_rdy_db_dmaaddr = 0;
+ HDD_IPA_LOG(QDF_TRACE_LEVEL_FATAL, "enter");
+
if (!hdd_ipa_uc_is_enabled(hdd_ctx))
return stat;
- ENTER();
-
if (!osdev) {
HDD_IPA_LOG(QDF_TRACE_LEVEL_FATAL,
"%s: qdf dev context is NULL", __func__);
@@ -3183,8 +3198,9 @@ QDF_STATUS hdd_ipa_uc_ol_init(hdd_context_t *hdd_ctx)
(unsigned int)pdev->htt_pdev->ipa_uc_tx_rsc.tx_comp_idx_paddr,
(unsigned int)pdev->htt_pdev->ipa_uc_rx_rsc.rx_rdy_idx_paddr);
+
fail_return:
- EXIT();
+ HDD_IPA_LOG(QDF_TRACE_LEVEL_FATAL, "exit: stat=%d", stat);
return stat;
}
#endif
@@ -3200,6 +3216,8 @@ int hdd_ipa_uc_ol_deinit(hdd_context_t *hdd_ctx)
struct hdd_ipa_priv *hdd_ipa = hdd_ctx->hdd_ipa;
int ret = 0;
+ HDD_IPA_LOG(QDF_TRACE_LEVEL_FATAL, "enter");
+
if (!hdd_ipa_uc_is_enabled(hdd_ctx))
return ret;
@@ -3217,6 +3235,7 @@ int hdd_ipa_uc_ol_deinit(hdd_context_t *hdd_ctx)
ret = ipa_disconnect_wdi_pipe(hdd_ipa->rx_pipe_handle);
}
+ HDD_IPA_LOG(QDF_TRACE_LEVEL_FATAL, "exit: ret=%d", ret);
return ret;
}
@@ -3235,6 +3254,8 @@ static void __hdd_ipa_uc_force_pipe_shutdown(hdd_context_t *hdd_ctx)
{
struct hdd_ipa_priv *hdd_ipa;
+ HDD_IPA_LOG(QDF_TRACE_LEVEL_FATAL, "enter");
+
if (!hdd_ipa_is_enabled(hdd_ctx) || !hdd_ctx->hdd_ipa)
return;
@@ -3247,6 +3268,8 @@ static void __hdd_ipa_uc_force_pipe_shutdown(hdd_context_t *hdd_ctx)
HDD_IPA_LOG(QDF_TRACE_LEVEL_DEBUG,
"IPA pipes are down, do nothing");
}
+
+ HDD_IPA_LOG(QDF_TRACE_LEVEL_FATAL, "exit");
}
/**
@@ -3313,7 +3336,7 @@ static int hdd_ipa_uc_send_evt(hdd_adapter_t *adapter,
strlcpy(msg->name, adapter->dev->name,
IPA_RESOURCE_NAME_MAX);
memcpy(msg->mac_addr, mac_addr, ETH_ALEN);
- HDD_IPA_LOG(QDF_TRACE_LEVEL_DEBUG, "%s: Evt: %d",
+ HDD_IPA_LOG(QDF_TRACE_LEVEL_FATAL, "%s: Evt: %d",
msg->name, meta.msg_type);
ret = ipa_send_msg(&meta, msg, hdd_ipa_msg_free_fn);
if (ret) {
@@ -3343,6 +3366,7 @@ static int hdd_ipa_uc_disconnect_client(hdd_adapter_t *adapter)
int ret = 0;
int i;
+ HDD_IPA_LOG(QDF_TRACE_LEVEL_FATAL, "enter");
for (i = 0; i < WLAN_MAX_STA_COUNT; i++) {
if (qdf_is_macaddr_broadcast(&adapter->aStaInfo[i].macAddrSTA))
continue;
@@ -3354,6 +3378,8 @@ static int hdd_ipa_uc_disconnect_client(hdd_adapter_t *adapter)
hdd_ipa->sap_num_connected_sta--;
}
}
+ HDD_IPA_LOG(QDF_TRACE_LEVEL_FATAL, "exit: sap_num_connected_sta=%d",
+ hdd_ipa->sap_num_connected_sta);
return ret;
}
@@ -3371,9 +3397,12 @@ static int hdd_ipa_uc_disconnect_ap(hdd_adapter_t *adapter)
{
int ret = 0;
- if (adapter->ipa_context)
+ HDD_IPA_LOG(QDF_TRACE_LEVEL_FATAL, "enter");
+ if (adapter->ipa_context) {
hdd_ipa_uc_send_evt(adapter, WLAN_AP_DISCONNECT,
adapter->dev->dev_addr);
+ }
+ HDD_IPA_LOG(QDF_TRACE_LEVEL_FATAL, "exit");
return ret;
}
@@ -3392,12 +3421,14 @@ static int hdd_ipa_uc_disconnect_sta(hdd_adapter_t *adapter)
struct hdd_ipa_priv *hdd_ipa = ghdd_ipa;
int ret = 0;
+ HDD_IPA_LOG(QDF_TRACE_LEVEL_FATAL, "enter");
if (hdd_ipa_uc_sta_is_enabled(hdd_ipa->hdd_ctx) &&
hdd_ipa->sta_connected) {
pHddStaCtx = WLAN_HDD_GET_STATION_CTX_PTR(adapter);
hdd_ipa_uc_send_evt(adapter, WLAN_STA_DISCONNECT,
pHddStaCtx->conn_info.bssId.bytes);
}
+ HDD_IPA_LOG(QDF_TRACE_LEVEL_FATAL, "exit");
return ret;
}
@@ -3450,6 +3481,8 @@ static int __hdd_ipa_uc_ssr_deinit(void)
struct hdd_ipa_iface_context *iface_context;
hdd_context_t *hdd_ctx;
+ HDD_IPA_LOG(QDF_TRACE_LEVEL_FATAL, "enter");
+
if (!hdd_ipa)
return 0;
@@ -3489,6 +3522,8 @@ static int __hdd_ipa_uc_ssr_deinit(void)
qdf_mem_free(hdd_ipa->uc_op_work[idx].msg);
hdd_ipa->uc_op_work[idx].msg = NULL;
}
+
+ HDD_IPA_LOG(QDF_TRACE_LEVEL_FATAL, "exit");
return 0;
}
@@ -3526,6 +3561,8 @@ static int __hdd_ipa_uc_ssr_reinit(hdd_context_t *hdd_ctx)
int i;
struct hdd_ipa_iface_context *iface_context = NULL;
+ HDD_IPA_LOG(QDF_TRACE_LEVEL_FATAL, "enter");
+
if (!hdd_ipa || !hdd_ipa_uc_is_enabled(hdd_ctx))
return 0;
@@ -3553,6 +3590,7 @@ static int __hdd_ipa_uc_ssr_reinit(hdd_context_t *hdd_ctx)
hdd_ipa->uc_loaded = true;
}
+ HDD_IPA_LOG(QDF_TRACE_LEVEL_FATAL, "exit");
return 0;
}
@@ -5432,6 +5470,8 @@ static void hdd_ipa_clean_hdr(hdd_adapter_t *adapter)
*/
static void hdd_ipa_cleanup_iface(struct hdd_ipa_iface_context *iface_context)
{
+ HDD_IPA_LOG(QDF_TRACE_LEVEL_FATAL, "enter");
+
if (iface_context == NULL)
return;
if (iface_context->adapter->magic != WLAN_HDD_ADAPTER_MAGIC) {
@@ -5456,6 +5496,8 @@ static void hdd_ipa_cleanup_iface(struct hdd_ipa_iface_context *iface_context)
QDF_ASSERT(0);
}
iface_context->hdd_ipa->num_iface--;
+ HDD_IPA_LOG(QDF_TRACE_LEVEL_FATAL, "exit: num_iface=%d",
+ iface_context->hdd_ipa->num_iface);
}
/**
@@ -5473,6 +5515,8 @@ static int hdd_ipa_setup_iface(struct hdd_ipa_priv *hdd_ipa,
void *tl_context = NULL;
int i, ret = 0;
+ HDD_IPA_LOG(QDF_TRACE_LEVEL_FATAL, "enter");
+
/* Lower layer may send multiple START_BSS_EVENT in DFS mode or during
* channel change indication. Since these indications are sent by lower
* layer as SAP updates and IPA doesn't have to do anything for these
@@ -5521,6 +5565,9 @@ static int hdd_ipa_setup_iface(struct hdd_ipa_priv *hdd_ipa,
goto cleanup_header;
hdd_ipa->num_iface++;
+
+ HDD_IPA_LOG(QDF_TRACE_LEVEL_FATAL, "exit: num_iface=%d",
+ hdd_ipa->num_iface);
return ret;
cleanup_header:
@@ -5756,7 +5803,7 @@ static int __hdd_ipa_wlan_evt(hdd_adapter_t *adapter, uint8_t sta_id,
struct ipa_wlan_msg_ex *msg_ex = NULL;
int ret;
- HDD_IPA_LOG(QDF_TRACE_LEVEL_DEBUG, "%s: %s evt, MAC: %pM sta_id: %d",
+ HDD_IPA_LOG(QDF_TRACE_LEVEL_FATAL, "%s: %s evt, MAC: %pM sta_id: %d",
adapter->dev->name, hdd_ipa_wlan_event_to_str(type),
mac_addr, sta_id);
@@ -5882,6 +5929,9 @@ static int __hdd_ipa_wlan_evt(hdd_adapter_t *adapter, uint8_t sta_id,
hdd_ipa->sta_connected = 1;
qdf_mutex_release(&hdd_ipa->event_lock);
+
+ HDD_IPA_LOG(QDF_TRACE_LEVEL_FATAL, "sta_connected=%d",
+ hdd_ipa->sta_connected);
break;
case WLAN_AP_CONNECT:
@@ -5957,6 +6007,9 @@ static int __hdd_ipa_wlan_evt(hdd_adapter_t *adapter, uint8_t sta_id,
hdd_ipa_cleanup_iface(adapter->ipa_context);
qdf_mutex_release(&hdd_ipa->event_lock);
+
+ HDD_IPA_LOG(QDF_TRACE_LEVEL_FATAL, "sta_connected=%d",
+ hdd_ipa->sta_connected);
break;
case WLAN_AP_DISCONNECT:
@@ -6092,6 +6145,9 @@ static int __hdd_ipa_wlan_evt(hdd_adapter_t *adapter, uint8_t sta_id,
return ret;
}
hdd_ipa->stats.num_send_msg++;
+
+ HDD_IPA_LOG(QDF_TRACE_LEVEL_FATAL, "sap_num_connected_sta=%d",
+ hdd_ipa->sap_num_connected_sta);
return ret;
case WLAN_CLIENT_DISCONNECT:
@@ -6140,6 +6196,9 @@ static int __hdd_ipa_wlan_evt(hdd_adapter_t *adapter, uint8_t sta_id,
} else {
qdf_mutex_release(&hdd_ipa->event_lock);
}
+
+ HDD_IPA_LOG(QDF_TRACE_LEVEL_FATAL, "sap_num_connected_sta=%d",
+ hdd_ipa->sap_num_connected_sta);
break;
default:
@@ -6276,11 +6335,11 @@ static QDF_STATUS __hdd_ipa_init(hdd_context_t *hdd_ctx)
struct ol_txrx_pdev_t *pdev = NULL;
struct ipa_rm_perf_profile profile;
+ HDD_IPA_LOG(QDF_TRACE_LEVEL_FATAL, "enter");
+
if (!hdd_ipa_is_enabled(hdd_ctx))
return QDF_STATUS_SUCCESS;
- ENTER();
-
pdev = cds_get_context(QDF_MODULE_ID_TXRX);
if (!pdev) {
HDD_IPA_LOG(QDF_TRACE_LEVEL_FATAL, "pdev is NULL");
@@ -6385,7 +6444,7 @@ static QDF_STATUS __hdd_ipa_init(hdd_context_t *hdd_ctx)
init_completion(&hdd_ipa->ipa_resource_comp);
- EXIT();
+ HDD_IPA_LOG(QDF_TRACE_LEVEL_FATAL, "exit: success");
return QDF_STATUS_SUCCESS;
fail_create_sys_pipe:
@@ -6396,7 +6455,7 @@ fail_setup_rm:
hdd_ctx->hdd_ipa = NULL;
ghdd_ipa = NULL;
fail_return:
- EXIT();
+ HDD_IPA_LOG(QDF_TRACE_LEVEL_FATAL, "exit: fail");
return QDF_STATUS_E_FAILURE;
}
diff --git a/core/hdd/src/wlan_hdd_main.c b/core/hdd/src/wlan_hdd_main.c
index 066e67dc611f..39f5944a25d2 100644
--- a/core/hdd/src/wlan_hdd_main.c
+++ b/core/hdd/src/wlan_hdd_main.c
@@ -9516,6 +9516,8 @@ int hdd_wlan_stop_modules(hdd_context_t *hdd_ctx, bool ftm_mode)
int active_threads;
ENTER();
+ hdd_alert("stop WLAN module: entering driver status=%d",
+ hdd_ctx->driver_status);
qdf_ctx = cds_get_context(QDF_MODULE_ID_QDF_DEVICE);
if (!qdf_ctx) {
@@ -9627,6 +9629,8 @@ done:
hdd_ctx->stop_modules_in_progress = false;
cds_set_module_stop_in_progress(false);
mutex_unlock(&hdd_ctx->iface_change_lock);
+ hdd_alert("stop WLAN module: exit driver status=%d",
+ hdd_ctx->driver_status);
EXIT();
return ret;