Lines Matching refs:dj_report
199 struct dj_report *dj_report) in logi_dj_recv_destroy_djhid_device() argument
206 dj_dev = djrcv_dev->paired_dj_devices[dj_report->device_index]; in logi_dj_recv_destroy_djhid_device()
207 djrcv_dev->paired_dj_devices[dj_report->device_index] = NULL; in logi_dj_recv_destroy_djhid_device()
220 struct dj_report *dj_report) in logi_dj_recv_add_djhid_device() argument
234 if (dj_report->report_params[DEVICE_PAIRED_PARAM_SPFUNCTION] & in logi_dj_recv_add_djhid_device()
241 if (djrcv_dev->paired_dj_devices[dj_report->device_index]) { in logi_dj_recv_add_djhid_device()
262 dj_report->report_params[DEVICE_PAIRED_PARAM_EQUAD_ID_MSB], in logi_dj_recv_add_djhid_device()
263 dj_report->report_params[DEVICE_PAIRED_PARAM_EQUAD_ID_LSB]); in logi_dj_recv_add_djhid_device()
266 snprintf(tmpstr, sizeof(tmpstr), ":%d", dj_report->device_index); in logi_dj_recv_add_djhid_device()
278 dj_report->report_params + DEVICE_PAIRED_RF_REPORT_TYPE); in logi_dj_recv_add_djhid_device()
281 dj_dev->device_index = dj_report->device_index; in logi_dj_recv_add_djhid_device()
284 djrcv_dev->paired_dj_devices[dj_report->device_index] = dj_dev; in logi_dj_recv_add_djhid_device()
295 djrcv_dev->paired_dj_devices[dj_report->device_index] = NULL; in logi_dj_recv_add_djhid_device()
306 struct dj_report dj_report; in delayedwork_callback() local
315 count = kfifo_out(&djrcv_dev->notif_fifo, &dj_report, in delayedwork_callback()
316 sizeof(struct dj_report)); in delayedwork_callback()
318 if (count != sizeof(struct dj_report)) { in delayedwork_callback()
334 switch (dj_report.report_type) { in delayedwork_callback()
336 logi_dj_recv_add_djhid_device(djrcv_dev, &dj_report); in delayedwork_callback()
339 logi_dj_recv_destroy_djhid_device(djrcv_dev, &dj_report); in delayedwork_callback()
349 if (!djrcv_dev->paired_dj_devices[dj_report.device_index]) { in delayedwork_callback()
366 struct dj_report *dj_report) in logi_dj_recv_queue_notification() argument
370 kfifo_in(&djrcv_dev->notif_fifo, dj_report, sizeof(struct dj_report)); in logi_dj_recv_queue_notification()
379 struct dj_report *dj_report) in logi_dj_recv_forward_null_report() argument
386 djdev = djrcv_dev->paired_dj_devices[dj_report->device_index]; in logi_dj_recv_forward_null_report()
405 struct dj_report *dj_report) in logi_dj_recv_forward_report() argument
410 dj_device = djrcv_dev->paired_dj_devices[dj_report->device_index]; in logi_dj_recv_forward_report()
412 if ((dj_report->report_type > ARRAY_SIZE(hid_reportid_size_map) - 1) || in logi_dj_recv_forward_report()
413 (hid_reportid_size_map[dj_report->report_type] == 0)) { in logi_dj_recv_forward_report()
414 dbg_hid("invalid report type:%x\n", dj_report->report_type); in logi_dj_recv_forward_report()
419 HID_INPUT_REPORT, &dj_report->report_type, in logi_dj_recv_forward_report()
420 hid_reportid_size_map[dj_report->report_type], 1)) { in logi_dj_recv_forward_report()
427 struct dj_report *dj_report) in logi_dj_recv_send_report() argument
432 u8 *data = (u8 *)(&dj_report->device_index); in logi_dj_recv_send_report()
453 struct dj_report *dj_report; in logi_dj_recv_query_paired_devices() local
460 dj_report = kzalloc(sizeof(struct dj_report), GFP_KERNEL); in logi_dj_recv_query_paired_devices()
461 if (!dj_report) in logi_dj_recv_query_paired_devices()
463 dj_report->report_id = REPORT_ID_DJ_SHORT; in logi_dj_recv_query_paired_devices()
464 dj_report->device_index = 0xFF; in logi_dj_recv_query_paired_devices()
465 dj_report->report_type = REPORT_TYPE_CMD_GET_PAIRED_DEVICES; in logi_dj_recv_query_paired_devices()
466 retval = logi_dj_recv_send_report(djrcv_dev, dj_report); in logi_dj_recv_query_paired_devices()
467 kfree(dj_report); in logi_dj_recv_query_paired_devices()
475 struct dj_report *dj_report; in logi_dj_recv_switch_to_dj_mode() local
478 dj_report = kzalloc(sizeof(struct dj_report), GFP_KERNEL); in logi_dj_recv_switch_to_dj_mode()
479 if (!dj_report) in logi_dj_recv_switch_to_dj_mode()
481 dj_report->report_id = REPORT_ID_DJ_SHORT; in logi_dj_recv_switch_to_dj_mode()
482 dj_report->device_index = 0xFF; in logi_dj_recv_switch_to_dj_mode()
483 dj_report->report_type = REPORT_TYPE_CMD_SWITCH; in logi_dj_recv_switch_to_dj_mode()
484 dj_report->report_params[CMD_SWITCH_PARAM_DEVBITFIELD] = 0x3F; in logi_dj_recv_switch_to_dj_mode()
485 dj_report->report_params[CMD_SWITCH_PARAM_TIMEOUT_SECONDS] = (u8)timeout; in logi_dj_recv_switch_to_dj_mode()
486 retval = logi_dj_recv_send_report(djrcv_dev, dj_report); in logi_dj_recv_switch_to_dj_mode()
487 kfree(dj_report); in logi_dj_recv_switch_to_dj_mode()
633 struct dj_report *dj_report = (struct dj_report *) data; in logi_dj_raw_event() local
666 if ((dj_report->device_index < DJ_DEVICE_INDEX_MIN) || in logi_dj_raw_event()
667 (dj_report->device_index > DJ_DEVICE_INDEX_MAX)) { in logi_dj_raw_event()
673 if (dj_report->device_index != DJ_RECEIVER_INDEX) in logi_dj_raw_event()
675 __func__, dj_report->device_index); in logi_dj_raw_event()
681 if (!djrcv_dev->paired_dj_devices[dj_report->device_index]) { in logi_dj_raw_event()
683 logi_dj_recv_queue_notification(djrcv_dev, dj_report); in logi_dj_raw_event()
687 switch (dj_report->report_type) { in logi_dj_raw_event()
692 logi_dj_recv_queue_notification(djrcv_dev, dj_report); in logi_dj_raw_event()
695 if (dj_report->report_params[CONNECTION_STATUS_PARAM_STATUS] == in logi_dj_raw_event()
697 logi_dj_recv_forward_null_report(djrcv_dev, dj_report); in logi_dj_raw_event()
701 logi_dj_recv_forward_report(djrcv_dev, dj_report); in logi_dj_raw_event()
744 DJ_MAX_NUMBER_NOTIFICATIONS * sizeof(struct dj_report), in logi_dj_probe()