Merge "dataipa: ipa_eth: Dynamic NTN3 client moderation configuration"
diff --git a/drivers/platform/msm/ipa/ipa_v3/ipa_eth_i.c b/drivers/platform/msm/ipa/ipa_v3/ipa_eth_i.c
index 36a4df6..dd90faf 100644
--- a/drivers/platform/msm/ipa/ipa_v3/ipa_eth_i.c
+++ b/drivers/platform/msm/ipa/ipa_v3/ipa_eth_i.c
@@ -833,8 +833,15 @@
(u32)((u64)(pipe->info.data_buff_list[0].iova) >> 32);
}
- if (pipe->dir == IPA_ETH_PIPE_DIR_TX)
- ch_scratch.ntn.ioc_mod_threshold = IPA_ETH_NTN_MODT;
+ if (pipe->dir == IPA_ETH_PIPE_DIR_TX) {
+ if (pipe->info.client_info.ntn.ioc_mod_threshold &&
+ pipe->info.client_info.ntn.ioc_mod_threshold < len / GSI_EVT_RING_RE_SIZE_16B) {
+ ch_scratch.ntn.ioc_mod_threshold =
+ pipe->info.client_info.ntn.ioc_mod_threshold;
+ } else {
+ ch_scratch.ntn.ioc_mod_threshold = IPA_ETH_NTN_MODT;
+ }
+ }
result = gsi_write_channel_scratch(ep->gsi_chan_hdl, ch_scratch);
if (result != GSI_STATUS_SUCCESS) {