From eef8075f3f7fe51f421f977dee89fe416f961961 Mon Sep 17 00:00:00 2001 From: Thierry Reding Date: Tue, 17 May 2011 09:31:01 -0700 Subject: [PATCH] --- yaml --- r: 250522 b: refs/heads/master c: 84005eb5ea2939d448047fcf6924b3b9b6ed974d h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/input/touchscreen/tsc2007.c | 4 +++- trunk/include/linux/i2c/tsc2007.h | 1 + 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index 1a5c7ead3e64..9c4d63eb405f 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 4a1a42af0aba011e263098f107a2f45e0de2f279 +refs/heads/master: 84005eb5ea2939d448047fcf6924b3b9b6ed974d diff --git a/trunk/drivers/input/touchscreen/tsc2007.c b/trunk/drivers/input/touchscreen/tsc2007.c index df4ae354969d..8c48a91a6783 100644 --- a/trunk/drivers/input/touchscreen/tsc2007.c +++ b/trunk/drivers/input/touchscreen/tsc2007.c @@ -75,6 +75,7 @@ struct tsc2007 { u16 model; u16 x_plate_ohms; + u16 max_rt; bool pendown; int irq; @@ -185,7 +186,7 @@ static void tsc2007_work(struct work_struct *work) tsc2007_read_values(ts, &tc); rt = tsc2007_calculate_pressure(ts, &tc); - if (rt > MAX_12BIT) { + if (rt > ts->max_rt) { /* * Sample found inconsistent by debouncing or pressure is * beyond the maximum. Don't report it to user space, @@ -294,6 +295,7 @@ static int __devinit tsc2007_probe(struct i2c_client *client, ts->model = pdata->model; ts->x_plate_ohms = pdata->x_plate_ohms; + ts->max_rt = pdata->max_rt ? : MAX_12BIT; ts->get_pendown_state = pdata->get_pendown_state; ts->clear_penirq = pdata->clear_penirq; diff --git a/trunk/include/linux/i2c/tsc2007.h b/trunk/include/linux/i2c/tsc2007.h index c6361fbb7bf9..d95f11347314 100644 --- a/trunk/include/linux/i2c/tsc2007.h +++ b/trunk/include/linux/i2c/tsc2007.h @@ -6,6 +6,7 @@ struct tsc2007_platform_data { u16 model; /* 2007. */ u16 x_plate_ohms; + u16 max_rt; /* max. resistance above which samples are ignored */ int (*get_pendown_state)(void); void (*clear_penirq)(void); /* If needed, clear 2nd level