Lines Matching refs:report
58 struct hid_report *report;
60 list_for_each_entry(report, &hdev->report_enum[dir].report_list, list) {
61 if (report->id == id)
62 return report;
64 hid_warn(hdev, "No report with id 0x%x found\n", id);
193 struct hid_report *report;
202 report = sensor_hub_report(report_id, hsdev->hdev, HID_FEATURE_REPORT);
203 if (!report || (field_index >= report->maxfield)) {
212 ret = hid_set_field(report->field[field_index], i,
223 ret = hid_set_field(report->field[field_index], i,
228 hid_hw_request(hsdev->hdev, report, HID_REQ_SET_REPORT);
241 struct hid_report *report;
252 report = sensor_hub_report(report_id, hsdev->hdev, HID_FEATURE_REPORT);
253 if (!report || (field_index >= report->maxfield) ||
254 report->field[field_index]->report_count < 1) {
258 hid_hw_request(hsdev->hdev, report, HID_REQ_GET_REPORT);
262 report_size = DIV_ROUND_UP(report->field[field_index]->report_size,
264 report->field[field_index]->report_count;
271 val_ptr = (u8 *)report->field[field_index]->value;
272 for (i = 0; i < report->field[field_index]->report_count; ++i) {
277 report->field[field_index]->report_size / 8);
279 buffer_index += (report->field[field_index]->report_size / 8);
298 struct hid_report *report;
301 report = sensor_hub_report(report_id, hsdev->hdev,
303 if (!report)
319 hid_hw_request(hsdev->hdev, report, HID_REQ_GET_REPORT);
355 struct hid_report *report;
359 report = sensor_hub_report(report_id, hsdev->hdev, HID_FEATURE_REPORT);
360 if (!report || (field_index >= report->maxfield))
363 field = report->field[field_index];
382 struct hid_report *report;
396 list_for_each_entry(report, &report_enum->report_list, list) {
397 for (i = 0; i < report->maxfield; ++i) {
398 field = report->field[i];
411 report->id,
469 * Handle raw report as sent by device
472 struct hid_report *report, u8 *raw_data, int size)
484 hid_dbg(hdev, "sensor_hub_raw_event report id:0x%x size:%d type:%d\n",
485 report->id, size, report->type);
486 hid_dbg(hdev, "maxfield:%d\n", report->maxfield);
487 if (report->type != HID_INPUT_REPORT)
491 if (report->id)
492 ptr++; /* Skip report id */
496 for (i = 0; i < report->maxfield; ++i) {
498 i, report->field[i]->usage->collection_index,
499 report->field[i]->usage->hid,
500 (report->field[i]->report_size *
501 report->field[i]->report_count)/8);
502 sz = (report->field[i]->report_size *
503 report->field[i]->report_count)/8;
505 report->field[i]->usage->collection_index];
510 report->field[i]->physical ? report->field[i]->physical :
511 report->field[i]->application,
512 report->field[i]->usage[0].collection_index,
519 report->field[i]->usage->hid ||
521 report->field[i]->logical)) {
531 if (report->field[i]->logical)
533 report->field[i]->logical, sz, ptr,
537 report->field[i]->usage->hid, sz, ptr,
587 * Checks if the report descriptor of Thinkpad Helix 2 has a logical