diff options
| -rw-r--r-- | drivers/hid/hid-wacom.c | 2 | ||||
| -rw-r--r-- | drivers/input/tablet/wacom_wac.c | 25 | ||||
| -rw-r--r-- | drivers/input/touchscreen/wacom_w8001.c | 2 |
3 files changed, 28 insertions, 1 deletions
diff --git a/drivers/hid/hid-wacom.c b/drivers/hid/hid-wacom.c index 06888323828c..5b9267dd3d66 100644 --- a/drivers/hid/hid-wacom.c +++ b/drivers/hid/hid-wacom.c | |||
| @@ -383,6 +383,8 @@ move_on: | |||
| 383 | hidinput = list_entry(hdev->inputs.next, struct hid_input, list); | 383 | hidinput = list_entry(hdev->inputs.next, struct hid_input, list); |
| 384 | input = hidinput->input; | 384 | input = hidinput->input; |
| 385 | 385 | ||
| 386 | __set_bit(INPUT_PROP_POINTER, input->propbit); | ||
| 387 | |||
| 386 | /* Basics */ | 388 | /* Basics */ |
| 387 | input->evbit[0] |= BIT(EV_KEY) | BIT(EV_ABS) | BIT(EV_REL); | 389 | input->evbit[0] |= BIT(EV_KEY) | BIT(EV_ABS) | BIT(EV_REL); |
| 388 | 390 | ||
diff --git a/drivers/input/tablet/wacom_wac.c b/drivers/input/tablet/wacom_wac.c index 2d88316d0e54..c31e4e9f2690 100644 --- a/drivers/input/tablet/wacom_wac.c +++ b/drivers/input/tablet/wacom_wac.c | |||
| @@ -1098,6 +1098,8 @@ void wacom_setup_input_capabilities(struct input_dev *input_dev, | |||
| 1098 | __set_bit(BTN_TOOL_MOUSE, input_dev->keybit); | 1098 | __set_bit(BTN_TOOL_MOUSE, input_dev->keybit); |
| 1099 | __set_bit(BTN_STYLUS, input_dev->keybit); | 1099 | __set_bit(BTN_STYLUS, input_dev->keybit); |
| 1100 | __set_bit(BTN_STYLUS2, input_dev->keybit); | 1100 | __set_bit(BTN_STYLUS2, input_dev->keybit); |
| 1101 | |||
| 1102 | __set_bit(INPUT_PROP_POINTER, input_dev->propbit); | ||
| 1101 | break; | 1103 | break; |
| 1102 | 1104 | ||
| 1103 | case WACOM_21UX2: | 1105 | case WACOM_21UX2: |
| @@ -1126,6 +1128,9 @@ void wacom_setup_input_capabilities(struct input_dev *input_dev, | |||
| 1126 | } | 1128 | } |
| 1127 | 1129 | ||
| 1128 | input_set_abs_params(input_dev, ABS_Z, -900, 899, 0, 0); | 1130 | input_set_abs_params(input_dev, ABS_Z, -900, 899, 0, 0); |
| 1131 | |||
| 1132 | __set_bit(INPUT_PROP_DIRECT, input_dev->propbit); | ||
| 1133 | |||
| 1129 | wacom_setup_cintiq(wacom_wac); | 1134 | wacom_setup_cintiq(wacom_wac); |
| 1130 | break; | 1135 | break; |
| 1131 | 1136 | ||
| @@ -1150,6 +1155,8 @@ void wacom_setup_input_capabilities(struct input_dev *input_dev, | |||
| 1150 | /* fall through */ | 1155 | /* fall through */ |
| 1151 | 1156 | ||
| 1152 | case INTUOS: | 1157 | case INTUOS: |
| 1158 | __set_bit(INPUT_PROP_POINTER, input_dev->propbit); | ||
| 1159 | |||
| 1153 | wacom_setup_intuos(wacom_wac); | 1160 | wacom_setup_intuos(wacom_wac); |
| 1154 | break; | 1161 | break; |
| 1155 | 1162 | ||
| @@ -1165,6 +1172,8 @@ void wacom_setup_input_capabilities(struct input_dev *input_dev, | |||
| 1165 | 1172 | ||
| 1166 | input_set_abs_params(input_dev, ABS_Z, -900, 899, 0, 0); | 1173 | input_set_abs_params(input_dev, ABS_Z, -900, 899, 0, 0); |
| 1167 | wacom_setup_intuos(wacom_wac); | 1174 | wacom_setup_intuos(wacom_wac); |
| 1175 | |||
| 1176 | __set_bit(INPUT_PROP_POINTER, input_dev->propbit); | ||
| 1168 | break; | 1177 | break; |
| 1169 | 1178 | ||
| 1170 | case TABLETPC2FG: | 1179 | case TABLETPC2FG: |
| @@ -1183,14 +1192,24 @@ void wacom_setup_input_capabilities(struct input_dev *input_dev, | |||
| 1183 | case TABLETPC: | 1192 | case TABLETPC: |
| 1184 | __clear_bit(ABS_MISC, input_dev->absbit); | 1193 | __clear_bit(ABS_MISC, input_dev->absbit); |
| 1185 | 1194 | ||
| 1195 | __set_bit(INPUT_PROP_DIRECT, input_dev->propbit); | ||
| 1196 | |||
| 1186 | if (features->device_type != BTN_TOOL_PEN) | 1197 | if (features->device_type != BTN_TOOL_PEN) |
| 1187 | break; /* no need to process stylus stuff */ | 1198 | break; /* no need to process stylus stuff */ |
| 1188 | 1199 | ||
| 1189 | /* fall through */ | 1200 | /* fall through */ |
| 1190 | 1201 | ||
| 1191 | case PL: | 1202 | case PL: |
| 1192 | case PTU: | ||
| 1193 | case DTU: | 1203 | case DTU: |
| 1204 | __set_bit(BTN_TOOL_PEN, input_dev->keybit); | ||
| 1205 | __set_bit(BTN_TOOL_RUBBER, input_dev->keybit); | ||
| 1206 | __set_bit(BTN_STYLUS, input_dev->keybit); | ||
| 1207 | __set_bit(BTN_STYLUS2, input_dev->keybit); | ||
| 1208 | |||
| 1209 | __set_bit(INPUT_PROP_DIRECT, input_dev->propbit); | ||
| 1210 | break; | ||
| 1211 | |||
| 1212 | case PTU: | ||
| 1194 | __set_bit(BTN_STYLUS2, input_dev->keybit); | 1213 | __set_bit(BTN_STYLUS2, input_dev->keybit); |
| 1195 | /* fall through */ | 1214 | /* fall through */ |
| 1196 | 1215 | ||
| @@ -1198,11 +1217,15 @@ void wacom_setup_input_capabilities(struct input_dev *input_dev, | |||
| 1198 | __set_bit(BTN_TOOL_PEN, input_dev->keybit); | 1217 | __set_bit(BTN_TOOL_PEN, input_dev->keybit); |
| 1199 | __set_bit(BTN_TOOL_RUBBER, input_dev->keybit); | 1218 | __set_bit(BTN_TOOL_RUBBER, input_dev->keybit); |
| 1200 | __set_bit(BTN_STYLUS, input_dev->keybit); | 1219 | __set_bit(BTN_STYLUS, input_dev->keybit); |
| 1220 | |||
| 1221 | __set_bit(INPUT_PROP_POINTER, input_dev->propbit); | ||
| 1201 | break; | 1222 | break; |
| 1202 | 1223 | ||
| 1203 | case BAMBOO_PT: | 1224 | case BAMBOO_PT: |
| 1204 | __clear_bit(ABS_MISC, input_dev->absbit); | 1225 | __clear_bit(ABS_MISC, input_dev->absbit); |
| 1205 | 1226 | ||
| 1227 | __set_bit(INPUT_PROP_POINTER, input_dev->propbit); | ||
| 1228 | |||
| 1206 | if (features->device_type == BTN_TOOL_DOUBLETAP) { | 1229 | if (features->device_type == BTN_TOOL_DOUBLETAP) { |
| 1207 | __set_bit(BTN_LEFT, input_dev->keybit); | 1230 | __set_bit(BTN_LEFT, input_dev->keybit); |
| 1208 | __set_bit(BTN_FORWARD, input_dev->keybit); | 1231 | __set_bit(BTN_FORWARD, input_dev->keybit); |
diff --git a/drivers/input/touchscreen/wacom_w8001.c b/drivers/input/touchscreen/wacom_w8001.c index c14412ef4648..9941d39df43d 100644 --- a/drivers/input/touchscreen/wacom_w8001.c +++ b/drivers/input/touchscreen/wacom_w8001.c | |||
| @@ -383,6 +383,8 @@ static int w8001_setup(struct w8001 *w8001) | |||
| 383 | dev->evbit[0] = BIT_MASK(EV_KEY) | BIT_MASK(EV_ABS); | 383 | dev->evbit[0] = BIT_MASK(EV_KEY) | BIT_MASK(EV_ABS); |
| 384 | strlcat(w8001->name, "Wacom Serial", sizeof(w8001->name)); | 384 | strlcat(w8001->name, "Wacom Serial", sizeof(w8001->name)); |
| 385 | 385 | ||
| 386 | __set_bit(INPUT_PROP_DIRECT, dev->propbit); | ||
| 387 | |||
| 386 | /* penabled? */ | 388 | /* penabled? */ |
| 387 | error = w8001_command(w8001, W8001_CMD_QUERY, true); | 389 | error = w8001_command(w8001, W8001_CMD_QUERY, true); |
| 388 | if (!error) { | 390 | if (!error) { |
