Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 3 files as a member:

Defined in 1 files as a function:

Referenced in 34 files:

Smatch caller information:

drivers/hid/hid-rmi.c rmi_write_report() -> hid_hw_output_report()

Type Parameter Key Value
PARAM_VALUE 0 hdev 4096-ptr_max
PARAM_VALUE 0 hdev->driver_input_lock.first_waiter->up 0-1
PARAM_VALUE 0 hdev->ll_driver->start 0,4096-ptr_max
PARAM_VALUE 1 buf 4096-ptr_max
PARAM_VALUE 2 len 0-s32max,18446744071562067968-u64max
BUF_SIZE 0 hdev->bpf_rdesc (-1)-s32max
BUF_SIZE 0 hdev->devres_group_id s32min-(-1),1-s32max
BUF_SIZE 1 buf 1-s32max
BUF_SIZE 1 buf 1-s32max
DATA_SOURCE 0 hdev $0
DATA_SOURCE 1 buf $1
DATA_SOURCE 2 len $2
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &data->page_mutex

drivers/hid/hid-oxp.c mcu_property_out() -> hid_hw_output_report()

Type Parameter Key Value
PARAM_VALUE 1 buf 4096-ptr_max
PARAM_VALUE 2 len 64
BUF_SIZE 1 buf 64
BUF_SIZE 1 buf 64
DATA_SOURCE 1 buf r _kzalloc_noprof
RX_PATH
TASK_NOT_RUNNING
LOCK2 _T->lock
HALF_LOCKED2 &of->mutex

drivers/hid/hid-msi.c __claw_hw_output_report() -> hid_hw_output_report()

Type Parameter Key Value
PARAM_VALUE 0 hdev 4096-ptr_max
PARAM_VALUE 1 buf 4096-ptr_max
PARAM_VALUE 2 len 64
BUF_SIZE 1 buf 64
BUF_SIZE 1 buf 64
DATA_SOURCE 0 hdev $0
DATA_SOURCE 1 buf r _kzalloc_noprof
LOCK2 _T->lock

drivers/hid/hid-microsoft.c ms_ff_worker() -> hid_hw_output_report()

Type Parameter Key Value
PARAM_VALUE 1 buf 4096-ptr_max
PARAM_VALUE 2 len 9
BUF_SIZE 1 buf 9
BUF_SIZE 1 buf 9
UNITS 2 len unit_byte
HALF_LOCKED2 &pool->lock

drivers/hid/hid-input.c hidinput_led_worker() -> hid_hw_output_report()

Type Parameter Key Value
PARAM_VALUE 0 hdev 4096-ptr_max
PARAM_VALUE 0 hdev->ll_driver 4096-ptr_max
PARAM_VALUE 0 hdev->ll_driver->request 0
PARAM_VALUE 1 buf 16,4096-ptr_max
BUF_SIZE 1 buf 0-s32max
BUF_SIZE 1 buf 0-s32max
DATA_SOURCE 1 buf r hid_alloc_report_buf
DATA_SOURCE 2 len r hid_report_len
HALF_LOCKED2 &pool->lock

drivers/hid/hid-mcp2221.c mcp_send_report() -> hid_hw_output_report()

Type Parameter Key Value
PARAM_VALUE 1 buf 1-u64max
PARAM_VALUE 2 len 1-2,4-64
BUF_SIZE 1 buf 1-2,4-64
BUF_SIZE 1 buf 1-2,4-64
CAPPED_DATA 2 len 1
CAPPED_DATA 2 len 1
DATA_SOURCE 1 buf r kmemdup_noprof
DATA_SOURCE 2 len $2
RX_PATH
TASK_NOT_RUNNING
USER_DATA 2 len 8-37[c]
UNITS 2 len unit_byte
HALF_LOCKED2 &mcp->lock

drivers/hid/hid-haptic.c play_effect() -> hid_hw_output_report()

Type Parameter Key Value
PARAM_VALUE 2 len 0-u32max
BUF_SIZE 0 hdev s32min-(-2),1-s32max
BUF_SIZE 0 hdev s32min-(-2),1-s32max
DATA_SOURCE 0 hdev $0
UNITS 0 hdev unit_byte
LOCK2 &haptic->manual_trigger_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct hid_haptic_device)->manual_trigger_mutex

drivers/hwmon/asus_rog_ryujin.c rog_ryujin_write_expanded() -> hid_hw_output_report()

Type Parameter Key Value
PARAM_VALUE 2 len 65
BUF_SIZE 1 buf 65
RX_PATH
TASK_NOT_RUNNING
LOCK2 _T->lock
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &pool->lock

drivers/hid/hid-cp2112.c cp2112_hid_output() -> hid_hw_output_report()

Type Parameter Key Value
PARAM_VALUE 0 hdev 4096-ptr_max
PARAM_VALUE 0 hdev->driver_input_lock.first_waiter->up 0-1
PARAM_VALUE 0 hdev->ll_driver 4096-ptr_max
PARAM_VALUE 0 hdev->ll_driver->power 0,4096-ptr_max
PARAM_VALUE 0 hdev->ll_driver->start 0,4096-ptr_max
PARAM_VALUE 1 buf 1-u64max
PARAM_VALUE 2 len 2-64
BUF_SIZE 1 buf 1-256
BUF_SIZE 1 buf 1-256
CAPPED_DATA 0 hdev 1
CAPPED_DATA 2 len 1
CAPPED_DATA 2 len 1
DATA_SOURCE 0 hdev $0
DATA_SOURCE 1 buf r kmemdup_noprof
DATA_SOURCE 2 len $2
RX_PATH
TASK_NOT_RUNNING
USER_DATA 2 len 3-64[c]
UNITS 2 len unit_byte

drivers/hwmon/nzxt-kraken3.c kraken3_write_expanded() -> hid_hw_output_report()

Type Parameter Key Value
PARAM_VALUE 2 len 64
BUF_SIZE 1 buf 64
RX_PATH
TASK_NOT_RUNNING
LOCK2 &priv->buffer_lock
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &priv->z53_status_request_lock
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct kraken3_data)->buffer_lock

drivers/hid/hid-led.c hidled_send() -> hid_hw_output_report()

Type Parameter Key Value
PARAM_VALUE 2 len 6,8-9
BUF_SIZE 1 buf (-1),16
BUF_SIZE 1 buf (-1),16
RX_PATH
TASK_NOT_RUNNING
LOCK2 &ldev->lock
HALF_LOCKED2 &hdev->driver_input_lock
TYPE_LOCK (struct hidled_device)->lock

drivers/hwmon/corsair-cpro.c send_usb_cmd() -> hid_hw_output_report()

Type Parameter Key Value
PARAM_VALUE 1 buf 4096-ptr_max
PARAM_VALUE 2 len 63
BUF_SIZE 1 buf (-1),63
BUF_SIZE 1 buf (-1),63
MEM_ZERO 1 buf
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &ccp->mutex
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 _T->lock

drivers/hid/hid-lenovo-go-s.c mcu_property_out() -> hid_hw_output_report()

Type Parameter Key Value
PARAM_VALUE 1 buf 4096-ptr_max
PARAM_VALUE 2 len 64
BUF_SIZE 1 buf 64
BUF_SIZE 1 buf 64
DATA_SOURCE 0 hdev $0
DATA_SOURCE 1 buf r _kzalloc_noprof
RX_PATH
TASK_NOT_RUNNING
LOCK2 _T->lock
HALF_LOCKED2 &of->mutex

drivers/hid/hid-sony.c motion_send_output_report() -> hid_hw_output_report()

Type Parameter Key Value
PARAM_VALUE 1 buf 4096-ptr_max
PARAM_VALUE 2 len 49
BUF_SIZE 1 buf 36,49
BUF_SIZE 1 buf 36,49
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/hid/hid-sony.c sixaxis_send_output_report() -> hid_hw_output_report()

Type Parameter Key Value
PARAM_VALUE 1 buf 4096-ptr_max
PARAM_VALUE 2 len 36
BUF_SIZE 1 buf 36,49
BUF_SIZE 1 buf 36,49
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 2 len unit_byte

drivers/hid/hid-sony.c sixaxis_set_operational_usb() -> hid_hw_output_report()

Type Parameter Key Value
PARAM_VALUE 0 hdev 4096-ptr_max
PARAM_VALUE 0 hdev->driver_input_lock.first_waiter->up 0-1
PARAM_VALUE 0 hdev->ll_driver 4096-ptr_max
PARAM_VALUE 0 hdev->ll_driver->max_buffer_size 0,4096
PARAM_VALUE 0 hdev->ll_driver->start 0,4096-ptr_max
PARAM_VALUE 0 *hdev->name 0-255
PARAM_VALUE 1 buf 4096-ptr_max
PARAM_VALUE 2 len 1
BUF_SIZE 0 hdev->bpf_rdesc (-1)-s32max
BUF_SIZE 0 hdev->devres_group_id s32min-(-1),1-s32max
BUF_SIZE 1 buf 17
BUF_SIZE 1 buf 17
DATA_SOURCE 0 hdev $0
DATA_SOURCE 1 buf r _kmalloc_noprof
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 0 &hdev->driver_input_lock

drivers/hid/hid-lg-g15.c lg_g15_probe() -> hid_hw_output_report()

Type Parameter Key Value
PARAM_VALUE 0 hdev 4096-ptr_max
PARAM_VALUE 0 hdev->batteries.prev 4096-ptr_max
PARAM_VALUE 0 hdev->batteries.prev->next 4096-ptr_max
PARAM_VALUE 0 hdev->batteries.prev->next->next 4096-ptr_max
PARAM_VALUE 0 hdev->bpf_rdesc 1-u64max
PARAM_VALUE 0 hdev->collection 4096-ptr_max
PARAM_VALUE 0 hdev->collection_size 16
PARAM_VALUE 0 hdev->dev.devres_head.prev->next 4096-ptr_max
PARAM_VALUE 0 hdev->dev.devres_head.prev->next->next 4096-ptr_max
PARAM_VALUE 0 hdev->dev.driver_data 4096-ptr_max
PARAM_VALUE 0 hdev->dev.driver_data->haptic->default_auto_trigger 0-4294967295
PARAM_VALUE 0 hdev->dev.driver_data->haptic->max_duration_id 1-u16max
PARAM_VALUE 0 hdev->dev.driver_data->haptic->max_waveform_id 1-u16max
PARAM_VALUE 0 hdev->dev.driver_data->haptic->pressure_sum s32min-s32max
PARAM_VALUE 0 hdev->dev.driver_data->inputmode_value 0,2-3
PARAM_VALUE 0 hdev->dev.driver_data->is_buttonpad 1
PARAM_VALUE 0 hdev->dev.driver_data->is_pressurepad 1
PARAM_VALUE 0 hdev->dev.driver_data->maxcontacts 0-255
PARAM_VALUE 0 hdev->dev.driver_data->num_function_row_keys 1-24
PARAM_VALUE 0 hdev->dev.driver_data->wacom_wac.hid_data.cc_index (-1)-2147483646
PARAM_VALUE 0 hdev->dev.driver_data->wacom_wac.hid_data.cc_report s32min-s32max
PARAM_VALUE 0 hdev->dev.driver_data->wacom_wac.hid_data.cc_value_index (-1)-s32max
PARAM_VALUE 0 hdev->dev.driver_data->wacom_wac.hid_data.last_slot_field 65584-65585,852018,852028,852034,852040-852041,852049
PARAM_VALUE 0 hdev->dev.driver_data->wacom_wac.pad_input->grab->private->inactivity_work.cpu s32min-s32max
PARAM_VALUE 0 hdev->devres_group_id 4096-ptr_max
PARAM_VALUE 0 hdev->driver 4096-ptr_max
PARAM_VALUE 0 hdev->driver_data->bufsize 64-536870913
PARAM_VALUE 0 hdev->driver_data->bundle->dev.power.deferred_resume 0-1
PARAM_VALUE 0 hdev->driver_data->bundle->dev.power.idle_notification 0-1
PARAM_VALUE 0 hdev->driver_data->bundle->dev.power.request 0-4
PARAM_VALUE 0 hdev->driver_data->bundle->dev.power.request_pending 0-1
PARAM_VALUE 0 hdev->driver_data->bundle->dev.power.runtime_error s32min-(-17),(-15)-(-14),(-12),(-10)-s32max
PARAM_VALUE 0 hdev->driver_data->bundle->dev.power.runtime_status s32min-s32max
PARAM_VALUE 0 hdev->driver_data->bundle->dev.power.timer_autosuspends 0-1
PARAM_VALUE 0 hdev->driver_data->bundle->dev.power.usage_count.counter s32min-s32max
PARAM_VALUE 0 hdev->driver_data->bundle->dev.power.wakeirq->status 0-4294967295
PARAM_VALUE 0 hdev->driver_data->cli_data->cur_hid_dev 0-s32max
PARAM_VALUE 0 hdev->driver_data->client_data->hid_ishtp_cl->err_send_msg 0-4294967295
PARAM_VALUE 0 hdev->driver_data->ctrl->counter.rqid.value 0-u16max
PARAM_VALUE 0 hdev->driver_data->ctrl->counter.seq.value 0-255
PARAM_VALUE 0 hdev->driver_data->ctrl->cplt.event.notif.lock.dep_map->name 0-255
PARAM_VALUE 0 hdev->driver_data->ctrl->cplt.event.notif.lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 hdev->driver_data->ctrl->cplt.event.notif.lock.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 hdev->driver_data->ctrl->cplt.event.notif.lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 hdev->driver_data->ctrlhead 0-255
PARAM_VALUE 0 hdev->driver_data->dev->devres_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 hdev->driver_data->head 0-255
PARAM_VALUE 0 hdev->driver_data->hid_max_event_sz 1-4294967295
PARAM_VALUE 0 hdev->driver_data->intf->minor (-1)-255
PARAM_VALUE 0 hdev->driver_data->intf->usb_dev->fwnode->dev->power.set_latency_tolerance 5740181548905971712
PARAM_VALUE 0 hdev->driver_data->intf->usb_dev->iommu_group->owner_cnt 0-4294967295
PARAM_VALUE 0 hdev->driver_data->intf->usb_dev->kobj.ktype->get_ownership 9073032014207823872
PARAM_VALUE 0 hdev->driver_data->intf->usb_dev->kobj.ktype->namespace 4142580293989273600
PARAM_VALUE 0 hdev->driver_data->intf->usb_dev->kobj.release.timer.is_hard 0-1
PARAM_VALUE 0 hdev->driver_data->intf->usb_dev->kobj.release.timer.is_lazy 0-1
PARAM_VALUE 0 hdev->driver_data->intf->usb_dev->kobj.release.timer.is_queued 0-1
PARAM_VALUE 0 hdev->driver_data->intf->usb_dev->kobj.release.timer.is_soft 0-1
PARAM_VALUE 0 hdev->driver_data->intf->usb_dev->kobj.sd->attr.open->nr_mmapped 0-4294967295
PARAM_VALUE 0 hdev->driver_data->intf->usb_dev->mutex->first_waiter->task->blocked_lock.owner (-4611686018427387904)-4611686018427387903
PARAM_VALUE 0 hdev->driver_data->intf->usb_dev->p->klist_children.get 2213798222526185472
PARAM_VALUE 0 hdev->driver_data->intf->usb_dev->p->klist_children.put 3126867300421632000
PARAM_VALUE 0 hdev->driver_data->intf->usb_dev->p->knode_class.n_ref.refcount.refs.counter 1
PARAM_VALUE 0 hdev->driver_data->intf->usb_dev->p->knode_parent.n_ref.refcount.refs.counter 1
PARAM_VALUE 0 hdev->driver_data->outhead 0-63
PARAM_VALUE 0 hdev->driver_data->qlock.rlock.dep_map->name 0-255
PARAM_VALUE 0 hdev->driver_data->request_done 0
PARAM_VALUE 0 hdev->driver_data->retry_delay 2-198
PARAM_VALUE 0 hdev->driver_data->urbctrl->dev->dev.kobj.kref.refcount.refs.counter s32min-s32max
PARAM_VALUE 0 hdev->driver_data->urbctrl->dev->dev.kobj.release.cpu s32min-s32max
PARAM_VALUE 0 hdev->driver_data->urbctrl->dev->dev.kobj.release.timer.flags 0-4294967295
PARAM_VALUE 0 hdev->driver_data->urbctrl->dev->dev.kobj.release.timer.is_hard 0-1
PARAM_VALUE 0 hdev->driver_data->urbctrl->dev->dev.kobj.release.timer.is_lazy 0-1
PARAM_VALUE 0 hdev->driver_data->urbctrl->dev->dev.kobj.release.timer.is_queued 0-1
PARAM_VALUE 0 hdev->driver_data->urbctrl->dev->dev.kobj.release.timer.is_soft 0-1
PARAM_VALUE 0 hdev->driver_data->urbctrl->kref.refcount.refs.counter 1
PARAM_VALUE 0 hdev->driver_data->urbctrl->reject.counter s32min-s32max
PARAM_VALUE 0 hdev->driver_data->urbctrl->transfer_buffer_length 1
PARAM_VALUE 0 hdev->driver_data->urbctrl->transfer_flags 4
PARAM_VALUE 0 hdev->driver_data->urbctrl->unlinked s32min-s32max
PARAM_VALUE 0 hdev->driver_data->urbin->actual_length 0-4294967295
PARAM_VALUE 0 hdev->driver_data->urbin->dev->urbnum.counter s32min-s32max
PARAM_VALUE 0 hdev->driver_data->urbin->interval s32min-s32max
PARAM_VALUE 0 hdev->driver_data->urbin->kref.refcount.refs.counter s32min-s32max
PARAM_VALUE 0 hdev->driver_data->urbin->num_mapped_sgs 0-s32max
PARAM_VALUE 0 hdev->driver_data->urbin->sg->dma_flags 0-4294967295
PARAM_VALUE 0 hdev->driver_data->urbin->sg->dma_length 0-4294967295
PARAM_VALUE 0 hdev->driver_data->urbin->sg->length 0-4294967295
PARAM_VALUE 0 hdev->driver_data->urbin->sg->offset 0-4294967295
PARAM_VALUE 0 hdev->driver_data->urbin->start_frame (-1)
PARAM_VALUE 0 hdev->driver_data->urbin->status (-4095)-0
PARAM_VALUE 0 hdev->driver_data->urbin->transfer_buffer->_refcount.counter s32min-s32max
PARAM_VALUE 0 hdev->driver_data->urbin->transfer_buffer->bDeviceProtocol 1
PARAM_VALUE 0 hdev->driver_data->urbin->transfer_buffer->bmAttributes 0-255
PARAM_VALUE 0 hdev->driver_data->urbin->transfer_buffer->page_type 0-4294967295
PARAM_VALUE 0 hdev->driver_data->urbin->transfer_flags 0-4294967295
PARAM_VALUE 0 hdev->driver_data->urbin->unlinked s32min-s32max
PARAM_VALUE 0 hdev->driver_data->urbin->use_count.counter s32min-s32max
PARAM_VALUE 0 hdev->driver_data->urbout->dev->dev.kobj.kref.refcount.refs.counter s32min-s32max
PARAM_VALUE 0 hdev->driver_data->urbout->dev->dev.kobj.release.cpu s32min-s32max
PARAM_VALUE 0 hdev->driver_data->urbout->dev->dev.kobj.release.timer.flags 0-4294967295
PARAM_VALUE 0 hdev->driver_data->urbout->dev->dev.kobj.release.timer.is_hard 0-1
PARAM_VALUE 0 hdev->driver_data->urbout->dev->dev.kobj.release.timer.is_lazy 0-1
PARAM_VALUE 0 hdev->driver_data->urbout->dev->dev.kobj.release.timer.is_queued 0-1
PARAM_VALUE 0 hdev->driver_data->urbout->dev->dev.kobj.release.timer.is_soft 0-1
PARAM_VALUE 0 hdev->driver_data->urbout->kref.refcount.refs.counter 1
PARAM_VALUE 0 hdev->driver_data->urbout->reject.counter s32min-s32max
PARAM_VALUE 0 hdev->driver_data->urbout->start_frame (-1)
PARAM_VALUE 0 hdev->driver_data->urbout->transfer_flags 4
PARAM_VALUE 0 hdev->driver_data->urbout->unlinked s32min-s32max
PARAM_VALUE 0 hdev->driver_input_lock.first_waiter->list.next 5349227543279349760
PARAM_VALUE 0 hdev->driver_input_lock.first_waiter->list.prev 5349227543279349760
PARAM_VALUE 0 hdev->driver_input_lock.first_waiter->list.prev->next 5349227543279349760
PARAM_VALUE 0 hdev->driver_input_lock.first_waiter->up 0-1
PARAM_VALUE 0 hdev->driver_input_lock.last_holder 0
PARAM_VALUE 0 hdev->driver_input_lock.lock.dep_map->name 0-255
PARAM_VALUE 0 hdev->hiddev 0,4096-ptr_max
PARAM_VALUE 0 hdev->hidraw 4096-ptr_max
PARAM_VALUE 0 hdev->hidraw->list_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 hdev->ll_driver 4096-ptr_max
PARAM_VALUE 0 hdev->ll_driver->start 4096-ptr_max
PARAM_VALUE 0 hdev->ll_open_lock.dep_map->name 0-255
PARAM_VALUE 0 hdev->ll_open_lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 hdev->ll_open_lock.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 hdev->ll_open_lock.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 hdev->ll_open_lock.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 hdev->ll_open_lock.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 0 hdev->ll_open_lock.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 hdev->ll_open_lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 hdev->rdesc 1-u64max
PARAM_VALUE 0 hdev->report_enum 4096-ptr_max
PARAM_VALUE 0 *hdev->dev.driver_data->function_row_physmap 0-4294967295
PARAM_VALUE 0 *hdev->driver_data->cli_data->report_id 0-255
PARAM_VALUE 0 *hdev->driver_data->ctrlbuf 0-255
PARAM_VALUE 0 *hdev->driver_data->event_buf 0-255
PARAM_VALUE 0 *hdev->driver_data->inbuf 0-255
PARAM_VALUE 0 *hdev->driver_data->outbuf 0-255
PARAM_VALUE 0 *hdev->driver_data->urbctrl->context (-4611686018427387904)-4611686018427387903
PARAM_VALUE 0 *hdev->driver_data->urbctrl->setup_packet 0-255
PARAM_VALUE 0 *hdev->driver_data->urbctrl->transfer_buffer (-4611686018427387904)-4611686018427387903
PARAM_VALUE 0 *hdev->driver_data->urbin->context (-4611686018427387904)-4611686018427387903
PARAM_VALUE 0 *hdev->driver_data->urbin->hcpriv (-4611686018427387904)-4611686018427387903
PARAM_VALUE 0 *hdev->driver_data->urbin->setup_packet 0-255
PARAM_VALUE 0 *hdev->driver_data->urbin->transfer_buffer (-4611686018427387904)-4611686018427387903
PARAM_VALUE 0 *hdev->driver_data->urbout->context (-4611686018427387904)-4611686018427387903
PARAM_VALUE 0 *hdev->driver_data->urbout->transfer_buffer (-4611686018427387904)-4611686018427387903
PARAM_VALUE 2 len 7,19
BUF_SIZE 0 hdev->bpf_rdesc (-1)-s32max
BUF_SIZE 0 hdev->devres_group_id s32min-(-1),1-s32max
BUF_SIZE 1 buf 20
CAPPED_DATA 0 hdev 1
DATA_SOURCE 0 hdev $0
BIT_INFO 0 hdev->quirks 0x800,0xffffffffffffffff
RX_PATH
TASK_NOT_RUNNING
LOCK2 0 &hdev->driver_input_lock
TYPE_LOCK (struct hid_device)->driver_input_lock

drivers/hwmon/nzxt-smart2.c send_output_report() -> hid_hw_output_report()

Type Parameter Key Value
PARAM_VALUE 2 len 64
BUF_SIZE 1 buf 64
RX_PATH
TASK_NOT_RUNNING
UNITS 2 len unit_byte
HALF_LOCKED2 &drvdata->mutex
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 _T->lock

drivers/hid/hid-ft260.c ft260_hid_output_report() -> hid_hw_output_report()

Type Parameter Key Value
PARAM_VALUE 0 hdev 4096-ptr_max
PARAM_VALUE 0 hdev->ll_driver 4096-ptr_max
PARAM_VALUE 1 buf 1-u64max
PARAM_VALUE 2 len 5-64
BUF_SIZE 1 buf 5-64
BUF_SIZE 1 buf 5-64
CAPPED_DATA 2 len 1
CAPPED_DATA 2 len 1
DATA_SOURCE 0 hdev $0
DATA_SOURCE 1 buf r kmemdup_noprof
DATA_SOURCE 2 len $2
RX_PATH
TASK_NOT_RUNNING
USER_DATA 2 len 5-64[c]
UNITS 2 len unit_byte
LOCK2 &dev->lock
TYPE_LOCK (struct ft260_device)->lock

drivers/hid/hid-lenovo.c lenovo_send_cmd_cptkbd() -> hid_hw_output_report()

Type Parameter Key Value
PARAM_VALUE 0 hdev 4096-ptr_max
PARAM_VALUE 0 hdev->driver_input_lock.first_waiter->up 0-1
PARAM_VALUE 0 hdev->ll_driver->max_buffer_size 0,4096
PARAM_VALUE 0 hdev->ll_driver->start 0,4096-ptr_max
PARAM_VALUE 0 hdev->product 24648,24801
PARAM_VALUE 1 buf 4096-ptr_max
PARAM_VALUE 2 len 3
BUF_SIZE 0 hdev s32min-(-1),1-s32max
BUF_SIZE 0 hdev s32min-(-1),1-s32max
BUF_SIZE 0 hdev->bpf_rdesc (-1)-s32max
BUF_SIZE 0 hdev->devres_group_id s32min-(-1),1-s32max
BUF_SIZE 1 buf 3
BUF_SIZE 1 buf 3
DATA_SOURCE 0 hdev $0
DATA_SOURCE 1 buf r _kzalloc_noprof
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 0 &hdev->driver_input_lock

drivers/hwmon/corsair-psu.c corsairpsu_usb_cmd() -> hid_hw_output_report()

Type Parameter Key Value
PARAM_VALUE 1 buf 4096-ptr_max
PARAM_VALUE 2 len 64
BUF_SIZE 1 buf (-1),64
BUF_SIZE 1 buf (-1),64
MEM_ZERO 1 buf
RX_PATH
TASK_NOT_RUNNING

drivers/hid/hid-google-hammer.c hammer_kbd_brightness_set_blocking() -> hid_hw_output_report()

Type Parameter Key Value
PARAM_VALUE 0 hdev 4096-ptr_max
PARAM_VALUE 0 hdev->ll_driver 4096-ptr_max
PARAM_VALUE 1 buf 4096-ptr_max
PARAM_VALUE 2 len 2
BUF_SIZE 1 buf 2
RX_PATH
TASK_NOT_RUNNING
UNITS 2 len unit_byte
HALF_LOCKED2 &hdev->driver_input_lock

drivers/hid/hid-lenovo-go.c mcu_property_out() -> hid_hw_output_report()

Type Parameter Key Value
PARAM_VALUE 1 buf 4096-ptr_max
PARAM_VALUE 2 len 64
BUF_SIZE 1 buf 64
BUF_SIZE 1 buf 64
DATA_SOURCE 0 hdev $0
DATA_SOURCE 1 buf r _kzalloc_noprof
RX_PATH
TASK_NOT_RUNNING
LOCK2 _T->lock
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &pool->lock

drivers/hid/hid-nintendo.c __joycon_hid_send() -> hid_hw_output_report()

Type Parameter Key Value
PARAM_VALUE 1 buf 1-u64max
PARAM_VALUE 2 len 2,10-12,16
BUF_SIZE 1 buf 2,10-12,16
BUF_SIZE 1 buf 2,10-12,16
CAPPED_DATA 2 len 1
CAPPED_DATA 2 len 1
DATA_SOURCE 0 hdev $0
DATA_SOURCE 1 buf r kmemdup_noprof
DATA_SOURCE 2 len $2
RX_PATH
TASK_NOT_RUNNING
UNITS 2 len unit_byte
LOCK2 &ctlr->output_mutex
TYPE_LOCK (struct joycon_ctlr)->output_mutex

drivers/hwmon/arctic_fan_controller.c arctic_fan_write() -> hid_hw_output_report()

Type Parameter Key Value
PARAM_VALUE 1 buf 4096-ptr_max
PARAM_VALUE 2 len 32
BUF_SIZE 1 buf 32
RX_PATH
TASK_NOT_RUNNING
LOCK2 _T->lock
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &tz->lock

drivers/hid/hid-winwing.c winwing_haptic_rumble() -> hid_hw_output_report()

Type Parameter Key Value
PARAM_VALUE 0 hdev 1-u64max
PARAM_VALUE 1 buf 4096-ptr_max
PARAM_VALUE 2 len 14
BUF_SIZE 1 buf 16
BUF_SIZE 1 buf 16
HALF_LOCKED2 &pool->lock

drivers/hid/hid-winwing.c winwing_haptic_rumble() -> hid_hw_output_report()

Type Parameter Key Value
PARAM_VALUE 0 hdev 1-u64max
PARAM_VALUE 1 buf 4096-ptr_max
PARAM_VALUE 2 len 14
BUF_SIZE 1 buf 16
BUF_SIZE 1 buf 16
HALF_LOCKED2 &pool->lock

drivers/hid/hid-winwing.c winwing_led_write() -> hid_hw_output_report()

Type Parameter Key Value
PARAM_VALUE 0 hdev 4096-ptr_max
PARAM_VALUE 1 buf 4096-ptr_max
PARAM_VALUE 2 len 14
BUF_SIZE 1 buf 16
BUF_SIZE 1 buf 16
RX_PATH
TASK_NOT_RUNNING
LOCK2 &data->lights_lock
TYPE_LOCK (struct winwing_drv_data)->lights_lock

drivers/hid/hid-wiimote-core.c wiimote_hid_send() -> hid_hw_output_report()

Type Parameter Key Value
PARAM_VALUE 0 hdev 4096-ptr_max
PARAM_VALUE 0 hdev->ll_driver 4096-ptr_max
PARAM_VALUE 0 hdev->ll_driver->output_report 413141862939832320,1442834317192245248,2221293637157601280,3717343193451302912,7818562613356847104
PARAM_VALUE 1 buf 1-u64max
BUF_SIZE 1 buf s32min-s32max
CAPPED_DATA 2 len 1
CAPPED_DATA 2 len 1
DATA_SOURCE 0 hdev $0
DATA_SOURCE 1 buf r kmemdup_noprof
DATA_SOURCE 2 len $2
UNITS 2 len unit_byte
HALF_LOCKED2 &pool->lock

drivers/hid/hid-u2fzero.c u2fzero_recv() -> hid_hw_output_report()

Type Parameter Key Value
PARAM_VALUE 2 len 64
BUF_SIZE 1 buf 65
RX_PATH
TASK_NOT_RUNNING
UNITS 2 len unit_byte
LOCK2 &dev->lock
HALF_LOCKED2 global &reading_mutex
TYPE_LOCK (struct u2fzero_device)->lock

drivers/hid/hid-u2fzero.c u2fzero_send() -> hid_hw_output_report()

Type Parameter Key Value
PARAM_VALUE 2 len 64
BUF_SIZE 1 buf 65
RX_PATH
TASK_NOT_RUNNING
UNITS 2 len unit_byte
LOCK2 &dev->lock
TYPE_LOCK (struct u2fzero_device)->lock

drivers/hid/hid-logitech-hidpp.c __hidpp_send_report() -> hid_hw_output_report()

Type Parameter Key Value
PARAM_VALUE 0 hdev 4096-ptr_max
PARAM_VALUE 1 buf 4096-ptr_max
PARAM_VALUE 2 len 0-s32max,18446744071562067968-u64max
DATA_SOURCE 0 hdev $0
DATA_SOURCE 1 buf $1
RX_PATH
TASK_NOT_RUNNING
LOCK2 &hidpp->send_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct hidpp_device)->send_mutex

drivers/hwmon/gigabyte_waterforce.c waterforce_write_expanded() -> hid_hw_output_report()

Type Parameter Key Value
PARAM_VALUE 2 len 6144
BUF_SIZE 1 buf 6144
RX_PATH
TASK_NOT_RUNNING
LOCK2 &priv->buffer_lock
HALF_LOCKED2 &priv->status_report_request_mutex
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct waterforce_data)->buffer_lock

drivers/hid/hid-mcp2200.c mcp_cmd_read_all() -> hid_hw_output_report()

Type Parameter Key Value
PARAM_VALUE 1 buf 4096-ptr_max
PARAM_VALUE 2 len 16
BUF_SIZE 1 buf 16
BUF_SIZE 1 buf 16
RX_PATH
TASK_NOT_RUNNING
UNITS 2 len unit_byte
LOCK2 &mcp->lock
TYPE_LOCK (struct mcp2200)->lock

drivers/hid/hid-mcp2200.c mcp_set_direction() -> hid_hw_output_report()

Type Parameter Key Value
PARAM_VALUE 0 hdev 4096-ptr_max
PARAM_VALUE 0 hdev->driver_data->thc_hw->thc_bus_lock.dep_map->name 0-255
PARAM_VALUE 0 hdev->driver_data->thc_hw->thc_regmap->cache_dirty 0-1
PARAM_VALUE 0 hdev->ll_driver 4096-ptr_max
PARAM_VALUE 0 *hdev->driver_data->report_buf 0-255
PARAM_VALUE 1 buf 4096-ptr_max
PARAM_VALUE 2 len 16
BUF_SIZE 1 buf 16
BUF_SIZE 1 buf 16
RX_PATH
TASK_NOT_RUNNING
UNITS 2 len unit_byte
LOCK2 &mcp->lock
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct mcp2200)->lock

drivers/hid/hid-mcp2200.c mcp_set_multiple() -> hid_hw_output_report()

Type Parameter Key Value
PARAM_VALUE 1 buf 4096-ptr_max
PARAM_VALUE 2 len 16
BUF_SIZE 1 buf 16
BUF_SIZE 1 buf 16
RX_PATH
TASK_NOT_RUNNING
UNITS 2 len unit_byte
LOCK2 &mcp->lock
TYPE_LOCK (struct mcp2200)->lock

drivers/hid/hid-playstation.c dualsense_send_output_report() -> hid_hw_output_report()

Type Parameter Key Value
PARAM_VALUE 0 hdev 4096-ptr_max
PARAM_VALUE 1 buf 4096-ptr_max
PARAM_VALUE 2 len 63,78
BUF_SIZE 1 buf 78
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 2 len unit_byte
HALF_LOCKED2 &hdev->driver_input_lock

drivers/hid/hid-playstation.c dualshock4_output_worker() -> hid_hw_output_report()

Type Parameter Key Value
PARAM_VALUE 0 hdev 4096-ptr_max
PARAM_VALUE 1 buf 4096-ptr_max
PARAM_VALUE 2 len 32,78
NOCHECK_CALL
UNITS 2 len unit_byte
HALF_LOCKED2 &pool->lock