Lines Matching +full:report +full:- +full:error

1 // SPDX-License-Identifier: GPL-2.0-or-later
9 * - tested with MANTA Warior MM816 and SpeedLink Strike2 SL-6635.
21 #include "hid-ids.h"
26 struct hid_report *report; member
36 left = effect->u.rumble.strong_magnitude; in hid_gaff_play()
37 right = effect->u.rumble.weak_magnitude; in hid_gaff_play()
44 gaff->report->field[0]->value[0] = 0x51; in hid_gaff_play()
45 gaff->report->field[0]->value[1] = 0x0; in hid_gaff_play()
46 gaff->report->field[0]->value[2] = right; in hid_gaff_play()
47 gaff->report->field[0]->value[3] = 0; in hid_gaff_play()
48 gaff->report->field[0]->value[4] = left; in hid_gaff_play()
49 gaff->report->field[0]->value[5] = 0; in hid_gaff_play()
51 hid_hw_request(hid, gaff->report, HID_REQ_SET_REPORT); in hid_gaff_play()
53 gaff->report->field[0]->value[0] = 0xfa; in hid_gaff_play()
54 gaff->report->field[0]->value[1] = 0xfe; in hid_gaff_play()
55 gaff->report->field[0]->value[2] = 0x0; in hid_gaff_play()
56 gaff->report->field[0]->value[4] = 0x0; in hid_gaff_play()
58 hid_hw_request(hid, gaff->report, HID_REQ_SET_REPORT); in hid_gaff_play()
66 struct hid_report *report; in gaff_init() local
69 &hid->report_enum[HID_OUTPUT_REPORT].report_list; in gaff_init()
72 int error; in gaff_init() local
74 if (list_empty(&hid->inputs)) { in gaff_init()
76 return -ENODEV; in gaff_init()
78 hidinput = list_entry(hid->inputs.next, struct hid_input, list); in gaff_init()
79 dev = hidinput->input; in gaff_init()
83 return -ENODEV; in gaff_init()
86 report_ptr = report_ptr->next; in gaff_init()
88 report = list_entry(report_ptr, struct hid_report, list); in gaff_init()
89 if (report->maxfield < 1) { in gaff_init()
90 hid_err(hid, "no fields in the report\n"); in gaff_init()
91 return -ENODEV; in gaff_init()
94 if (report->field[0]->report_count < 6) { in gaff_init()
96 return -ENODEV; in gaff_init()
101 return -ENOMEM; in gaff_init()
103 set_bit(FF_RUMBLE, dev->ffbit); in gaff_init()
105 error = input_ff_create_memless(dev, gaff, hid_gaff_play); in gaff_init()
106 if (error) { in gaff_init()
108 return error; in gaff_init()
111 gaff->report = report; in gaff_init()
112 gaff->report->field[0]->value[0] = 0x51; in gaff_init()
113 gaff->report->field[0]->value[1] = 0x00; in gaff_init()
114 gaff->report->field[0]->value[2] = 0x00; in gaff_init()
115 gaff->report->field[0]->value[3] = 0x00; in gaff_init()
116 hid_hw_request(hid, gaff->report, HID_REQ_SET_REPORT); in gaff_init()
118 gaff->report->field[0]->value[0] = 0xfa; in gaff_init()
119 gaff->report->field[0]->value[1] = 0xfe; in gaff_init()
121 hid_hw_request(hid, gaff->report, HID_REQ_SET_REPORT); in gaff_init()
138 dev_dbg(&hdev->dev, "Greenasia HID hardware probe..."); in ga_probe()