Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1314578

[PATCH v5 4/4] Input: cyttsp - perform hard reset of the chip during probe

From Oreste Salerno <oreste.salerno@tomtom.com>
Newsgroups linux.kernel
Subject [PATCH v5 4/4] Input: cyttsp - perform hard reset of the chip during probe
Date 2016-01-21 23:30 +0100
Message-ID <qTvTS-3bF-55@gated-at.bofh.it> (permalink)
References <qTvTQ-3bF-21@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


Since we removed support for calling an init() callback from
the platform data, introduce a function which initializes
the chip by performing a hard reset, using the reset gpio
defined in the device properties.

Signed-off-by: Oreste Salerno <oreste.salerno@tomtom.com>
---
 drivers/input/touchscreen/cyttsp_core.c | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/drivers/input/touchscreen/cyttsp_core.c b/drivers/input/touchscreen/cyttsp_core.c
index d91668d..0fd0956 100644
--- a/drivers/input/touchscreen/cyttsp_core.c
+++ b/drivers/input/touchscreen/cyttsp_core.c
@@ -240,6 +240,16 @@ static int cyttsp_set_sysinfo_regs(struct cyttsp *ts)
 	return retval;
 }
 
+static void cyttsp_hard_reset(struct cyttsp *ts)
+{
+	if (ts->reset_gpio) {
+		gpiod_set_value_cansleep(ts->reset_gpio, 1);
+		msleep(CY_DELAY_DFLT);
+		gpiod_set_value_cansleep(ts->reset_gpio, 0);
+		msleep(CY_DELAY_DFLT);
+	}
+}
+
 static int cyttsp_soft_reset(struct cyttsp *ts)
 {
 	unsigned long timeout;
@@ -663,6 +673,8 @@ struct cyttsp *cyttsp_probe(const struct cyttsp_bus_ops *bus_ops,
 
 	disable_irq(ts->irq);
 
+	cyttsp_hard_reset(ts);
+
 	error = cyttsp_power_on(ts);
 	if (error)
 		return ERR_PTR(error);
-- 
1.9.1

Back to linux.kernel | Previous | NextPrevious in thread | Find similar | Unroll thread


Thread

[PATCH v5 0/4] Add device tree support to the cyttsp driver Oreste Salerno <oreste.salerno@tomtom.com> - 2016-01-21 23:30 +0100
  [PATCH v5 4/4] Input: cyttsp - perform hard reset of the chip during probe Oreste Salerno <oreste.salerno@tomtom.com> - 2016-01-21 23:30 +0100

csiph-web