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 | |
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')
-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."); |