msm: ipa: enable suspend pipe for ODU
For ODU bridge use case ODU CONS pipe should be suspend if there is no data activity to make sure IPA clocks will be voted on downlink traffic Change-Id: I6625eb082d55456e0f71afa8fc6ebdba3f6024a5 CRs-Fixed: 1095287 Acked-by: Ady Abraham <adya@qti.qualcomm.com> Signed-off-by: Skylar Chang <chiaweic@codeaurora.org>
This commit is contained in:
parent
5142c18bae
commit
c03f0ace8a
2 changed files with 24 additions and 8 deletions
|
@ -450,6 +450,10 @@ int ipa_get_clients_from_rm_resource(
|
||||||
case IPA_RM_RESOURCE_MHI_CONS:
|
case IPA_RM_RESOURCE_MHI_CONS:
|
||||||
clients->names[i++] = IPA_CLIENT_MHI_CONS;
|
clients->names[i++] = IPA_CLIENT_MHI_CONS;
|
||||||
break;
|
break;
|
||||||
|
case IPA_RM_RESOURCE_ODU_ADAPT_CONS:
|
||||||
|
clients->names[i++] = IPA_CLIENT_ODU_EMB_CONS;
|
||||||
|
clients->names[i++] = IPA_CLIENT_ODU_TETH_CONS;
|
||||||
|
break;
|
||||||
case IPA_RM_RESOURCE_USB_PROD:
|
case IPA_RM_RESOURCE_USB_PROD:
|
||||||
clients->names[i++] = IPA_CLIENT_USB_PROD;
|
clients->names[i++] = IPA_CLIENT_USB_PROD;
|
||||||
break;
|
break;
|
||||||
|
@ -459,6 +463,8 @@ int ipa_get_clients_from_rm_resource(
|
||||||
case IPA_RM_RESOURCE_MHI_PROD:
|
case IPA_RM_RESOURCE_MHI_PROD:
|
||||||
clients->names[i++] = IPA_CLIENT_MHI_PROD;
|
clients->names[i++] = IPA_CLIENT_MHI_PROD;
|
||||||
break;
|
break;
|
||||||
|
case IPA_RM_RESOURCE_ODU_ADAPT_PROD:
|
||||||
|
clients->names[i++] = IPA_CLIENT_ODU_PROD;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -490,13 +496,15 @@ bool ipa_should_pipe_be_suspended(enum ipa_client_type client)
|
||||||
if (ep->keep_ipa_awake)
|
if (ep->keep_ipa_awake)
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
if (client == IPA_CLIENT_USB_CONS ||
|
if (client == IPA_CLIENT_USB_CONS ||
|
||||||
client == IPA_CLIENT_MHI_CONS ||
|
client == IPA_CLIENT_MHI_CONS ||
|
||||||
client == IPA_CLIENT_HSIC1_CONS ||
|
client == IPA_CLIENT_HSIC1_CONS ||
|
||||||
client == IPA_CLIENT_WLAN1_CONS ||
|
client == IPA_CLIENT_WLAN1_CONS ||
|
||||||
client == IPA_CLIENT_WLAN2_CONS ||
|
client == IPA_CLIENT_WLAN2_CONS ||
|
||||||
client == IPA_CLIENT_WLAN3_CONS ||
|
client == IPA_CLIENT_WLAN3_CONS ||
|
||||||
client == IPA_CLIENT_WLAN4_CONS)
|
client == IPA_CLIENT_WLAN4_CONS ||
|
||||||
|
client == IPA_CLIENT_ODU_EMB_CONS ||
|
||||||
|
client == IPA_CLIENT_ODU_TETH_CONS)
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
|
|
|
@ -507,6 +507,10 @@ int ipa3_get_clients_from_rm_resource(
|
||||||
case IPA_RM_RESOURCE_MHI_CONS:
|
case IPA_RM_RESOURCE_MHI_CONS:
|
||||||
clients->names[i++] = IPA_CLIENT_MHI_CONS;
|
clients->names[i++] = IPA_CLIENT_MHI_CONS;
|
||||||
break;
|
break;
|
||||||
|
case IPA_RM_RESOURCE_ODU_ADAPT_CONS:
|
||||||
|
clients->names[i++] = IPA_CLIENT_ODU_EMB_CONS;
|
||||||
|
clients->names[i++] = IPA_CLIENT_ODU_TETH_CONS;
|
||||||
|
break;
|
||||||
case IPA_RM_RESOURCE_USB_PROD:
|
case IPA_RM_RESOURCE_USB_PROD:
|
||||||
clients->names[i++] = IPA_CLIENT_USB_PROD;
|
clients->names[i++] = IPA_CLIENT_USB_PROD;
|
||||||
break;
|
break;
|
||||||
|
@ -516,6 +520,8 @@ int ipa3_get_clients_from_rm_resource(
|
||||||
case IPA_RM_RESOURCE_MHI_PROD:
|
case IPA_RM_RESOURCE_MHI_PROD:
|
||||||
clients->names[i++] = IPA_CLIENT_MHI_PROD;
|
clients->names[i++] = IPA_CLIENT_MHI_PROD;
|
||||||
break;
|
break;
|
||||||
|
case IPA_RM_RESOURCE_ODU_ADAPT_PROD:
|
||||||
|
clients->names[i++] = IPA_CLIENT_ODU_PROD;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -554,7 +560,9 @@ bool ipa3_should_pipe_be_suspended(enum ipa_client_type client)
|
||||||
client == IPA_CLIENT_WLAN1_CONS ||
|
client == IPA_CLIENT_WLAN1_CONS ||
|
||||||
client == IPA_CLIENT_WLAN2_CONS ||
|
client == IPA_CLIENT_WLAN2_CONS ||
|
||||||
client == IPA_CLIENT_WLAN3_CONS ||
|
client == IPA_CLIENT_WLAN3_CONS ||
|
||||||
client == IPA_CLIENT_WLAN4_CONS)
|
client == IPA_CLIENT_WLAN4_CONS ||
|
||||||
|
client == IPA_CLIENT_ODU_EMB_CONS ||
|
||||||
|
client == IPA_CLIENT_ODU_TETH_CONS)
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
|
|
Loading…
Add table
Reference in a new issue