From b17ffbbf400500ad424b05394ec4459e55bad614 Mon Sep 17 00:00:00 2001 From: Utkarsh Saxena Date: Wed, 29 Jun 2016 12:16:55 +0530 Subject: msm: ipa: disconnect sequence change for USB 2.0 For USB 2.0 there is a requirement to not to flush the USB endpoints after the pipes are disconnected. Otherwise this can result into NOC errors. Make a change to modify the disconnect sequence as below. 1) USB driver first disable the pipes 2) New API is provided from IPA to disable the endpoint. 3) As part of disable, make sure pipes are empty and reset the pipes. 4) USB resets its BAM and flushes the ep. 5) USB then disconnects both IPA and USB pipes. Change-Id: I917f025678e6abb03058d5be4ec42d9e6d76835f CRs-Fixed: 1038623 Acked-by: Chaitanya Pratapa Acked-by: Mohammed Javid Signed-off-by: Utkarsh Saxena --- include/linux/ipa.h | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'include/linux') diff --git a/include/linux/ipa.h b/include/linux/ipa.h index d152057af385..5f85508353c9 100644 --- a/include/linux/ipa.h +++ b/include/linux/ipa.h @@ -1095,6 +1095,11 @@ int ipa_reset_endpoint(u32 clnt_hdl); */ int ipa_clear_endpoint_delay(u32 clnt_hdl); +/* + * Disable ep + */ +int ipa_disable_endpoint(u32 clnt_hdl); + /* * Configuration */ @@ -1461,6 +1466,14 @@ static inline int ipa_clear_endpoint_delay(u32 clnt_hdl) return -EPERM; } +/* + * Disable ep + */ +static inline int ipa_disable_endpoint(u32 clnt_hdl) +{ + return -EPERM; +} + /* * Configuration */ -- cgit v1.2.3