Loading drivers/platform/msm/ipa/ipa_v3/ipa_uc.c +10 −0 Original line number Diff line number Diff line Loading @@ -1579,6 +1579,11 @@ int ipa3_uc_quota_monitor(uint64_t quota) struct IpaQuotaMonitoring_t *quota_info; IPADBG("Enter\n"); if (!ipa3_ctx->uc_ctx.uc_event_ring_valid) { IPADBG("uC event ring not initialized\n"); return res; } cmd.size = sizeof(*quota_info); cmd.base = dma_alloc_coherent(ipa3_ctx->uc_pdev, cmd.size, &cmd.phys_base, GFP_KERNEL); Loading Loading @@ -1655,6 +1660,11 @@ int ipa3_uc_bw_monitor(struct ipa_wdi_bw_info *info) if (!info) return -EINVAL; if (!ipa3_ctx->uc_ctx.uc_event_ring_valid) { IPADBG("uC event ring not initialized\n"); return res; } /* check max entry */ if (info->num > BW_MONITORING_MAX_THRESHOLD) { IPAERR("%d, support max %d bw monitor\n", info->num, Loading drivers/platform/msm/ipa/ipa_v3/ipa_wdi3_i.c +16 −16 Original line number Diff line number Diff line Loading @@ -569,6 +569,22 @@ int ipa3_conn_wdi3_pipes(struct ipa_wdi_conn_in_params *in, IPADBG("wdi_notify is null\n"); #endif /* start uC event ring */ if ((ipa3_ctx->ipa_hw_type >= IPA_HW_v4_5 && ipa3_ctx->ipa_hw_type != IPA_HW_v4_11) || ipa3_ctx->is_bw_monitor_supported) { if (ipa3_ctx->uc_ctx.uc_loaded && !ipa3_ctx->uc_ctx.uc_event_ring_valid) { if (ipa3_uc_setup_event_ring()) { IPAERR("failed to set uc_event ring\n"); return -EFAULT; } } else IPAERR("uc-loaded %d, ring-valid %d\n", ipa3_ctx->uc_ctx.uc_loaded, ipa3_ctx->uc_ctx.uc_event_ring_valid); } /* setup rx ep cfg */ ep_rx->valid = 1; ep_rx->client = rx_client; Loading Loading @@ -848,22 +864,6 @@ int ipa3_enable_wdi3_pipes(int ipa_ep_idx_tx, int ipa_ep_idx_rx) IPA_ACTIVE_CLIENTS_INC_EP(ipa3_get_client_mapping(ipa_ep_idx_tx)); /* start uC event ring */ if ((ipa3_ctx->ipa_hw_type >= IPA_HW_v4_5 && ipa3_ctx->ipa_hw_type != IPA_HW_v4_11) || ipa3_ctx->is_bw_monitor_supported) { if (ipa3_ctx->uc_ctx.uc_loaded && !ipa3_ctx->uc_ctx.uc_event_ring_valid) { if (ipa3_uc_setup_event_ring()) { IPAERR("failed to set uc_event ring\n"); return -EFAULT; } } else IPAERR("uc-loaded %d, ring-valid %d\n", ipa3_ctx->uc_ctx.uc_loaded, ipa3_ctx->uc_ctx.uc_event_ring_valid); } /* enable data path */ result = ipa3_enable_data_path(ipa_ep_idx_rx); if (result) { Loading Loading
drivers/platform/msm/ipa/ipa_v3/ipa_uc.c +10 −0 Original line number Diff line number Diff line Loading @@ -1579,6 +1579,11 @@ int ipa3_uc_quota_monitor(uint64_t quota) struct IpaQuotaMonitoring_t *quota_info; IPADBG("Enter\n"); if (!ipa3_ctx->uc_ctx.uc_event_ring_valid) { IPADBG("uC event ring not initialized\n"); return res; } cmd.size = sizeof(*quota_info); cmd.base = dma_alloc_coherent(ipa3_ctx->uc_pdev, cmd.size, &cmd.phys_base, GFP_KERNEL); Loading Loading @@ -1655,6 +1660,11 @@ int ipa3_uc_bw_monitor(struct ipa_wdi_bw_info *info) if (!info) return -EINVAL; if (!ipa3_ctx->uc_ctx.uc_event_ring_valid) { IPADBG("uC event ring not initialized\n"); return res; } /* check max entry */ if (info->num > BW_MONITORING_MAX_THRESHOLD) { IPAERR("%d, support max %d bw monitor\n", info->num, Loading
drivers/platform/msm/ipa/ipa_v3/ipa_wdi3_i.c +16 −16 Original line number Diff line number Diff line Loading @@ -569,6 +569,22 @@ int ipa3_conn_wdi3_pipes(struct ipa_wdi_conn_in_params *in, IPADBG("wdi_notify is null\n"); #endif /* start uC event ring */ if ((ipa3_ctx->ipa_hw_type >= IPA_HW_v4_5 && ipa3_ctx->ipa_hw_type != IPA_HW_v4_11) || ipa3_ctx->is_bw_monitor_supported) { if (ipa3_ctx->uc_ctx.uc_loaded && !ipa3_ctx->uc_ctx.uc_event_ring_valid) { if (ipa3_uc_setup_event_ring()) { IPAERR("failed to set uc_event ring\n"); return -EFAULT; } } else IPAERR("uc-loaded %d, ring-valid %d\n", ipa3_ctx->uc_ctx.uc_loaded, ipa3_ctx->uc_ctx.uc_event_ring_valid); } /* setup rx ep cfg */ ep_rx->valid = 1; ep_rx->client = rx_client; Loading Loading @@ -848,22 +864,6 @@ int ipa3_enable_wdi3_pipes(int ipa_ep_idx_tx, int ipa_ep_idx_rx) IPA_ACTIVE_CLIENTS_INC_EP(ipa3_get_client_mapping(ipa_ep_idx_tx)); /* start uC event ring */ if ((ipa3_ctx->ipa_hw_type >= IPA_HW_v4_5 && ipa3_ctx->ipa_hw_type != IPA_HW_v4_11) || ipa3_ctx->is_bw_monitor_supported) { if (ipa3_ctx->uc_ctx.uc_loaded && !ipa3_ctx->uc_ctx.uc_event_ring_valid) { if (ipa3_uc_setup_event_ring()) { IPAERR("failed to set uc_event ring\n"); return -EFAULT; } } else IPAERR("uc-loaded %d, ring-valid %d\n", ipa3_ctx->uc_ctx.uc_loaded, ipa3_ctx->uc_ctx.uc_event_ring_valid); } /* enable data path */ result = ipa3_enable_data_path(ipa_ep_idx_rx); if (result) { Loading