2007-05-09 04:41:18

by Dmitry Torokhov

[permalink] [raw]
Subject: [PATCH] ucb1x00 - do not access input_dev->private directly

Use input_get_drvdata() and input_set_drvdata() helpers to do that.

Signed-off-by: Dmitry Torokhov <[email protected]>
---

... Not tested - no hardware ...

drivers/mfd/ucb1x00-ts.c | 7 ++++---
1 files changed, 4 insertions(+), 3 deletions(-)

Index: work/drivers/mfd/ucb1x00-ts.c
===================================================================
--- work.orig/drivers/mfd/ucb1x00-ts.c
+++ work/drivers/mfd/ucb1x00-ts.c
@@ -300,7 +300,7 @@ static void ucb1x00_ts_irq(int idx, void

static int ucb1x00_ts_open(struct input_dev *idev)
{
- struct ucb1x00_ts *ts = idev->private;
+ struct ucb1x00_ts *ts = input_get_drvdata(idev);
int ret = 0;

BUG_ON(ts->rtask);
@@ -337,7 +337,7 @@ static int ucb1x00_ts_open(struct input_
*/
static void ucb1x00_ts_close(struct input_dev *idev)
{
- struct ucb1x00_ts *ts = idev->private;
+ struct ucb1x00_ts *ts = input_get_drvdata(idev);

if (ts->rtask)
kthread_stop(ts->rtask);
@@ -389,7 +389,6 @@ static int ucb1x00_ts_add(struct ucb1x00
ts->idev = idev;
ts->adcsync = adcsync ? UCB_SYNC : UCB_NOSYNC;

- idev->private = ts;
idev->name = "Touchscreen panel";
idev->id.product = ts->ucb->id;
idev->open = ucb1x00_ts_open;
@@ -400,6 +399,8 @@ static int ucb1x00_ts_add(struct ucb1x00
__set_bit(ABS_Y, idev->absbit);
__set_bit(ABS_PRESSURE, idev->absbit);

+ input_set_drvdata(idev, ts);
+
err = input_register_device(idev);
if (err)
goto fail;