drivers/hid/wacom.h
160
struct wacom_wac wacom_wac;
drivers/hid/wacom.h
185
static inline void wacom_schedule_work(struct wacom_wac *wacom_wac,
drivers/hid/wacom.h
188
struct wacom *wacom = container_of(wacom_wac, struct wacom, wacom_wac);
drivers/hid/wacom.h
231
void wacom_wac_irq(struct wacom_wac *wacom_wac, size_t len);
drivers/hid/wacom.h
234
struct wacom_wac *wacom_wac);
drivers/hid/wacom.h
236
struct wacom_wac *wacom_wac);
drivers/hid/wacom.h
238
struct wacom_wac *wacom_wac);
drivers/hid/wacom_sys.c
107
struct wacom_wac *wacom_wac = &wacom->wacom_wac;
drivers/hid/wacom_sys.c
108
struct wacom_features *features = &wacom_wac->features;
drivers/hid/wacom_sys.c
113
if (wacom_wac->serial[0] || !(features->quirks & WACOM_QUIRK_TOOLSERIAL))
drivers/hid/wacom_sys.c
1303
struct wacom_wac *wacom_wac = &wacom->wacom_wac;
drivers/hid/wacom_sys.c
1304
int fifo_size = min(PAGE_SIZE, 10 * wacom_wac->features.pktlen);
drivers/hid/wacom_sys.c
1322
wacom_wac->pen_fifo = pen_fifo;
drivers/hid/wacom_sys.c
144
wacom_wac->serial[0] = value;
drivers/hid/wacom_sys.c
148
wacom_wac->serial[0] |= ((__u64)value) << 32;
drivers/hid/wacom_sys.c
152
wacom_wac->id[0] = value;
drivers/hid/wacom_sys.c
1583
if (!wacom->wacom_wac.pad_input)
drivers/hid/wacom_sys.c
1586
dev = &wacom->wacom_wac.pad_input->dev;
drivers/hid/wacom_sys.c
1607
if (!(wacom->wacom_wac.features.device_type & WACOM_DEVICETYPE_PAD))
drivers/hid/wacom_sys.c
1611
switch (wacom->wacom_wac.features.type) {
drivers/hid/wacom_sys.c
163
wacom_wac_queue_flush(hdev, wacom_wac->pen_fifo);
drivers/hid/wacom_sys.c
165
wacom_wac_queue_insert(hdev, wacom_wac->pen_fifo,
drivers/hid/wacom_sys.c
1752
val->strval = battery->wacom->wacom_wac.name;
drivers/hid/wacom_sys.c
176
if (wacom->wacom_wac.features.type == BOOTLOADER)
drivers/hid/wacom_sys.c
182
wacom->wacom_wac.data = raw_data;
drivers/hid/wacom_sys.c
1830
if (wacom->wacom_wac.features.quirks & WACOM_QUIRK_BATTERY)
drivers/hid/wacom_sys.c
184
wacom_wac_irq(&wacom->wacom_wac, size);
drivers/hid/wacom_sys.c
1859
return sysfs_emit(buf, "%i\n", wacom->wacom_wac.bt_high_speed);
drivers/hid/wacom_sys.c
1876
wacom_bt_query_tablet_data(hdev, new_speed, &wacom->wacom_wac.features);
drivers/hid/wacom_sys.c
2023
if (wacom->wacom_wac.features.type != REMOTE)
drivers/hid/wacom_sys.c
2083
struct wacom_wac *wacom_wac = &(wacom->wacom_wac);
drivers/hid/wacom_sys.c
2089
input_dev->name = wacom_wac->features.name;
drivers/hid/wacom_sys.c
2097
input_dev->id.product = wacom_wac->pid ? wacom_wac->pid : hdev->product;
drivers/hid/wacom_sys.c
2106
struct wacom_wac *wacom_wac = &(wacom->wacom_wac);
drivers/hid/wacom_sys.c
2108
wacom_wac->pen_input = wacom_allocate_input(wacom);
drivers/hid/wacom_sys.c
2109
wacom_wac->touch_input = wacom_allocate_input(wacom);
drivers/hid/wacom_sys.c
2110
wacom_wac->pad_input = wacom_allocate_input(wacom);
drivers/hid/wacom_sys.c
2111
if (!wacom_wac->pen_input ||
drivers/hid/wacom_sys.c
2112
!wacom_wac->touch_input ||
drivers/hid/wacom_sys.c
2113
!wacom_wac->pad_input)
drivers/hid/wacom_sys.c
2116
wacom_wac->pen_input->name = wacom_wac->pen_name;
drivers/hid/wacom_sys.c
2117
wacom_wac->touch_input->name = wacom_wac->touch_name;
drivers/hid/wacom_sys.c
2118
wacom_wac->pad_input->name = wacom_wac->pad_name;
drivers/hid/wacom_sys.c
2126
struct wacom_wac *wacom_wac = &(wacom->wacom_wac);
drivers/hid/wacom_sys.c
2129
pen_input_dev = wacom_wac->pen_input;
drivers/hid/wacom_sys.c
2130
touch_input_dev = wacom_wac->touch_input;
drivers/hid/wacom_sys.c
2131
pad_input_dev = wacom_wac->pad_input;
drivers/hid/wacom_sys.c
2136
error = wacom_setup_pen_input_capabilities(pen_input_dev, wacom_wac);
drivers/hid/wacom_sys.c
2140
wacom_wac->pen_input = NULL;
drivers/hid/wacom_sys.c
2144
error = wacom_setup_touch_input_capabilities(touch_input_dev, wacom_wac);
drivers/hid/wacom_sys.c
2148
wacom_wac->touch_input = NULL;
drivers/hid/wacom_sys.c
2152
error = wacom_setup_pad_input_capabilities(pad_input_dev, wacom_wac);
drivers/hid/wacom_sys.c
2156
wacom_wac->pad_input = NULL;
drivers/hid/wacom_sys.c
2166
struct wacom_wac *wacom_wac = &(wacom->wacom_wac);
drivers/hid/wacom_sys.c
2169
pen_input_dev = wacom_wac->pen_input;
drivers/hid/wacom_sys.c
2170
touch_input_dev = wacom_wac->touch_input;
drivers/hid/wacom_sys.c
2171
pad_input_dev = wacom_wac->pad_input;
drivers/hid/wacom_sys.c
2194
wacom_wac->pad_input = NULL;
drivers/hid/wacom_sys.c
2195
wacom_wac->touch_input = NULL;
drivers/hid/wacom_sys.c
2196
wacom_wac->pen_input = NULL;
drivers/hid/wacom_sys.c
2237
if ((wacom->wacom_wac.features.quirks & WACOM_QUIRK_BATTERY) &&
drivers/hid/wacom_sys.c
2241
else if (!(wacom->wacom_wac.features.quirks & WACOM_QUIRK_BATTERY) &&
drivers/hid/wacom_sys.c
2266
struct wacom_wac *wacom_wac = &wacom->wacom_wac;
drivers/hid/wacom_sys.c
2267
struct wacom_features *features = &wacom_wac->features;
drivers/hid/wacom_sys.c
228
struct wacom_features *features = &wacom->wacom_wac.features;
drivers/hid/wacom_sys.c
2312
snprintf(wacom_wac->name, sizeof(wacom_wac->name), "%s%s",
drivers/hid/wacom_sys.c
2316
snprintf(wacom_wac->pen_name, sizeof(wacom_wac->pen_name),
drivers/hid/wacom_sys.c
2318
snprintf(wacom_wac->touch_name, sizeof(wacom_wac->touch_name),
drivers/hid/wacom_sys.c
2320
snprintf(wacom_wac->pad_name, sizeof(wacom_wac->pad_name),
drivers/hid/wacom_sys.c
2335
wacom->wacom_wac.pen_input = NULL;
drivers/hid/wacom_sys.c
2336
wacom->wacom_wac.touch_input = NULL;
drivers/hid/wacom_sys.c
2337
wacom->wacom_wac.pad_input = NULL;
drivers/hid/wacom_sys.c
2340
static void wacom_set_shared_values(struct wacom_wac *wacom_wac)
drivers/hid/wacom_sys.c
2342
if (wacom_wac->features.device_type & WACOM_DEVICETYPE_TOUCH) {
drivers/hid/wacom_sys.c
2343
wacom_wac->shared->type = wacom_wac->features.type;
drivers/hid/wacom_sys.c
2344
wacom_wac->shared->touch_input = wacom_wac->touch_input;
drivers/hid/wacom_sys.c
2347
if (wacom_wac->has_mute_touch_switch) {
drivers/hid/wacom_sys.c
2348
wacom_wac->shared->has_mute_touch_switch = true;
drivers/hid/wacom_sys.c
2354
if (wacom_wac->is_soft_touch_switch)
drivers/hid/wacom_sys.c
2355
wacom_wac->shared->is_touch_on = true;
drivers/hid/wacom_sys.c
2358
if (wacom_wac->shared->has_mute_touch_switch &&
drivers/hid/wacom_sys.c
2359
wacom_wac->shared->touch_input) {
drivers/hid/wacom_sys.c
2360
set_bit(EV_SW, wacom_wac->shared->touch_input->evbit);
drivers/hid/wacom_sys.c
2361
input_set_capability(wacom_wac->shared->touch_input, EV_SW,
drivers/hid/wacom_sys.c
2368
struct wacom_wac *wacom_wac = &wacom->wacom_wac;
drivers/hid/wacom_sys.c
2369
struct wacom_features *features = &wacom_wac->features;
drivers/hid/wacom_sys.c
238
wacom->wacom_wac.mode_report = field->report->id;
drivers/hid/wacom_sys.c
239
wacom->wacom_wac.mode_value = 2;
drivers/hid/wacom_sys.c
2461
if (wacom->wacom_wac.features.device_type & WACOM_DEVICETYPE_PAD) {
drivers/hid/wacom_sys.c
2493
wacom_set_shared_values(wacom_wac);
drivers/hid/wacom_sys.c
2509
struct wacom_wac *wacom_wac = &wacom->wacom_wac;
drivers/hid/wacom_sys.c
2512
struct wacom_wac *wacom_wac1, *wacom_wac2;
drivers/hid/wacom_sys.c
2528
wacom_wac1 = &(wacom1->wacom_wac);
drivers/hid/wacom_sys.c
2534
wacom_wac2 = &(wacom2->wacom_wac);
drivers/hid/wacom_sys.c
2537
if (wacom_wac->pid == 0) {
drivers/hid/wacom_sys.c
2543
wacom_wac->pid);
drivers/hid/wacom_sys.c
2547
id->product == wacom_wac->pid)
drivers/hid/wacom_sys.c
2561
wacom_wac1->pid = wacom_wac->pid;
drivers/hid/wacom_sys.c
2573
wacom_wac2->pid = wacom_wac->pid;
drivers/hid/wacom_sys.c
2580
if (strscpy(wacom_wac->name, wacom_wac1->name,
drivers/hid/wacom_sys.c
2581
sizeof(wacom_wac->name)) < 0) {
drivers/hid/wacom_sys.c
2666
remote->remotes[index].input->name = wacom->wacom_wac.pad_name;
drivers/hid/wacom_sys.c
2674
&wacom->wacom_wac);
drivers/hid/wacom_sys.c
2750
wacom_schedule_work(&wacom->wacom_wac, WACOM_WORKER_REMOTE);
drivers/hid/wacom_sys.c
2781
struct wacom_shared *shared = wacom->wacom_wac.shared;
drivers/hid/wacom_sys.c
2784
bool is_direct = wacom->wacom_wac.is_direct_mode;
drivers/hid/wacom_sys.c
2791
wacom1->wacom_wac.has_mode_change = true;
drivers/hid/wacom_sys.c
2792
wacom1->wacom_wac.is_direct_mode = is_direct;
drivers/hid/wacom_sys.c
2799
wacom2->wacom_wac.has_mode_change = true;
drivers/hid/wacom_sys.c
2800
wacom2->wacom_wac.is_direct_mode = is_direct;
drivers/hid/wacom_sys.c
2822
struct wacom_wac *wacom_wac;
drivers/hid/wacom_sys.c
2841
wacom_wac = &wacom->wacom_wac;
drivers/hid/wacom_sys.c
2842
wacom_wac->features = *((struct wacom_features *)id->driver_data);
drivers/hid/wacom_sys.c
2843
features = &wacom_wac->features;
drivers/hid/wacom_sys.c
2848
wacom_wac->hid_data.inputmode = -1;
drivers/hid/wacom_sys.c
2849
wacom_wac->mode_report = -1;
drivers/hid/wacom_sys.c
2892
wacom_wac->probe_complete = true;
drivers/hid/wacom_sys.c
2899
struct wacom_wac *wacom_wac = &wacom->wacom_wac;
drivers/hid/wacom_sys.c
2900
struct wacom_features *features = &wacom_wac->features;
drivers/hid/wacom_sys.c
2920
if (wacom->wacom_wac.features.type != REMOTE)
drivers/hid/wacom_sys.c
311
struct wacom_features *features = &wacom->wacom_wac.features;
drivers/hid/wacom_sys.c
312
struct hid_data *hid_data = &wacom->wacom_wac.hid_data;
drivers/hid/wacom_sys.c
365
wacom->wacom_wac.mode_report = field->report->id;
drivers/hid/wacom_sys.c
366
wacom->wacom_wac.mode_value = 0;
drivers/hid/wacom_sys.c
371
wacom->wacom_wac.mode_report = field->report->id;
drivers/hid/wacom_sys.c
372
wacom->wacom_wac.mode_value = 2;
drivers/hid/wacom_sys.c
380
wacom->wacom_wac.mode_report = field->report->id;
drivers/hid/wacom_sys.c
381
wacom->wacom_wac.mode_value = 0;
drivers/hid/wacom_sys.c
444
struct wacom_features *features = &wacom->wacom_wac.features;
drivers/hid/wacom_sys.c
500
struct wacom_wac *wacom_wac = &wacom->wacom_wac;
drivers/hid/wacom_sys.c
504
if (wacom_wac->has_mode_change) {
drivers/hid/wacom_sys.c
505
if (wacom_wac->is_direct_mode)
drivers/hid/wacom_sys.c
513
input_mt_init_slots(wacom_wac->touch_input,
drivers/hid/wacom_sys.c
514
wacom_wac->features.touch_max,
drivers/hid/wacom_sys.c
517
input_mt_init_slots(wacom_wac->touch_input,
drivers/hid/wacom_sys.c
518
wacom_wac->features.touch_max,
drivers/hid/wacom_sys.c
565
struct hid_data *hid_data = &wacom->wacom_wac.hid_data;
drivers/hid/wacom_sys.c
582
struct wacom_wac *wacom_wac)
drivers/hid/wacom_sys.c
590
if (wacom_wac->mode_report < 0)
drivers/hid/wacom_sys.c
594
r = re->report_id_hash[wacom_wac->mode_report];
drivers/hid/wacom_sys.c
605
rep_data[0] = wacom_wac->mode_report;
drivers/hid/wacom_sys.c
606
rep_data[1] = wacom_wac->mode_value;
drivers/hid/wacom_sys.c
614
rep_data[1] != wacom_wac->mode_report &&
drivers/hid/wacom_sys.c
644
wacom->wacom_wac.bt_high_speed = speed;
drivers/hid/wacom_sys.c
658
wacom->wacom_wac.bt_features &= ~0x20;
drivers/hid/wacom_sys.c
660
wacom->wacom_wac.bt_features |= 0x20;
drivers/hid/wacom_sys.c
663
rep_data[1] = wacom->wacom_wac.bt_features;
drivers/hid/wacom_sys.c
668
wacom->wacom_wac.bt_high_speed = speed;
drivers/hid/wacom_sys.c
685
struct wacom_wac *wacom_wac = &wacom->wacom_wac;
drivers/hid/wacom_sys.c
686
struct wacom_features *features = &wacom_wac->features;
drivers/hid/wacom_sys.c
695
wacom_wac->mode_report = 3;
drivers/hid/wacom_sys.c
696
wacom_wac->mode_value = 4;
drivers/hid/wacom_sys.c
698
wacom_wac->mode_report = 18;
drivers/hid/wacom_sys.c
699
wacom_wac->mode_value = 2;
drivers/hid/wacom_sys.c
701
wacom_wac->mode_report = 131;
drivers/hid/wacom_sys.c
702
wacom_wac->mode_value = 2;
drivers/hid/wacom_sys.c
704
wacom_wac->mode_report = 2;
drivers/hid/wacom_sys.c
705
wacom_wac->mode_value = 2;
drivers/hid/wacom_sys.c
709
wacom_wac->mode_report = 2;
drivers/hid/wacom_sys.c
710
wacom_wac->mode_value = 2;
drivers/hid/wacom_sys.c
715
wacom_set_device_mode(hdev, wacom_wac);
drivers/hid/wacom_sys.c
767
struct wacom_features *features = &wacom->wacom_wac.features;
drivers/hid/wacom_sys.c
769
struct wacom_features *sibling_features = &sibling_wacom->wacom_wac.features;
drivers/hid/wacom_sys.c
868
struct wacom_wac *wacom_wac = &wacom->wacom_wac;
drivers/hid/wacom_sys.c
870
if (wacom_wac->shared) {
drivers/hid/wacom_sys.c
871
data = container_of(wacom_wac->shared, struct wacom_hdev_data,
drivers/hid/wacom_sys.c
874
if (wacom_wac->shared->touch == wacom->hdev)
drivers/hid/wacom_sys.c
875
wacom_wac->shared->touch = NULL;
drivers/hid/wacom_sys.c
876
else if (wacom_wac->shared->pen == wacom->hdev)
drivers/hid/wacom_sys.c
877
wacom_wac->shared->pen = NULL;
drivers/hid/wacom_sys.c
880
wacom_wac->shared = NULL;
drivers/hid/wacom_sys.c
887
struct wacom_wac *wacom_wac = &wacom->wacom_wac;
drivers/hid/wacom_sys.c
908
wacom_wac->shared = &data->shared;
drivers/hid/wacom_sys.c
914
if (wacom_wac->features.device_type & WACOM_DEVICETYPE_TOUCH)
drivers/hid/wacom_sys.c
915
wacom_wac->shared->touch = hdev;
drivers/hid/wacom_sys.c
916
else if (wacom_wac->features.device_type & WACOM_DEVICETYPE_PEN)
drivers/hid/wacom_sys.c
917
wacom_wac->shared->pen = hdev;
drivers/hid/wacom_sys.c
932
if (wacom->wacom_wac.features.type == REMOTE)
drivers/hid/wacom_sys.c
935
if (wacom->wacom_wac.pid) { /* wireless connected */
drivers/hid/wacom_sys.c
939
else if (wacom->wacom_wac.features.type == INTUOSP2_BT) {
drivers/hid/wacom_sys.c
947
if (wacom->wacom_wac.features.type == HID_GENERIC) {
drivers/hid/wacom_sys.c
952
} else if ((wacom->wacom_wac.features.type >= INTUOS5S &&
drivers/hid/wacom_sys.c
953
wacom->wacom_wac.features.type <= INTUOSPL)) {
drivers/hid/wacom_sys.c
965
if (wacom->wacom_wac.pid) {
drivers/hid/wacom_sys.c
973
else if (wacom->wacom_wac.features.type == INTUOSP2_BT) {
drivers/hid/wacom_sys.c
986
if (wacom->wacom_wac.features.type == WACOM_21UX2 ||
drivers/hid/wacom_sys.c
987
wacom->wacom_wac.features.type == WACOM_24HD)
drivers/hid/wacom_wac.c
1022
static int wacom_intuos_irq(struct wacom_wac *wacom)
drivers/hid/wacom_wac.c
1059
static int wacom_remote_irq(struct wacom_wac *wacom_wac, size_t len)
drivers/hid/wacom_wac.c
1061
unsigned char *data = wacom_wac->data;
drivers/hid/wacom_wac.c
1063
struct wacom *wacom = container_of(wacom_wac, struct wacom, wacom_wac);
drivers/hid/wacom_wac.c
1077
wacom_wac->id[0] = PAD_DEVICE_ID;
drivers/hid/wacom_wac.c
111
static void wacom_notify_battery(struct wacom_wac *wacom_wac,
drivers/hid/wacom_wac.c
1149
static void wacom_remote_status_irq(struct wacom_wac *wacom_wac, size_t len)
drivers/hid/wacom_wac.c
115
struct wacom *wacom = container_of(wacom_wac, struct wacom, wacom_wac);
drivers/hid/wacom_wac.c
1151
struct wacom *wacom = container_of(wacom_wac, struct wacom, wacom_wac);
drivers/hid/wacom_wac.c
1152
unsigned char *data = wacom_wac->data;
drivers/hid/wacom_wac.c
117
bool has_quirk = wacom_wac->features.quirks & WACOM_QUIRK_BATTERY;
drivers/hid/wacom_wac.c
1181
wacom_schedule_work(wacom_wac, WACOM_WORKER_REMOTE);
drivers/hid/wacom_wac.c
1192
static void wacom_intuos_bt_process_data(struct wacom_wac *wacom,
drivers/hid/wacom_wac.c
120
wacom_schedule_work(wacom_wac, WACOM_WORKER_BATTERY);
drivers/hid/wacom_wac.c
1203
static int wacom_intuos_bt_irq(struct wacom_wac *wacom, size_t len)
drivers/hid/wacom_wac.c
1249
static int wacom_wac_finger_count_touches(struct wacom_wac *wacom)
drivers/hid/wacom_wac.c
126
static int wacom_penpartner_irq(struct wacom_wac *wacom)
drivers/hid/wacom_wac.c
1273
static void wacom_intuos_pro2_bt_pen(struct wacom_wac *wacom)
drivers/hid/wacom_wac.c
1406
static void wacom_intuos_pro2_bt_touch(struct wacom_wac *wacom)
drivers/hid/wacom_wac.c
1473
static void wacom_intuos_pro2_bt_pad(struct wacom_wac *wacom)
drivers/hid/wacom_wac.c
1503
static void wacom_intuos_pro2_bt_battery(struct wacom_wac *wacom)
drivers/hid/wacom_wac.c
1514
static void wacom_intuos_gen3_bt_pad(struct wacom_wac *wacom)
drivers/hid/wacom_wac.c
1530
static void wacom_intuos_gen3_bt_battery(struct wacom_wac *wacom)
drivers/hid/wacom_wac.c
1541
static int wacom_intuos_pro2_bt_irq(struct wacom_wac *wacom, size_t len)
drivers/hid/wacom_wac.c
1564
static int wacom_24hdt_irq(struct wacom_wac *wacom)
drivers/hid/wacom_wac.c
1635
static int wacom_mt_touch(struct wacom_wac *wacom)
drivers/hid/wacom_wac.c
1686
static int wacom_tpc_mt_touch(struct wacom_wac *wacom)
drivers/hid/wacom_wac.c
170
static int wacom_pl_irq(struct wacom_wac *wacom)
drivers/hid/wacom_wac.c
1714
static int wacom_tpc_single_touch(struct wacom_wac *wacom, size_t len)
drivers/hid/wacom_wac.c
1750
static int wacom_tpc_pen(struct wacom_wac *wacom)
drivers/hid/wacom_wac.c
1780
static int wacom_tpc_irq(struct wacom_wac *wacom, size_t len)
drivers/hid/wacom_wac.c
1886
struct wacom_wac *wacom_wac = &wacom->wacom_wac;
drivers/hid/wacom_wac.c
1887
struct wacom_features *features = &wacom_wac->features;
drivers/hid/wacom_wac.c
1944
struct wacom_wac *wacom_wac = &wacom->wacom_wac;
drivers/hid/wacom_wac.c
1950
wacom_wac->hid_data.bat_status = POWER_SUPPLY_STATUS_UNKNOWN;
drivers/hid/wacom_wac.c
1954
wacom_wac->hid_data.battery_capacity = value;
drivers/hid/wacom_wac.c
1955
wacom_wac->hid_data.bat_connected = 1;
drivers/hid/wacom_wac.c
1956
wacom_wac->hid_data.bat_status = WACOM_POWER_SUPPLY_STATUS_AUTO;
drivers/hid/wacom_wac.c
1958
wacom_wac->features.quirks |= WACOM_QUIRK_BATTERY;
drivers/hid/wacom_wac.c
1962
wacom_wac->hid_data.battery_capacity = value;
drivers/hid/wacom_wac.c
1963
wacom_wac->hid_data.bat_connected = 1;
drivers/hid/wacom_wac.c
1964
wacom_wac->hid_data.bat_status = WACOM_POWER_SUPPLY_STATUS_AUTO;
drivers/hid/wacom_wac.c
1965
wacom_wac->features.quirks |= WACOM_QUIRK_BATTERY;
drivers/hid/wacom_wac.c
1968
wacom_wac->hid_data.bat_charging = value;
drivers/hid/wacom_wac.c
1969
wacom_wac->hid_data.ps_connected = value;
drivers/hid/wacom_wac.c
1970
wacom_wac->hid_data.bat_connected = 1;
drivers/hid/wacom_wac.c
1971
wacom_wac->hid_data.bat_status = WACOM_POWER_SUPPLY_STATUS_AUTO;
drivers/hid/wacom_wac.c
1972
wacom_wac->features.quirks |= WACOM_QUIRK_BATTERY;
drivers/hid/wacom_wac.c
1987
struct wacom_wac *wacom_wac = &wacom->wacom_wac;
drivers/hid/wacom_wac.c
1989
int status = wacom_wac->hid_data.bat_status;
drivers/hid/wacom_wac.c
1990
int capacity = wacom_wac->hid_data.battery_capacity;
drivers/hid/wacom_wac.c
1991
bool charging = wacom_wac->hid_data.bat_charging;
drivers/hid/wacom_wac.c
1992
bool connected = wacom_wac->hid_data.bat_connected;
drivers/hid/wacom_wac.c
1993
bool powered = wacom_wac->hid_data.ps_connected;
drivers/hid/wacom_wac.c
1995
wacom_notify_battery(wacom_wac, status, capacity, charging,
drivers/hid/wacom_wac.c
2003
struct wacom_wac *wacom_wac = &wacom->wacom_wac;
drivers/hid/wacom_wac.c
2004
struct wacom_features *features = &wacom_wac->features;
drivers/hid/wacom_wac.c
2005
struct input_dev *input = wacom_wac->pad_input;
drivers/hid/wacom_wac.c
2038
wacom_wac->is_soft_touch_switch = true;
drivers/hid/wacom_wac.c
2049
wacom_wac->has_mute_touch_switch = true;
drivers/hid/wacom_wac.c
2063
wacom_wac->relring_count++;
drivers/hid/wacom_wac.c
2064
if (wacom_wac->relring_count == 1) {
drivers/hid/wacom_wac.c
2068
else if (wacom_wac->relring_count == 2) {
drivers/hid/wacom_wac.c
2073
wacom_wac->absring_count++;
drivers/hid/wacom_wac.c
2074
if (wacom_wac->absring_count == 1)
drivers/hid/wacom_wac.c
2076
else if (wacom_wac->absring_count == 2)
drivers/hid/wacom_wac.c
2105
if (!wacom_wac->has_mode_change) {
drivers/hid/wacom_wac.c
2106
wacom_wac->has_mode_change = true;
drivers/hid/wacom_wac.c
2107
wacom_wac->is_direct_mode = true;
drivers/hid/wacom_wac.c
2128
struct wacom_wac *wacom_wac = &wacom->wacom_wac;
drivers/hid/wacom_wac.c
2129
struct input_dev *input = wacom_wac->pad_input;
drivers/hid/wacom_wac.c
2130
struct wacom_features *features = &wacom_wac->features;
drivers/hid/wacom_wac.c
2147
wacom_wac->hid_data.inrange_state |= value;
drivers/hid/wacom_wac.c
2156
if (wacom_wac->shared->touch_input) {
drivers/hid/wacom_wac.c
2157
bool *is_touch_on = &wacom_wac->shared->is_touch_on;
drivers/hid/wacom_wac.c
2164
input_report_switch(wacom_wac->shared->touch_input,
drivers/hid/wacom_wac.c
2166
input_sync(wacom_wac->shared->touch_input);
drivers/hid/wacom_wac.c
2212
ring_value = &wacom_wac->hid_data.ring_value;
drivers/hid/wacom_wac.c
2223
ring_value = &wacom_wac->hid_data.ring2_value;
drivers/hid/wacom_wac.c
2256
if (wacom_wac->is_direct_mode != value) {
drivers/hid/wacom_wac.c
2257
wacom_wac->is_direct_mode = value;
drivers/hid/wacom_wac.c
2258
wacom_schedule_work(&wacom->wacom_wac, WACOM_WORKER_MODE_CHANGE);
drivers/hid/wacom_wac.c
2275
wacom_wac->hid_data.pad_input_event_flag = true;
drivers/hid/wacom_wac.c
2283
struct wacom_wac *wacom_wac = &wacom->wacom_wac;
drivers/hid/wacom_wac.c
2285
wacom_wac->hid_data.inrange_state = 0;
drivers/hid/wacom_wac.c
2292
struct wacom_wac *wacom_wac = &wacom->wacom_wac;
drivers/hid/wacom_wac.c
2293
struct input_dev *input = wacom_wac->pad_input;
drivers/hid/wacom_wac.c
2294
bool active = wacom_wac->hid_data.inrange_state != 0;
drivers/hid/wacom_wac.c
2297
if (wacom_wac->hid_data.pad_input_event_flag) {
drivers/hid/wacom_wac.c
2301
wacom_wac->hid_data.pad_input_event_flag = false;
drivers/hid/wacom_wac.c
2305
static void wacom_set_barrel_switch3_usage(struct wacom_wac *wacom_wac)
drivers/hid/wacom_wac.c
2307
struct input_dev *input = wacom_wac->pen_input;
drivers/hid/wacom_wac.c
2308
struct wacom_features *features = &wacom_wac->features;
drivers/hid/wacom_wac.c
231
static int wacom_ptu_irq(struct wacom_wac *wacom)
drivers/hid/wacom_wac.c
2311
wacom_wac->hid_data.barrelswitch &&
drivers/hid/wacom_wac.c
2312
wacom_wac->hid_data.barrelswitch2 &&
drivers/hid/wacom_wac.c
2313
wacom_wac->hid_data.serialhi &&
drivers/hid/wacom_wac.c
2314
!wacom_wac->hid_data.barrelswitch3) {
drivers/hid/wacom_wac.c
2324
struct wacom_wac *wacom_wac = &wacom->wacom_wac;
drivers/hid/wacom_wac.c
2325
struct wacom_features *features = &wacom_wac->features;
drivers/hid/wacom_wac.c
2326
struct input_dev *input = wacom_wac->pen_input;
drivers/hid/wacom_wac.c
2368
wacom_wac->hid_data.barrelswitch = true;
drivers/hid/wacom_wac.c
2369
wacom_set_barrel_switch3_usage(wacom_wac);
drivers/hid/wacom_wac.c
2373
wacom_wac->hid_data.barrelswitch2 = true;
drivers/hid/wacom_wac.c
2374
wacom_set_barrel_switch3_usage(wacom_wac);
drivers/hid/wacom_wac.c
2389
wacom_wac->hid_data.serialhi = true;
drivers/hid/wacom_wac.c
2390
wacom_set_barrel_switch3_usage(wacom_wac);
drivers/hid/wacom_wac.c
2398
wacom_wac->hid_data.barrelswitch3 = true;
drivers/hid/wacom_wac.c
2403
wacom_wac->hid_data.sequence_number = -1;
drivers/hid/wacom_wac.c
2412
struct wacom_wac *wacom_wac = &wacom->wacom_wac;
drivers/hid/wacom_wac.c
2413
struct wacom_features *features = &wacom_wac->features;
drivers/hid/wacom_wac.c
2414
struct input_dev *input = wacom_wac->pen_input;
drivers/hid/wacom_wac.c
2417
if (wacom_wac->is_invalid_bt_frame)
drivers/hid/wacom_wac.c
2431
wacom_wac->hid_data.inrange_state = value;
drivers/hid/wacom_wac.c
2433
wacom_wac->hid_data.sense_state = value;
drivers/hid/wacom_wac.c
2436
wacom_wac->hid_data.eraser |= value;
drivers/hid/wacom_wac.c
2439
wacom_wac->hid_data.eraser |= value;
drivers/hid/wacom_wac.c
2442
wacom_wac->hid_data.tipswitch |= value;
drivers/hid/wacom_wac.c
2445
wacom_wac->hid_data.barrelswitch = value;
drivers/hid/wacom_wac.c
2448
wacom_wac->hid_data.barrelswitch2 = value;
drivers/hid/wacom_wac.c
2452
wacom_wac->serial[0] = (wacom_wac->serial[0] & ~0xFFFFFFFFULL);
drivers/hid/wacom_wac.c
2453
wacom_wac->serial[0] |= wacom_s32tou(value, field->report_size);
drivers/hid/wacom_wac.c
2458
if (!wacom_is_art_pen(wacom_wac->id[0])) return;
drivers/hid/wacom_wac.c
2468
wacom_wac->hid_data.sense_state = value;
drivers/hid/wacom_wac.c
2474
wacom_wac->serial[0] = (wacom_wac->serial[0] & 0xFFFFFFFF);
drivers/hid/wacom_wac.c
2475
wacom_wac->serial[0] |= ((__u64)raw_value) << 32;
drivers/hid/wacom_wac.c
2482
wacom_wac->id[0] |= raw_value & 0xFFFFF;
drivers/hid/wacom_wac.c
2494
wacom_wac->id[0] |= wacom_s32tou(value, field->report_size);
drivers/hid/wacom_wac.c
2525
wacom_wac->is_invalid_bt_frame = !value;
drivers/hid/wacom_wac.c
2528
wacom_wac->hid_data.barrelswitch3 = value;
drivers/hid/wacom_wac.c
2531
if (wacom_wac->hid_data.sequence_number != value &&
drivers/hid/wacom_wac.c
2532
wacom_wac->hid_data.sequence_number >= 0) {
drivers/hid/wacom_wac.c
2534
int drop_count = (value - wacom_wac->hid_data.sequence_number) % sequence_size;
drivers/hid/wacom_wac.c
2537
wacom_wac->hid_data.sequence_number = value + 1;
drivers/hid/wacom_wac.c
2538
if (wacom_wac->hid_data.sequence_number > field->logical_maximum)
drivers/hid/wacom_wac.c
2539
wacom_wac->hid_data.sequence_number = field->logical_minimum;
drivers/hid/wacom_wac.c
2546
if (!usage->type || delay_pen_events(wacom_wac))
drivers/hid/wacom_wac.c
2550
if (wacom_wac->hid_data.inrange_state)
drivers/hid/wacom_wac.c
2552
else if (wacom_wac->shared->stylus_in_proximity && !wacom_wac->hid_data.sense_state)
drivers/hid/wacom_wac.c
2560
struct wacom_wac *wacom_wac = &wacom->wacom_wac;
drivers/hid/wacom_wac.c
2562
wacom_wac->is_invalid_bt_frame = false;
drivers/hid/wacom_wac.c
2570
struct wacom_wac *wacom_wac = &wacom->wacom_wac;
drivers/hid/wacom_wac.c
2571
struct input_dev *input = wacom_wac->pen_input;
drivers/hid/wacom_wac.c
2572
bool range = wacom_wac->hid_data.inrange_state;
drivers/hid/wacom_wac.c
2573
bool sense = wacom_wac->hid_data.sense_state;
drivers/hid/wacom_wac.c
2574
bool entering_range = !wacom_wac->tool[0] && range;
drivers/hid/wacom_wac.c
2576
if (wacom_wac->is_invalid_bt_frame)
drivers/hid/wacom_wac.c
2581
if (wacom_wac->hid_data.eraser)
drivers/hid/wacom_wac.c
2582
wacom_wac->tool[0] = BTN_TOOL_RUBBER;
drivers/hid/wacom_wac.c
2583
else if (wacom_wac->features.quirks & WACOM_QUIRK_AESPEN)
drivers/hid/wacom_wac.c
2584
wacom_wac->tool[0] = BTN_TOOL_PEN;
drivers/hid/wacom_wac.c
2585
else if (wacom_wac->id[0])
drivers/hid/wacom_wac.c
2586
wacom_wac->tool[0] = wacom_intuos_get_tool_type(wacom_wac->id[0]);
drivers/hid/wacom_wac.c
2588
wacom_wac->tool[0] = BTN_TOOL_PEN;
drivers/hid/wacom_wac.c
2592
wacom_wac->shared->stylus_in_proximity = sense;
drivers/hid/wacom_wac.c
2594
if (!delay_pen_events(wacom_wac) && wacom_wac->tool[0]) {
drivers/hid/wacom_wac.c
2595
int id = wacom_wac->id[0];
drivers/hid/wacom_wac.c
2596
if (wacom_wac->features.quirks & WACOM_QUIRK_PEN_BUTTON3) {
drivers/hid/wacom_wac.c
2597
int sw_state = wacom_wac->hid_data.barrelswitch |
drivers/hid/wacom_wac.c
2598
(wacom_wac->hid_data.barrelswitch2 << 1);
drivers/hid/wacom_wac.c
2599
wacom_wac->hid_data.barrelswitch = sw_state == 1;
drivers/hid/wacom_wac.c
260
static int wacom_dtu_irq(struct wacom_wac *wacom)
drivers/hid/wacom_wac.c
2600
wacom_wac->hid_data.barrelswitch2 = sw_state == 2;
drivers/hid/wacom_wac.c
2601
wacom_wac->hid_data.barrelswitch3 = sw_state == 3;
drivers/hid/wacom_wac.c
2603
input_report_key(input, BTN_STYLUS, wacom_wac->hid_data.barrelswitch);
drivers/hid/wacom_wac.c
2604
input_report_key(input, BTN_STYLUS2, wacom_wac->hid_data.barrelswitch2);
drivers/hid/wacom_wac.c
2605
input_report_key(input, BTN_STYLUS3, wacom_wac->hid_data.barrelswitch3);
drivers/hid/wacom_wac.c
2611
if (wacom_wac->serial[0] >> 52 == 1)
drivers/hid/wacom_wac.c
2620
wacom_wac->hid_data.tipswitch);
drivers/hid/wacom_wac.c
2621
input_report_key(input, wacom_wac->tool[0], sense);
drivers/hid/wacom_wac.c
2622
if (wacom_wac->serial[0]) {
drivers/hid/wacom_wac.c
2628
__u32 serial_lo = wacom_wac->serial[0] & 0xFFFFFFFFu;
drivers/hid/wacom_wac.c
2629
__u32 serial_hi = wacom_wac->serial[0] >> 32;
drivers/hid/wacom_wac.c
2634
wacom_wac->hid_data.tipswitch = false;
drivers/hid/wacom_wac.c
2635
wacom_wac->hid_data.eraser = false;
drivers/hid/wacom_wac.c
2641
if (wacom_wac->features.quirks & WACOM_QUIRK_AESPEN) {
drivers/hid/wacom_wac.c
2650
wacom_wac->tool[0] = 0;
drivers/hid/wacom_wac.c
2651
wacom_wac->id[0] = 0;
drivers/hid/wacom_wac.c
2652
wacom_wac->serial[0] = 0;
drivers/hid/wacom_wac.c
2660
struct wacom_wac *wacom_wac = &wacom->wacom_wac;
drivers/hid/wacom_wac.c
2661
struct input_dev *input = wacom_wac->touch_input;
drivers/hid/wacom_wac.c
2662
unsigned touch_max = wacom_wac->features.touch_max;
drivers/hid/wacom_wac.c
2690
wacom_wac->hid_data.cc_report = field->report->id;
drivers/hid/wacom_wac.c
2691
wacom_wac->hid_data.cc_index = field->index;
drivers/hid/wacom_wac.c
2692
wacom_wac->hid_data.cc_value_index = usage->usage_index;
drivers/hid/wacom_wac.c
2710
static void wacom_wac_finger_slot(struct wacom_wac *wacom_wac,
drivers/hid/wacom_wac.c
2713
struct hid_data *hid_data = &wacom_wac->hid_data;
drivers/hid/wacom_wac.c
2714
bool mt = wacom_wac->features.touch_max > 1;
drivers/hid/wacom_wac.c
2716
bool prox = touch_down && report_touch_events(wacom_wac);
drivers/hid/wacom_wac.c
2718
if (touch_is_muted(wacom_wac)) {
drivers/hid/wacom_wac.c
2719
if (!wacom_wac->shared->touch_down)
drivers/hid/wacom_wac.c
2724
wacom_wac->hid_data.num_received++;
drivers/hid/wacom_wac.c
2725
if (wacom_wac->hid_data.num_received > wacom_wac->hid_data.num_expected)
drivers/hid/wacom_wac.c
2770
struct wacom_wac *wacom_wac = &wacom->wacom_wac;
drivers/hid/wacom_wac.c
2772
struct wacom_features *features = &wacom->wacom_wac.features;
drivers/hid/wacom_wac.c
2774
if (touch_is_muted(wacom_wac) && !wacom_wac->shared->touch_down)
drivers/hid/wacom_wac.c
2777
if (wacom_wac->is_invalid_bt_frame)
drivers/hid/wacom_wac.c
2782
wacom_wac->hid_data.confidence = value;
drivers/hid/wacom_wac.c
2785
wacom_wac->hid_data.x = value;
drivers/hid/wacom_wac.c
2788
wacom_wac->hid_data.y = value;
drivers/hid/wacom_wac.c
2791
wacom_wac->hid_data.width = value;
drivers/hid/wacom_wac.c
2794
wacom_wac->hid_data.height = value;
drivers/hid/wacom_wac.c
2797
wacom_wac->hid_data.id = value;
drivers/hid/wacom_wac.c
2800
wacom_wac->hid_data.tipswitch = value;
drivers/hid/wacom_wac.c
2803
wacom_wac->is_invalid_bt_frame = !value;
drivers/hid/wacom_wac.c
2816
if (equivalent_usage == wacom_wac->hid_data.last_slot_field)
drivers/hid/wacom_wac.c
2817
wacom_wac_finger_slot(wacom_wac, wacom_wac->touch_input);
drivers/hid/wacom_wac.c
2825
struct wacom_wac *wacom_wac = &wacom->wacom_wac;
drivers/hid/wacom_wac.c
2826
struct hid_data* hid_data = &wacom_wac->hid_data;
drivers/hid/wacom_wac.c
2829
if (touch_is_muted(wacom_wac) && !wacom_wac->shared->touch_down)
drivers/hid/wacom_wac.c
2832
wacom_wac->is_invalid_bt_frame = false;
drivers/hid/wacom_wac.c
2879
hid_data->num_expected = wacom_wac->features.touch_max;
drivers/hid/wacom_wac.c
2888
struct wacom_wac *wacom_wac = &wacom->wacom_wac;
drivers/hid/wacom_wac.c
2889
struct input_dev *input = wacom_wac->touch_input;
drivers/hid/wacom_wac.c
2890
unsigned touch_max = wacom_wac->features.touch_max;
drivers/hid/wacom_wac.c
2893
if (wacom_wac->hid_data.num_expected == 0)
drivers/hid/wacom_wac.c
290
static int wacom_dtus_irq(struct wacom_wac *wacom)
drivers/hid/wacom_wac.c
2900
if (wacom_wac->hid_data.num_received < wacom_wac->hid_data.num_expected)
drivers/hid/wacom_wac.c
2907
wacom_wac->hid_data.num_received = 0;
drivers/hid/wacom_wac.c
2908
wacom_wac->hid_data.num_expected = 0;
drivers/hid/wacom_wac.c
2911
wacom_wac->shared->touch_down = wacom_wac_finger_count_touches(wacom_wac);
drivers/hid/wacom_wac.c
2918
struct wacom_wac *wacom_wac = &wacom->wacom_wac;
drivers/hid/wacom_wac.c
2919
struct wacom_features *features = &wacom_wac->features;
drivers/hid/wacom_wac.c
2940
if (wacom->wacom_wac.features.type != HID_GENERIC)
drivers/hid/wacom_wac.c
2951
else if (WACOM_PEN_FIELD(field) && wacom->wacom_wac.pen_input)
drivers/hid/wacom_wac.c
2953
else if (WACOM_FINGER_FIELD(field) && wacom->wacom_wac.touch_input)
drivers/hid/wacom_wac.c
3003
else if (WACOM_PEN_FIELD(field) && wacom->wacom_wac.pen_input)
drivers/hid/wacom_wac.c
3005
else if (WACOM_FINGER_FIELD(field) && wacom->wacom_wac.touch_input)
drivers/hid/wacom_wac.c
3014
struct wacom_wac *wacom_wac = &wacom->wacom_wac;
drivers/hid/wacom_wac.c
3021
if (wacom_wac->features.type != HID_GENERIC)
drivers/hid/wacom_wac.c
3039
if (pad_in_hid_field && wacom_wac->pad_input)
drivers/hid/wacom_wac.c
3041
if (pen_in_hid_field && wacom_wac->pen_input)
drivers/hid/wacom_wac.c
3043
if (finger_in_hid_field && wacom_wac->touch_input)
drivers/hid/wacom_wac.c
3059
if (true_pad && wacom_wac->pad_input)
drivers/hid/wacom_wac.c
3063
static int wacom_bpt_touch(struct wacom_wac *wacom)
drivers/hid/wacom_wac.c
3104
static void wacom_bpt3_touch_msg(struct wacom_wac *wacom, unsigned char *data)
drivers/hid/wacom_wac.c
3147
static void wacom_bpt3_button_msg(struct wacom_wac *wacom, unsigned char *data)
drivers/hid/wacom_wac.c
3163
static int wacom_bpt3_touch(struct wacom_wac *wacom)
drivers/hid/wacom_wac.c
3194
static int wacom_bpt_pen(struct wacom_wac *wacom)
drivers/hid/wacom_wac.c
3269
static int wacom_bpt_irq(struct wacom_wac *wacom, size_t len)
drivers/hid/wacom_wac.c
3286
static void wacom_bamboo_pad_pen_event(struct wacom_wac *wacom,
drivers/hid/wacom_wac.c
3312
static int wacom_bamboo_pad_touch_event(struct wacom_wac *wacom,
drivers/hid/wacom_wac.c
3352
static int wacom_bamboo_pad_irq(struct wacom_wac *wacom, size_t len)
drivers/hid/wacom_wac.c
3370
static int wacom_wireless_irq(struct wacom_wac *wacom, size_t len)
drivers/hid/wacom_wac.c
341
static int wacom_graphire_irq(struct wacom_wac *wacom)
drivers/hid/wacom_wac.c
3412
static int wacom_status_irq(struct wacom_wac *wacom_wac, size_t len)
drivers/hid/wacom_wac.c
3414
struct wacom *wacom = container_of(wacom_wac, struct wacom, wacom_wac);
drivers/hid/wacom_wac.c
3415
struct wacom_features *features = &wacom_wac->features;
drivers/hid/wacom_wac.c
3416
unsigned char *data = wacom_wac->data;
drivers/hid/wacom_wac.c
3423
wacom_wac->shared->touch_input &&
drivers/hid/wacom_wac.c
3425
input_report_switch(wacom_wac->shared->touch_input,
drivers/hid/wacom_wac.c
3427
input_sync(wacom_wac->shared->touch_input);
drivers/hid/wacom_wac.c
3435
wacom_notify_battery(wacom_wac, WACOM_POWER_SUPPLY_STATUS_AUTO,
drivers/hid/wacom_wac.c
3441
wacom_notify_battery(wacom_wac, POWER_SUPPLY_STATUS_UNKNOWN, 0, 0, 0, 0);
drivers/hid/wacom_wac.c
3446
void wacom_wac_irq(struct wacom_wac *wacom_wac, size_t len)
drivers/hid/wacom_wac.c
3450
switch (wacom_wac->features.type) {
drivers/hid/wacom_wac.c
3452
sync = wacom_penpartner_irq(wacom_wac);
drivers/hid/wacom_wac.c
3456
sync = wacom_pl_irq(wacom_wac);
drivers/hid/wacom_wac.c
3463
sync = wacom_graphire_irq(wacom_wac);
drivers/hid/wacom_wac.c
3467
sync = wacom_ptu_irq(wacom_wac);
drivers/hid/wacom_wac.c
3471
sync = wacom_dtu_irq(wacom_wac);
drivers/hid/wacom_wac.c
3476
sync = wacom_dtus_irq(wacom_wac);
drivers/hid/wacom_wac.c
3496
sync = wacom_intuos_irq(wacom_wac);
drivers/hid/wacom_wac.c
3500
sync = wacom_intuos_bt_irq(wacom_wac, len);
drivers/hid/wacom_wac.c
3505
sync = wacom_24hdt_irq(wacom_wac);
drivers/hid/wacom_wac.c
3515
sync = wacom_bpt3_touch(wacom_wac);
drivers/hid/wacom_wac.c
3516
else if (wacom_wac->data[0] == WACOM_REPORT_USB)
drivers/hid/wacom_wac.c
3517
sync = wacom_status_irq(wacom_wac, len);
drivers/hid/wacom_wac.c
3519
sync = wacom_intuos_irq(wacom_wac);
drivers/hid/wacom_wac.c
3525
sync = wacom_intuos_pro2_bt_irq(wacom_wac, len);
drivers/hid/wacom_wac.c
3534
sync = wacom_tpc_irq(wacom_wac, len);
drivers/hid/wacom_wac.c
3542
if (wacom_wac->data[0] == WACOM_REPORT_USB)
drivers/hid/wacom_wac.c
3543
sync = wacom_status_irq(wacom_wac, len);
drivers/hid/wacom_wac.c
3545
sync = wacom_bpt_irq(wacom_wac, len);
drivers/hid/wacom_wac.c
3549
sync = wacom_bamboo_pad_irq(wacom_wac, len);
drivers/hid/wacom_wac.c
3553
sync = wacom_wireless_irq(wacom_wac, len);
drivers/hid/wacom_wac.c
3558
if (wacom_wac->data[0] == WACOM_REPORT_DEVICE_LIST)
drivers/hid/wacom_wac.c
3559
wacom_remote_status_irq(wacom_wac, len);
drivers/hid/wacom_wac.c
3561
sync = wacom_remote_irq(wacom_wac, len);
drivers/hid/wacom_wac.c
3570
if (wacom_wac->pen_input)
drivers/hid/wacom_wac.c
3571
input_sync(wacom_wac->pen_input);
drivers/hid/wacom_wac.c
3572
if (wacom_wac->touch_input)
drivers/hid/wacom_wac.c
3573
input_sync(wacom_wac->touch_input);
drivers/hid/wacom_wac.c
3574
if (wacom_wac->pad_input)
drivers/hid/wacom_wac.c
3575
input_sync(wacom_wac->pad_input);
drivers/hid/wacom_wac.c
3579
static void wacom_setup_basic_pro_pen(struct wacom_wac *wacom_wac)
drivers/hid/wacom_wac.c
3581
struct input_dev *input_dev = wacom_wac->pen_input;
drivers/hid/wacom_wac.c
3590
0, wacom_wac->features.distance_max, wacom_wac->features.distance_fuzz, 0);
drivers/hid/wacom_wac.c
3593
static void wacom_setup_cintiq(struct wacom_wac *wacom_wac)
drivers/hid/wacom_wac.c
3595
struct input_dev *input_dev = wacom_wac->pen_input;
drivers/hid/wacom_wac.c
3596
struct wacom_features *features = &wacom_wac->features;
drivers/hid/wacom_wac.c
3598
wacom_setup_basic_pro_pen(wacom_wac);
drivers/hid/wacom_wac.c
3612
static void wacom_setup_intuos(struct wacom_wac *wacom_wac)
drivers/hid/wacom_wac.c
3614
struct input_dev *input_dev = wacom_wac->pen_input;
drivers/hid/wacom_wac.c
3618
wacom_setup_cintiq(wacom_wac);
drivers/hid/wacom_wac.c
3635
struct wacom_wac *wacom_wac = &wacom->wacom_wac;
drivers/hid/wacom_wac.c
3636
struct wacom_features *features = &wacom->wacom_wac.features;
drivers/hid/wacom_wac.c
3772
__clear_bit(BTN_TOOL_BRUSH, wacom_wac->pen_input->keybit);
drivers/hid/wacom_wac.c
3773
__clear_bit(BTN_TOOL_PENCIL, wacom_wac->pen_input->keybit);
drivers/hid/wacom_wac.c
3774
__clear_bit(BTN_TOOL_AIRBRUSH, wacom_wac->pen_input->keybit);
drivers/hid/wacom_wac.c
3775
__clear_bit(ABS_Z, wacom_wac->pen_input->absbit);
drivers/hid/wacom_wac.c
3776
__clear_bit(ABS_DISTANCE, wacom_wac->pen_input->absbit);
drivers/hid/wacom_wac.c
3777
__clear_bit(ABS_TILT_X, wacom_wac->pen_input->absbit);
drivers/hid/wacom_wac.c
3778
__clear_bit(ABS_TILT_Y, wacom_wac->pen_input->absbit);
drivers/hid/wacom_wac.c
3779
__clear_bit(ABS_WHEEL, wacom_wac->pen_input->absbit);
drivers/hid/wacom_wac.c
3780
__clear_bit(ABS_MISC, wacom_wac->pen_input->absbit);
drivers/hid/wacom_wac.c
3781
__clear_bit(MSC_SERIAL, wacom_wac->pen_input->mscbit);
drivers/hid/wacom_wac.c
3782
__clear_bit(EV_MSC, wacom_wac->pen_input->evbit);
drivers/hid/wacom_wac.c
3787
struct wacom_wac *wacom_wac)
drivers/hid/wacom_wac.c
3789
struct wacom_features *features = &wacom_wac->features;
drivers/hid/wacom_wac.c
3858
wacom_setup_cintiq(wacom_wac);
drivers/hid/wacom_wac.c
3873
wacom_setup_intuos(wacom_wac);
drivers/hid/wacom_wac.c
3891
wacom_setup_intuos(wacom_wac);
drivers/hid/wacom_wac.c
3932
wacom_setup_basic_pro_pen(wacom_wac);
drivers/hid/wacom_wac.c
3952
struct wacom_wac *wacom_wac)
drivers/hid/wacom_wac.c
3954
struct wacom_features *features = &wacom_wac->features;
drivers/hid/wacom_wac.c
3998
if (wacom_wac->shared->touch->product == 0x361) {
drivers/hid/wacom_wac.c
4004
else if (wacom_wac->shared->touch->product == 0x360) {
drivers/hid/wacom_wac.c
4010
else if (wacom_wac->shared->touch->product == 0x393) {
drivers/hid/wacom_wac.c
4040
if (wacom_wac->shared->touch->product == 0x32C ||
drivers/hid/wacom_wac.c
4041
wacom_wac->shared->touch->product == 0xF6) {
drivers/hid/wacom_wac.c
4044
wacom_wac->has_mute_touch_switch = true;
drivers/hid/wacom_wac.c
4045
wacom_wac->is_soft_touch_switch = true;
drivers/hid/wacom_wac.c
41
static void wacom_force_proxout(struct wacom_wac *wacom_wac)
drivers/hid/wacom_wac.c
4154
if (wacom->wacom_wac.features.type == WACOM_21UX2)
drivers/hid/wacom_wac.c
4159
if (wacom->wacom_wac.features.type == INTUOSP2_BT)
drivers/hid/wacom_wac.c
4172
if (wacom->wacom_wac.features.type == WACOM_24HD)
drivers/hid/wacom_wac.c
4225
struct wacom_wac *wacom_wac)
drivers/hid/wacom_wac.c
4227
struct wacom_features *features = &wacom_wac->features;
drivers/hid/wacom_wac.c
4235
if (features->type == REMOTE && input_dev == wacom_wac->pad_input)
drivers/hid/wacom_wac.c
43
struct input_dev *input = wacom_wac->pen_input;
drivers/hid/wacom_wac.c
45
wacom_wac->shared->stylus_in_proximity = 0;
drivers/hid/wacom_wac.c
496
static void wacom_intuos_schedule_prox_event(struct wacom_wac *wacom_wac)
drivers/hid/wacom_wac.c
498
struct wacom *wacom = container_of(wacom_wac, struct wacom, wacom_wac);
drivers/hid/wacom_wac.c
499
struct wacom_features *features = &wacom_wac->features;
drivers/hid/wacom_wac.c
51
input_report_key(input, wacom_wac->tool[0], 0);
drivers/hid/wacom_wac.c
513
static int wacom_intuos_pad(struct wacom_wac *wacom)
drivers/hid/wacom_wac.c
52
if (wacom_wac->serial[0]) {
drivers/hid/wacom_wac.c
57
wacom_wac->tool[0] = 0;
drivers/hid/wacom_wac.c
58
wacom_wac->id[0] = 0;
drivers/hid/wacom_wac.c
59
wacom_wac->serial[0] = 0;
drivers/hid/wacom_wac.c
67
struct wacom_wac *wacom_wac = &wacom->wacom_wac;
drivers/hid/wacom_wac.c
69
if (!wacom_wac->hid_data.sense_state) {
drivers/hid/wacom_wac.c
734
static void wacom_exit_report(struct wacom_wac *wacom)
drivers/hid/wacom_wac.c
74
wacom_force_proxout(wacom_wac);
drivers/hid/wacom_wac.c
773
static int wacom_intuos_inout(struct wacom_wac *wacom)
drivers/hid/wacom_wac.c
832
static inline bool touch_is_muted(struct wacom_wac *wacom_wac)
drivers/hid/wacom_wac.c
834
return wacom_wac->probe_complete &&
drivers/hid/wacom_wac.c
835
wacom_wac->shared->has_mute_touch_switch &&
drivers/hid/wacom_wac.c
836
!wacom_wac->shared->is_touch_on;
drivers/hid/wacom_wac.c
839
static inline bool report_touch_events(struct wacom_wac *wacom)
drivers/hid/wacom_wac.c
844
static inline bool delay_pen_events(struct wacom_wac *wacom)
drivers/hid/wacom_wac.c
849
static int wacom_intuos_general(struct wacom_wac *wacom)