]> Pileus Git - ~andy/linux/blobdiff - drivers/input/tablet/wacom_wac.c
Merge commit 'v3.3-rc6' into next
[~andy/linux] / drivers / input / tablet / wacom_wac.c
index 88672ec296c116e10d7340c7f07397e10e09afe1..07a1f218b5c1b6943512e0e7ea1148f61ed1fac2 100644 (file)
@@ -832,12 +832,24 @@ static int wacom_tpc_irq(struct wacom_wac *wacom, size_t len)
 
        dbg("wacom_tpc_irq: received report #%d", data[0]);
 
-       if (len == WACOM_PKGLEN_TPC1FG || data[0] == WACOM_REPORT_TPC1FG)
-               return wacom_tpc_single_touch(wacom, len);
-       else if (data[0] == WACOM_REPORT_TPC2FG)
-               return wacom_tpc_mt_touch(wacom);
-       else if (data[0] == WACOM_REPORT_PENABLED)
-               return wacom_tpc_pen(wacom);
+       switch (len) {
+       case WACOM_PKGLEN_TPC1FG:
+                return wacom_tpc_single_touch(wacom, len);
+
+       case WACOM_PKGLEN_TPC2FG:
+               return wacom_tpc_mt_touch(wacom);
+
+       default:
+               switch (data[0]) {
+               case WACOM_REPORT_TPC1FG:
+               case WACOM_REPORT_TPCHID:
+               case WACOM_REPORT_TPCST:
+                       return wacom_tpc_single_touch(wacom, len);
+
+               case WACOM_REPORT_PENABLED:
+                       return wacom_tpc_pen(wacom);
+               }
+       }
 
        return 0;
 }
@@ -1317,7 +1329,7 @@ void wacom_setup_input_capabilities(struct input_dev *input_dev,
                break;
 
        case TABLETPC2FG:
-               if (features->device_type == BTN_TOOL_DOUBLETAP) {
+               if (features->device_type == BTN_TOOL_FINGER) {
 
                        input_mt_init_slots(input_dev, 2);
                        input_set_abs_params(input_dev, ABS_MT_TOOL_TYPE,
@@ -1366,7 +1378,7 @@ void wacom_setup_input_capabilities(struct input_dev *input_dev,
 
                __set_bit(INPUT_PROP_POINTER, input_dev->propbit);
 
-               if (features->device_type == BTN_TOOL_DOUBLETAP) {
+               if (features->device_type == BTN_TOOL_FINGER) {
                        __set_bit(BTN_LEFT, input_dev->keybit);
                        __set_bit(BTN_FORWARD, input_dev->keybit);
                        __set_bit(BTN_BACK, input_dev->keybit);