Merge branch 'upstream-fixes' into for-linus
authorJiri Kosina <jkosina@suse.cz>
Tue, 25 Oct 2011 07:58:12 +0000 (09:58 +0200)
committerJiri Kosina <jkosina@suse.cz>
Tue, 25 Oct 2011 07:58:12 +0000 (09:58 +0200)
Conflicts:
drivers/hid/hid-wacom.c

1  2 
drivers/hid/hid-wacom.c

index 72ca689b64741c3cbb41d6041ce44d411534dd5d,519f56c787bbaccdccee934b69f665dfdfe0feb7..17bb88f782b69b5cd0a44df7927742f412c6d1d0
@@@ -304,6 -304,46 +304,48 @@@ static int wacom_raw_event(struct hid_d
        return 1;
  }
  
+ static int wacom_input_mapped(struct hid_device *hdev, struct hid_input *hi,
+       struct hid_field *field, struct hid_usage *usage, unsigned long **bit,
+                                                               int *max)
+ {
+       struct input_dev *input = hi->input;
++      __set_bit(INPUT_PROP_POINTER, input->propbit);
++
+       /* Basics */
+       input->evbit[0] |= BIT(EV_KEY) | BIT(EV_ABS) | BIT(EV_REL);
+       __set_bit(REL_WHEEL, input->relbit);
+       __set_bit(BTN_TOOL_PEN, input->keybit);
+       __set_bit(BTN_TOUCH, input->keybit);
+       __set_bit(BTN_STYLUS, input->keybit);
+       __set_bit(BTN_STYLUS2, input->keybit);
+       __set_bit(BTN_LEFT, input->keybit);
+       __set_bit(BTN_RIGHT, input->keybit);
+       __set_bit(BTN_MIDDLE, input->keybit);
+       /* Pad */
+       input->evbit[0] |= BIT(EV_MSC);
+       __set_bit(MSC_SERIAL, input->mscbit);
+       __set_bit(BTN_0, input->keybit);
+       __set_bit(BTN_1, input->keybit);
+       __set_bit(BTN_TOOL_FINGER, input->keybit);
+       /* Distance, rubber and mouse */
+       __set_bit(BTN_TOOL_RUBBER, input->keybit);
+       __set_bit(BTN_TOOL_MOUSE, input->keybit);
+       input_set_abs_params(input, ABS_X, 0, 16704, 4, 0);
+       input_set_abs_params(input, ABS_Y, 0, 12064, 4, 0);
+       input_set_abs_params(input, ABS_PRESSURE, 0, 511, 0, 0);
+       input_set_abs_params(input, ABS_DISTANCE, 0, 32, 0, 0);
+       return 0;
+ }
  static int wacom_probe(struct hid_device *hdev,
                const struct hid_device_id *id)
  {
                goto err_ac;
        }
  #endif
-       hidinput = list_entry(hdev->inputs.next, struct hid_input, list);
-       input = hidinput->input;
-       __set_bit(INPUT_PROP_POINTER, input->propbit);
-       /* Basics */
-       input->evbit[0] |= BIT(EV_KEY) | BIT(EV_ABS) | BIT(EV_REL);
-       __set_bit(REL_WHEEL, input->relbit);
-       __set_bit(BTN_TOOL_PEN, input->keybit);
-       __set_bit(BTN_TOUCH, input->keybit);
-       __set_bit(BTN_STYLUS, input->keybit);
-       __set_bit(BTN_STYLUS2, input->keybit);
-       __set_bit(BTN_LEFT, input->keybit);
-       __set_bit(BTN_RIGHT, input->keybit);
-       __set_bit(BTN_MIDDLE, input->keybit);
-       /* Pad */
-       input->evbit[0] |= BIT(EV_MSC);
-       __set_bit(MSC_SERIAL, input->mscbit);
-       __set_bit(BTN_0, input->keybit);
-       __set_bit(BTN_1, input->keybit);
-       __set_bit(BTN_TOOL_FINGER, input->keybit);
-       /* Distance, rubber and mouse */
-       __set_bit(BTN_TOOL_RUBBER, input->keybit);
-       __set_bit(BTN_TOOL_MOUSE, input->keybit);
-       input_set_abs_params(input, ABS_X, 0, 16704, 4, 0);
-       input_set_abs_params(input, ABS_Y, 0, 12064, 4, 0);
-       input_set_abs_params(input, ABS_PRESSURE, 0, 511, 0, 0);
-       input_set_abs_params(input, ABS_DISTANCE, 0, 32, 0, 0);
--
        return 0;
  
  #ifdef CONFIG_HID_WACOM_POWER_SUPPLY