]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/commitdiff
Input: wm9712 - no pressure measurement with 5-wire mode
authorMark Brown <broonie@opensource.wolfsonmicro.com>
Thu, 26 Jun 2008 13:56:27 +0000 (09:56 -0400)
committerDmitry Torokhov <dmitry.torokhov@gmail.com>
Mon, 30 Jun 2008 13:37:21 +0000 (09:37 -0400)
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>
drivers/input/touchscreen/wm9712.c

index 0b6e4cfa6a218a8117599e9ff5af8e3f5863b0fa..4c5d85a249aeceb6edc7d59506618bbe5dc22807 100644 (file)
@@ -168,6 +168,18 @@ static void wm9712_phy_init(struct wm97xx *wm)
                        64000 / rpu);
        }
 
+       /* WM9712 five wire */
+       if (five_wire) {
+               dig2 |= WM9712_45W;
+               dev_dbg(wm->dev, "setting 5-wire touchscreen mode.");
+
+               if (pil) {
+                       dev_warn(wm->dev, "pressure measurement is not "
+                                "supported in 5-wire mode\n");
+                       pil = 0;
+               }
+       }
+
        /* touchpanel pressure current*/
        if (pil == 2) {
                dig2 |= WM9712_PIL;
@@ -179,12 +191,6 @@ static void wm9712_phy_init(struct wm97xx *wm)
        if (!pil)
                pressure = 0;
 
-       /* WM9712 five wire */
-       if (five_wire) {
-               dig2 |= WM9712_45W;
-               dev_dbg(wm->dev, "setting 5-wire touchscreen mode.");
-       }
-
        /* polling mode sample settling delay */
        if (delay < 0 || delay > 15) {
                dev_dbg(wm->dev, "supplied delay out of range.");