|
@@ -15615,12 +15615,17 @@ void hdd_bus_bw_compute_timer_try_start(struct hdd_context *hdd_ctx)
|
|
|
static void __hdd_bus_bw_compute_timer_stop(struct hdd_context *hdd_ctx)
|
|
|
{
|
|
|
struct bbm_params param = {0};
|
|
|
+ bool is_any_adapter_conn = hdd_is_any_adapter_connected(hdd_ctx);
|
|
|
+
|
|
|
if (!qdf_periodic_work_stop_sync(&hdd_ctx->bus_bw_work))
|
|
|
goto exit;
|
|
|
|
|
|
ucfg_ipa_set_perf_level(hdd_ctx->pdev, 0, 0);
|
|
|
hdd_reset_tcp_delack(hdd_ctx);
|
|
|
- hdd_reset_tcp_adv_win_scale(hdd_ctx);
|
|
|
+
|
|
|
+ if (!is_any_adapter_conn)
|
|
|
+ hdd_reset_tcp_adv_win_scale(hdd_ctx);
|
|
|
+
|
|
|
cdp_pdev_reset_driver_del_ack(cds_get_context(QDF_MODULE_ID_SOC),
|
|
|
OL_TXRX_PDEV_ID);
|
|
|
cdp_pdev_reset_bundle_require_flag(cds_get_context(QDF_MODULE_ID_SOC),
|
|
@@ -15637,7 +15642,7 @@ exit:
|
|
|
param.policy_info.tput_level = TPUT_LEVEL_NONE;
|
|
|
hdd_bbm_apply_independent_policy(hdd_ctx, ¶m);
|
|
|
|
|
|
- if (!hdd_is_any_adapter_connected(hdd_ctx))
|
|
|
+ if (!is_any_adapter_conn)
|
|
|
qdf_atomic_set(&hdd_ctx->num_latency_critical_clients, 0);
|
|
|
}
|
|
|
|