瀏覽代碼

qcacld-3.0: Donot de-init DP RX threads if not inited

In one of the tests, when the driver switches to FTM mode, DP RX threads
are not initialized as the necessary configuration is not passed down
from CDS. However, cds_dp_close tries to de-initialize the threads and a
spinlock un-initialized error is seen.

Donot de-initialize the DP RX thread module if it is not initialized.

Change-Id: I14a1dcb678c9d953abd3262e86408d12f4eb2617
CRs-Fixed: 2301398
Mohit Khanna 6 年之前
父節點
當前提交
13ea524aa3
共有 1 個文件被更改,包括 4 次插入2 次删除
  1. 4 2
      core/dp/txrx3.0/dp_txrx.c

+ 4 - 2
core/dp/txrx3.0/dp_txrx.c

@@ -33,7 +33,7 @@ QDF_STATUS dp_txrx_init(ol_txrx_soc_handle soc, struct cdp_pdev *pdev,
 		return QDF_STATUS_E_NOMEM;
 	}
 
-	dp_debug("dp_txrx_handle allocated");
+	dp_info("dp_txrx_handle allocated");
 	dp_ext_hdl->soc = soc;
 	dp_ext_hdl->pdev = pdev;
 	cdp_soc_set_dp_txrx_handle(soc, dp_ext_hdl);
@@ -60,7 +60,9 @@ QDF_STATUS dp_txrx_deinit(ol_txrx_soc_handle soc)
 	if (!dp_ext_hdl)
 		return QDF_STATUS_E_FAULT;
 
-	dp_rx_tm_deinit(&dp_ext_hdl->rx_tm_hdl);
+	if (dp_ext_hdl->config.enable_rx_threads)
+		dp_rx_tm_deinit(&dp_ext_hdl->rx_tm_hdl);
+
 	qdf_mem_free(dp_ext_hdl);
 	dp_info("dp_txrx_handle_t de-allocated");