Bläddra i källkod

qcacld-3.0: Fix start and stop procedure of epping mode

Do not start idle timer for epping mode when starting.
Deinit bus bandwidth and replenish timer when stopping, otherwise,
there will be resource leak.

Change-Id: Ib596f51445b739acd4551640b73270fd7693eea1
CRs-Fixed: 2464089
Guisen Yang 5 år sedan
förälder
incheckning
2780b92f21
2 ändrade filer med 4 tillägg och 1 borttagningar
  1. 2 0
      core/hdd/src/wlan_hdd_driver_ops.c
  2. 2 1
      core/hdd/src/wlan_hdd_main.c

+ 2 - 0
core/hdd/src/wlan_hdd_driver_ops.c

@@ -594,6 +594,8 @@ static void __hdd_soc_remove(struct device *dev)
 
 	if (hdd_get_conparam() == QDF_GLOBAL_EPPING_MODE) {
 		hdd_wlan_stop_modules(hdd_ctx, false);
+		hdd_bus_bandwidth_deinit(hdd_ctx);
+		qdf_nbuf_deinit_replenish_timer();
 	} else {
 		hdd_wlan_exit(hdd_ctx);
 	}

+ 2 - 1
core/hdd/src/wlan_hdd_main.c

@@ -12039,7 +12039,8 @@ QDF_STATUS hdd_psoc_create_vdevs(struct hdd_context *hdd_ctx)
 	if (hdd_ctx->rps)
 		hdd_set_rps_cpu_mask(hdd_ctx);
 
-	if (driver_mode != QDF_GLOBAL_FTM_MODE)
+	if (driver_mode != QDF_GLOBAL_FTM_MODE &&
+	    driver_mode != QDF_GLOBAL_EPPING_MODE)
 		hdd_psoc_idle_timer_start(hdd_ctx);
 
 	return QDF_STATUS_SUCCESS;