summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordavidycchen <davidycchen@google.com>2019-10-22 10:22:15 +0800
committerdavidycchen <davidycchen@google.com>2019-10-22 11:54:26 +0800
commitb932fabb70b4fd5357a1d8ae0a8be85f0dde0353 (patch)
tree38de76acce8c85cb5b860d981e705fa17fc38544
parentf84322f7aa4c14ac7ce6a8435694f08bbce9ca7e (diff)
downloadfts_touch_s5-b932fabb70b4fd5357a1d8ae0a8be85f0dde0353.tar.gz
touch:fts: add a macro for display dynamic refresh rate
Because dynamic refresh rate feature is not supported for all projects, it may cause build break when touch driver uses the variable. Bug: 143114507 Change-Id: I5616b2e010ea794b93915d0028f9403f7c3b9b33 Signed-off-by: davidycchen <davidycchen@google.com>
-rw-r--r--fts.c6
-rw-r--r--fts.h4
2 files changed, 10 insertions, 0 deletions
diff --git a/fts.c b/fts.c
index 32d61ea..e2c1714 100644
--- a/fts.c
+++ b/fts.c
@@ -5008,6 +5008,7 @@ static int fts_screen_state_chg_callback(struct notifier_block *nb,
break;
}
+#ifdef DYNAMIC_REFRESH_RATE
if (info->display_refresh_rate != evdata->refresh_rate) {
info->display_refresh_rate = evdata->refresh_rate;
if (gpio_is_valid(info->board->disp_rate_gpio))
@@ -5016,6 +5017,7 @@ static int fts_screen_state_chg_callback(struct notifier_block *nb,
pr_debug("Refresh rate changed to %d Hz.\n",
info->display_refresh_rate);
}
+#endif
return NOTIFY_OK;
}
@@ -5193,6 +5195,7 @@ static int fts_set_gpio(struct fts_ts_info *info)
__func__);
}
+#ifdef DYNAMIC_REFRESH_RATE
if (gpio_is_valid(bdata->disp_rate_gpio)) {
retval = fts_gpio_setup(bdata->disp_rate_gpio, true, 1,
(info->display_refresh_rate == 90));
@@ -5200,6 +5203,7 @@ static int fts_set_gpio(struct fts_ts_info *info)
pr_err("%s: Failed to configure disp_rate_gpio\n",
__func__);
}
+#endif
if (bdata->reset_gpio >= 0) {
retval = fts_gpio_setup(bdata->reset_gpio, true, 1, 0);
@@ -5397,8 +5401,10 @@ static int fts_probe(struct spi_device *client)
info->client = client;
info->dev = &info->client->dev;
+#ifdef DYNAMIC_REFRESH_RATE
/* Set default display refresh rate */
info->display_refresh_rate = 60;
+#endif
dev_set_drvdata(info->dev, info);
diff --git a/fts.h b/fts.h
index 1c80d12..9f24cfd 100644
--- a/fts.h
+++ b/fts.h
@@ -45,6 +45,8 @@
#include <linux/input/touch_bus_negotiator.h>
#endif
+#undef DYNAMIC_REFRESH_RATE
+
#ifdef CONFIG_DRM
#undef CONFIG_DRM
#endif
@@ -444,7 +446,9 @@ struct fts_ts_info {
#ifdef CONFIG_DRM
struct notifier_block notifier; /* Notify on suspend/resume */
#endif
+#ifdef DYNAMIC_REFRESH_RATE
int display_refresh_rate; /* Display rate in Hz */
+#endif
bool sensor_sleep; /* True if suspend called */
struct wakeup_source wakesrc; /* Wake Lock struct */