devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Patil, Rachna" <rachna@ti.com>
To: linux-doc@vger.kernel.org, devicetree-discuss@lists.ozlabs.org,
	linux-kernel@vger.kernel.org, linux-input@vger.kernel.org,
	linux-iio@vger.kernel.org
Cc: Rob Landley <rob@landley.net>,
	Grant Likely <grant.likely@secretlab.ca>,
	Rob Herring <rob.herring@calxeda.com>,
	Samuel Ortiz <sameo@linux.intel.com>,
	Dmitry Torokhov <dmitry.torokhov@gmail.com>,
	Dmitry Torokhov <dtor@mail.ru>,
	Jonathan Cameron <jic23@cam.ac.uk>,
	"Patil, Rachna" <rachna@ti.com>
Subject: [PATCH RESEND 1/7] input: ti_am335x_tsc: Step enable bits made configurable
Date: Wed, 7 Nov 2012 12:21:58 +0530	[thread overview]
Message-ID: <1352271124-5513-2-git-send-email-rachna@ti.com> (raw)
In-Reply-To: <1352271124-5513-1-git-send-email-rachna@ti.com>

Current code has hard coded value written to
step enable bits. Now the bits are updated based
on how many steps are needed to be configured got
from platform data.

The user needs to take care not to exceed
the count more than 16. While using ADC and TSC
one should take care to set this parameter correctly.

Signed-off-by: Patil, Rachna <rachna@ti.com>
---
 drivers/input/touchscreen/ti_am335x_tsc.c |   10 ++++++++--
 include/linux/mfd/ti_am335x_tscadc.h      |    1 -
 2 files changed, 8 insertions(+), 3 deletions(-)

diff --git a/drivers/input/touchscreen/ti_am335x_tsc.c b/drivers/input/touchscreen/ti_am335x_tsc.c
index 7a18a8a..4369224 100644
--- a/drivers/input/touchscreen/ti_am335x_tsc.c
+++ b/drivers/input/touchscreen/ti_am335x_tsc.c
@@ -39,6 +39,7 @@ struct titsc {
 	unsigned int		irq;
 	unsigned int		wires;
 	unsigned int		x_plate_resistance;
+	unsigned int		enable_bits;
 	bool			pen_down;
 	int			steps_to_configure;
 };
@@ -57,6 +58,7 @@ static void titsc_writel(struct titsc *tsc, unsigned int reg,
 static void titsc_step_config(struct titsc *ts_dev)
 {
 	unsigned int	config;
+	unsigned int	stepenable = 0;
 	int i, total_steps;
 
 	/* Configure the Step registers */
@@ -128,7 +130,11 @@ static void titsc_step_config(struct titsc *ts_dev)
 	titsc_writel(ts_dev, REG_STEPDELAY(total_steps + 2),
 			STEPCONFIG_OPENDLY);
 
-	titsc_writel(ts_dev, REG_SE, STPENB_STEPENB_TC);
+	for (i = 0; i <= (total_steps + 2); i++)
+		stepenable |= 1 << i;
+	ts_dev->enable_bits = stepenable;
+
+	titsc_writel(ts_dev, REG_SE, ts_dev->enable_bits);
 }
 
 static void titsc_read_coordinates(struct titsc *ts_dev,
@@ -250,7 +256,7 @@ static irqreturn_t titsc_irq(int irq, void *dev)
 
 	titsc_writel(ts_dev, REG_IRQSTATUS, irqclr);
 
-	titsc_writel(ts_dev, REG_SE, STPENB_STEPENB_TC);
+	titsc_writel(ts_dev, REG_SE, ts_dev->enable_bits);
 	return IRQ_HANDLED;
 }
 
diff --git a/include/linux/mfd/ti_am335x_tscadc.h b/include/linux/mfd/ti_am335x_tscadc.h
index c79ad5d..23e4f33 100644
--- a/include/linux/mfd/ti_am335x_tscadc.h
+++ b/include/linux/mfd/ti_am335x_tscadc.h
@@ -47,7 +47,6 @@
 #define STEPENB_MASK		(0x1FFFF << 0)
 #define STEPENB(val)		((val) << 0)
 #define STPENB_STEPENB		STEPENB(0x1FFFF)
-#define STPENB_STEPENB_TC	STEPENB(0x1FFF)
 
 /* IRQ enable */
 #define IRQENB_HW_PEN		BIT(0)
-- 
1.7.0.4


  reply	other threads:[~2012-11-07  6:51 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-11-07  6:51 [PATCH RESEND 0/7] MFD: ti_am335x_tscadc: DT support and TSC features addition Patil, Rachna
2012-11-07  6:51 ` Patil, Rachna [this message]
2012-11-07  6:51 ` [PATCH RESEND 2/7] input: ti_am335x_tsc: Order of TSC wires, made configurable Patil, Rachna
2012-11-07  6:52 ` [PATCH RESEND 3/7] input: ti_am335x_tsc: Add variance filter Patil, Rachna
2012-11-21 18:33   ` Dmitry Torokhov
     [not found]     ` <20121121183350.GB18950-WlK9ik9hQGAhIp7JRqBPierSzoNAToWh@public.gmane.org>
2012-11-27  7:07       ` Patil, Rachna
2012-11-07  6:52 ` [PATCH RESEND 4/7] MFD: ti_am335x_tscadc: add device tree binding information Patil, Rachna
     [not found] ` <1352271124-5513-1-git-send-email-rachna-l0cyMroinI0@public.gmane.org>
2012-11-07  6:52   ` [PATCH RESEND 5/7] MFD: ti_am335x_tscadc: Add DT support Patil, Rachna
2012-11-07  6:52 ` [PATCH RESEND 6/7] input: ti_am335x_tsc: " Patil, Rachna
     [not found]   ` <1352271124-5513-7-git-send-email-rachna-l0cyMroinI0@public.gmane.org>
2012-11-21 18:32     ` Dmitry Torokhov
2012-11-27  7:11       ` Patil, Rachna
2012-11-07  6:52 ` [PATCH RESEND 7/7] IIO: ti_am335x_adc: " Patil, Rachna
2012-11-16 10:33 ` [PATCH RESEND 0/7] MFD: ti_am335x_tscadc: DT support and TSC features addition Patil, Rachna
     [not found]   ` <4CE347531D4CA947960AF71FF095B9323E96C54A-Er742YJ7I/eIQmiDNMet8wC/G2K4zDHf@public.gmane.org>
2012-11-21 17:00     ` Samuel Ortiz
2012-11-27  7:14       ` Patil, Rachna

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1352271124-5513-2-git-send-email-rachna@ti.com \
    --to=rachna@ti.com \
    --cc=devicetree-discuss@lists.ozlabs.org \
    --cc=dmitry.torokhov@gmail.com \
    --cc=dtor@mail.ru \
    --cc=grant.likely@secretlab.ca \
    --cc=jic23@cam.ac.uk \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-iio@vger.kernel.org \
    --cc=linux-input@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=rob.herring@calxeda.com \
    --cc=rob@landley.net \
    --cc=sameo@linux.intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).