summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLinux Build Service Account <lnxbuild@localhost>2016-10-19 19:11:50 -0700
committerGerrit - the friendly Code Review server <code-review@localhost>2016-10-19 19:11:50 -0700
commit9f0f93b36c73e2b1f573910fa1ae8894e39581cd (patch)
tree3d716b7dc064ebf7b4ae9733c17e0ab0a23e9e75
parent24aeef9a54ea6b9e8021c79a955d42d163a993d8 (diff)
parent22ec2af43cb34b6e9ab05f42b9d077ebee3f7901 (diff)
Merge "msm: gsi: add 1ms delay before reset"
-rw-r--r--drivers/platform/msm/gsi/gsi.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/platform/msm/gsi/gsi.c b/drivers/platform/msm/gsi/gsi.c
index 352defe6204b..bd2132d77360 100644
--- a/drivers/platform/msm/gsi/gsi.c
+++ b/drivers/platform/msm/gsi/gsi.c
@@ -17,6 +17,7 @@
#include <linux/module.h>
#include <linux/msm_gsi.h>
#include <linux/platform_device.h>
+#include <linux/delay.h>
#include "gsi.h"
#include "gsi_reg.h"
@@ -26,6 +27,8 @@
#define GSI_MHI_ER_START 10
#define GSI_MHI_ER_END 16
+#define GSI_RESET_WA_MIN_SLEEP 1000
+#define GSI_RESET_WA_MAX_SLEEP 2000
static const struct of_device_id msm_gsi_match[] = {
{ .compatible = "qcom,msm_gsi", },
{ },
@@ -1982,6 +1985,7 @@ reset:
/* workaround: reset GSI producers again */
if (ctx->props.dir == GSI_CHAN_DIR_FROM_GSI && !reset_done) {
+ usleep_range(GSI_RESET_WA_MIN_SLEEP, GSI_RESET_WA_MAX_SLEEP);
reset_done = true;
goto reset;
}