diff options
| author | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2008-06-26 09:56:27 -0400 |
|---|---|---|
| committer | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2008-06-30 09:37:21 -0400 |
| commit | 8a65c02f1dfda13ac2172f88f90f087330db82de (patch) | |
| tree | f4b47cf8f5a9918b8159ad56265e090de5138712 /drivers/input/touchscreen | |
| parent | f2278f31d6feb9036eaa79f2e8abcce850420abd (diff) | |
Input: wm9712 - no pressure measurement with 5-wire mode
The hardware does not support pressure measurement is 5-wire mode
so warn the user if he tries to request it.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Diffstat (limited to 'drivers/input/touchscreen')
| -rw-r--r-- | drivers/input/touchscreen/wm9712.c | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/drivers/input/touchscreen/wm9712.c b/drivers/input/touchscreen/wm9712.c index 0b6e4cfa6a21..4c5d85a249ae 100644 --- a/drivers/input/touchscreen/wm9712.c +++ b/drivers/input/touchscreen/wm9712.c | |||
| @@ -168,6 +168,18 @@ static void wm9712_phy_init(struct wm97xx *wm) | |||
| 168 | 64000 / rpu); | 168 | 64000 / rpu); |
| 169 | } | 169 | } |
| 170 | 170 | ||
| 171 | /* WM9712 five wire */ | ||
| 172 | if (five_wire) { | ||
| 173 | dig2 |= WM9712_45W; | ||
| 174 | dev_dbg(wm->dev, "setting 5-wire touchscreen mode."); | ||
| 175 | |||
| 176 | if (pil) { | ||
| 177 | dev_warn(wm->dev, "pressure measurement is not " | ||
| 178 | "supported in 5-wire mode\n"); | ||
| 179 | pil = 0; | ||
| 180 | } | ||
| 181 | } | ||
| 182 | |||
| 171 | /* touchpanel pressure current*/ | 183 | /* touchpanel pressure current*/ |
| 172 | if (pil == 2) { | 184 | if (pil == 2) { |
| 173 | dig2 |= WM9712_PIL; | 185 | dig2 |= WM9712_PIL; |
| @@ -179,12 +191,6 @@ static void wm9712_phy_init(struct wm97xx *wm) | |||
| 179 | if (!pil) | 191 | if (!pil) |
| 180 | pressure = 0; | 192 | pressure = 0; |
| 181 | 193 | ||
| 182 | /* WM9712 five wire */ | ||
| 183 | if (five_wire) { | ||
| 184 | dig2 |= WM9712_45W; | ||
| 185 | dev_dbg(wm->dev, "setting 5-wire touchscreen mode."); | ||
| 186 | } | ||
| 187 | |||
| 188 | /* polling mode sample settling delay */ | 194 | /* polling mode sample settling delay */ |
| 189 | if (delay < 0 || delay > 15) { | 195 | if (delay < 0 || delay > 15) { |
| 190 | dev_dbg(wm->dev, "supplied delay out of range."); | 196 | dev_dbg(wm->dev, "supplied delay out of range."); |
