diff mbox series

soc: qcom: aoss: Reduce the AOP ACK wait time

Message ID 1578650861-2450-1-git-send-email-aneela@codeaurora.org (mailing list archive)
State New, archived
Headers show
Series soc: qcom: aoss: Reduce the AOP ACK wait time | expand

Commit Message

Arun Kumar Neelakantam Jan. 10, 2020, 10:07 a.m. UTC
AOP send ACK immediately before wait thread can start waiting.
In this case the probe call is blocked for default time 1sec and
causing bootup delay.

Reduce the default wait time to 20ms to avoid delay in IRQ miss case.

Signed-off-by: Arun Kumar Neelakantam <aneela@codeaurora.org>
---
 drivers/soc/qcom/qcom_aoss.c | 11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)
diff mbox series

Patch

diff --git a/drivers/soc/qcom/qcom_aoss.c b/drivers/soc/qcom/qcom_aoss.c
index 006ac40..2cf2393 100644
--- a/drivers/soc/qcom/qcom_aoss.c
+++ b/drivers/soc/qcom/qcom_aoss.c
@@ -44,6 +44,8 @@ 
 
 #define QMP_NUM_COOLING_RESOURCES	2
 
+#define QMP_ACK_TIMEOUT			msecs_to_jiffies(10)
+
 static bool qmp_cdev_max_state = 1;
 
 struct qmp_cooling_device {
@@ -150,7 +152,8 @@  static int qmp_open(struct qmp *qmp)
 
 	qmp_kick(qmp);
 
-	ret = wait_event_timeout(qmp->event, qmp_link_acked(qmp), HZ);
+	ret = wait_event_timeout(qmp->event, qmp_link_acked(qmp),
+				 QMP_ACK_TIMEOUT);
 	if (!ret) {
 		dev_err(qmp->dev, "ucore didn't ack link\n");
 		goto timeout_close_link;
@@ -160,7 +163,8 @@  static int qmp_open(struct qmp *qmp)
 
 	qmp_kick(qmp);
 
-	ret = wait_event_timeout(qmp->event, qmp_ucore_channel_up(qmp), HZ);
+	ret = wait_event_timeout(qmp->event, qmp_ucore_channel_up(qmp),
+				 QMP_ACK_TIMEOUT);
 	if (!ret) {
 		dev_err(qmp->dev, "ucore didn't open channel\n");
 		goto timeout_close_channel;
@@ -171,7 +175,8 @@  static int qmp_open(struct qmp *qmp)
 
 	qmp_kick(qmp);
 
-	ret = wait_event_timeout(qmp->event, qmp_mcore_channel_acked(qmp), HZ);
+	ret = wait_event_timeout(qmp->event, qmp_mcore_channel_acked(qmp),
+				 QMP_ACK_TIMEOUT);
 	if (!ret) {
 		dev_err(qmp->dev, "ucore didn't ack channel\n");
 		goto timeout_close_channel;