diff --git a/techpack/dataipa/drivers/platform/msm/ipa/ipa_v3/ipa.c b/techpack/dataipa/drivers/platform/msm/ipa/ipa_v3/ipa.c index c0d813316098..d6e5e11c8e7a 100644 --- a/techpack/dataipa/drivers/platform/msm/ipa/ipa_v3/ipa.c +++ b/techpack/dataipa/drivers/platform/msm/ipa/ipa_v3/ipa.c @@ -1,6 +1,7 @@ // SPDX-License-Identifier: GPL-2.0-only /* * Copyright (c) 2012-2021, The Linux Foundation. All rights reserved. + * Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved. */ #include @@ -3674,7 +3675,6 @@ static void ipa3_halt_q6_gsi_channels(bool prod) gsi_ep_cfg->ipa_gsi_chan_num, gsi_ep_cfg->ee, code); - ipa_assert(); } } } @@ -7595,8 +7595,8 @@ static int ipa3_pre_init(const struct ipa3_plat_drv_res *resource_p, atomic_set(&ipa3_ctx->ipa3_active_clients.cnt, 1); /* Create workqueues for power management */ - ipa3_ctx->power_mgmt_wq = - create_singlethread_workqueue("ipa_power_mgmt"); + ipa3_ctx->power_mgmt_wq = alloc_workqueue("ipa_power_mgmt", + WQ_MEM_RECLAIM | WQ_UNBOUND | WQ_SYSFS | WQ_HIGHPRI, 1); if (!ipa3_ctx->power_mgmt_wq) { IPAERR("failed to create power mgmt wq\n"); result = -ENOMEM; diff --git a/techpack/dataipa/drivers/platform/msm/ipa/ipa_v3/ipa_utils.c b/techpack/dataipa/drivers/platform/msm/ipa/ipa_v3/ipa_utils.c index a71731729c37..d29d260e760b 100644 --- a/techpack/dataipa/drivers/platform/msm/ipa/ipa_v3/ipa_utils.c +++ b/techpack/dataipa/drivers/platform/msm/ipa/ipa_v3/ipa_utils.c @@ -7281,7 +7281,7 @@ void ipa3_counter_remove_hdl(int hdl) offset = counter->hw_counter.start_id - 1; if (offset >= 0 && (offset + counter->hw_counter.num_counters) < IPA_FLT_RT_HW_COUNTER) { - memset(&ipa3_ctx->flt_rt_counters.used_hw + offset, + memset(&ipa3_ctx->flt_rt_counters.used_hw[offset], 0, counter->hw_counter.num_counters * sizeof(bool)); } else { IPAERR_RL("unexpected hdl %d\n", hdl); @@ -7290,7 +7290,7 @@ void ipa3_counter_remove_hdl(int hdl) offset = counter->sw_counter.start_id - 1 - IPA_FLT_RT_HW_COUNTER; if (offset >= 0 && (offset + counter->sw_counter.num_counters) < IPA_FLT_RT_SW_COUNTER) { - memset(&ipa3_ctx->flt_rt_counters.used_sw + offset, + memset(&ipa3_ctx->flt_rt_counters.used_sw[offset], 0, counter->sw_counter.num_counters * sizeof(bool)); } else { IPAERR_RL("unexpected hdl %d\n", hdl);