Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 2 files as a function:

Referenced in 2 files:

Smatch caller information:

drivers/usb/dwc3/ep0.c dwc3_ep0_set_sel_cmpl() -> dwc3_send_gadget_generic_command()

Type Parameter Key Value
PARAM_VALUE 0 dwc 4096-ptr_max
PARAM_VALUE 1 cmd 2
PARAM_VALUE 2 param 0-125
FUZZY_MAX 2 param 0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &cdev->lock
HALF_LOCKED2 &pdev->lock
HALF_LOCKED2 &priv_dev->lock
HALF_LOCKED2 &udc->lock
HALF_LOCKED2 cdev_flags
HALF_LOCKED2 flags

drivers/usb/dwc3/gadget.c dwc3_gadget_func_wakeup() -> dwc3_send_gadget_generic_command()

Type Parameter Key Value
PARAM_VALUE 0 dwc 4096-ptr_max
PARAM_VALUE 0 dwc->wakeup_configured 1
PARAM_VALUE 1 cmd 7
PARAM_VALUE 2 param 1,17-497
BUF_SIZE 0 dwc s32min-(-2),1-s32max
BUF_SIZE 0 dwc s32min-(-2),1-s32max
DATA_SOURCE 0 dwc r dev_get_platdata
BIT_INFO 2 param 0x1,0x1f1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 flags
LOCK2 0 &dwc->lock
TYPE_LOCK (struct dwc3)->lock

drivers/usb/dwc3/gadget.c dwc3_gadget_linksts_change_interrupt() -> dwc3_send_gadget_generic_command()

Type Parameter Key Value
PARAM_VALUE 0 dwc 4096-ptr_max
PARAM_VALUE 0 dwc->dev->power.wakeirq->status 0-4294967295
PARAM_VALUE 0 dwc->gadget 4096-ptr_max
PARAM_VALUE 0 dwc->gadget->dev.driver_data->lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 dwc->gadget->dev.driver_data->queue.sema.count 0-4294967295
PARAM_VALUE 0 dwc->gadget->dev.driver_data->queue.sema.first_waiter->up 0-1
PARAM_VALUE 0 dwc->gadget->dev.driver_data->queue.sema.lock.dep_map->name 0-255
PARAM_VALUE 0 dwc->gadget->dev.driver_data->queue.sema.lock.owner (-1)
PARAM_VALUE 0 dwc->gadget->dev.driver_data->queue.sema.lock.owner_cpu 4294967295
PARAM_VALUE 0 dwc->gadget->dev.driver_data->queue.size s32min-16
PARAM_VALUE 0 dwc->gadget->dev.driver_data->state 6
PARAM_VALUE 0 dwc->gadget->mA 1-900
PARAM_VALUE 0 dwc->link_state 0
PARAM_VALUE 0 dwc->lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 dwc->suspended 0
PARAM_VALUE 0 dwc->wakeup_pending_funcs 1-u32max
PARAM_VALUE 1 cmd 7
PARAM_VALUE 2 param 1,17-4294967281
DATA_SOURCE 0 dwc $0
BIT_INFO 2 param 0x1,0xfffffff1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 dwc->gadget->dev.bus_dma_limit 0-u64max
HOST_DATA 0 dwc->gadget->dev.coherent_dma_mask 0-u64max
HOST_DATA 0 dwc->gadget->dev.devt 0-u32max
HOST_DATA 0 dwc->gadget->dev.dma_uses_io_tlb 0-1
HOST_DATA 0 dwc->gadget->dev.id 0-u32max
HOST_DATA 0 dwc->gadget->dev.kobj.kref.refcount.refs.counter s32min-s32max
HOST_DATA 0 dwc->gadget->dev.kobj.release.cpu s32min-s32max
HOST_DATA 0 dwc->gadget->dev.kobj.release.timer.expires 0-u64max
HOST_DATA 0 dwc->gadget->dev.kobj.release.timer.flags 0-u32max
HOST_DATA 0 dwc->gadget->dev.kobj.release.work.data.counter s64min-s64max
HOST_DATA 0 dwc->gadget->dev.kobj.state_add_uevent_sent 0-1
HOST_DATA 0 dwc->gadget->dev.kobj.state_in_sysfs 0-1
HOST_DATA 0 dwc->gadget->dev.kobj.state_initialized 0-1
HOST_DATA 0 dwc->gadget->dev.kobj.state_remove_uevent_sent 0-1
HOST_DATA 0 dwc->gadget->dev.kobj.uevent_suppress 0-1
HOST_DATA 0 dwc->gadget->dev.links.status 0-u32max
HOST_DATA 0 dwc->gadget->dev.mutex.osq.tail.counter s32min-s32max
HOST_DATA 0 dwc->gadget->dev.mutex.owner.counter s64min-s64max
HOST_DATA 0 dwc->gadget->dev.numa_node s32min-s32max
HOST_DATA 0 dwc->gadget->dev.power.accounting_timestamp 0-u64max
HOST_DATA 0 dwc->gadget->dev.power.active_time 0-u64max
HOST_DATA 0 dwc->gadget->dev.power.async_suspend 0-1
HOST_DATA 0 dwc->gadget->dev.power.autosuspend_delay s32min-s32max
HOST_DATA 0 dwc->gadget->dev.power.can_wakeup 0-1
HOST_DATA 0 dwc->gadget->dev.power.child_count.counter s32min-s32max
HOST_DATA 0 dwc->gadget->dev.power.completion.done 0-u32max
HOST_DATA 0 dwc->gadget->dev.power.deferred_resume 0-1
HOST_DATA 0 dwc->gadget->dev.power.detach_power_off 0-1
HOST_DATA 0 dwc->gadget->dev.power.direct_complete 0-1
HOST_DATA 0 dwc->gadget->dev.power.disable_depth 0-7
HOST_DATA 0 dwc->gadget->dev.power.driver_flags 0-u32max
HOST_DATA 0 dwc->gadget->dev.power.early_init 0-1
HOST_DATA 0 dwc->gadget->dev.power.idle_notification 0-1
HOST_DATA 0 dwc->gadget->dev.power.ignore_children 0-1
HOST_DATA 0 dwc->gadget->dev.power.in_dpm_list 0-1
HOST_DATA 0 dwc->gadget->dev.power.irq_safe 0-1
HOST_DATA 0 dwc->gadget->dev.power.is_late_suspended 0-1
HOST_DATA 0 dwc->gadget->dev.power.is_noirq_suspended 0-1
HOST_DATA 0 dwc->gadget->dev.power.is_prepared 0-1
HOST_DATA 0 dwc->gadget->dev.power.is_suspended 0-1
HOST_DATA 0 dwc->gadget->dev.power.last_busy 0-u64max
HOST_DATA 0 dwc->gadget->dev.power.last_status s32min-s32max
HOST_DATA 0 dwc->gadget->dev.power.links_count 0-u32max
HOST_DATA 0 dwc->gadget->dev.power.may_skip_resume 0-1
HOST_DATA 0 dwc->gadget->dev.power.memalloc_noio 0-1
HOST_DATA 0 dwc->gadget->dev.power.must_resume 0-1
HOST_DATA 0 dwc->gadget->dev.power.needs_force_resume 0-1
HOST_DATA 0 dwc->gadget->dev.power.no_callbacks 0-1
HOST_DATA 0 dwc->gadget->dev.power.no_pm 0-1
HOST_DATA 0 dwc->gadget->dev.power.no_pm_callbacks 0-1
HOST_DATA 0 dwc->gadget->dev.power.out_band_wakeup 0-1
HOST_DATA 0 dwc->gadget->dev.power.power_state.event s32min-s32max
HOST_DATA 0 dwc->gadget->dev.power.request 0-u32max
HOST_DATA 0 dwc->gadget->dev.power.request_pending 0-1
HOST_DATA 0 dwc->gadget->dev.power.runtime_auto 0-1
HOST_DATA 0 dwc->gadget->dev.power.runtime_error s32min-s32max
HOST_DATA 0 dwc->gadget->dev.power.runtime_status s32min-s32max
HOST_DATA 0 dwc->gadget->dev.power.smart_suspend 0-1
HOST_DATA 0 dwc->gadget->dev.power.strict_midlayer 0-1
HOST_DATA 0 dwc->gadget->dev.power.suspended_time 0-u64max
HOST_DATA 0 dwc->gadget->dev.power.syscore 0-1
HOST_DATA 0 dwc->gadget->dev.power.timer_autosuspends 0-1
HOST_DATA 0 dwc->gadget->dev.power.timer_expires 0-u64max
HOST_DATA 0 dwc->gadget->dev.power.usage_count.counter s32min-s32max
HOST_DATA 0 dwc->gadget->dev.power.use_autosuspend 0-1
HOST_DATA 0 dwc->gadget->dev.power.work_in_progress 0-1
HOST_DATA 0 dwc->gadget->dev.removable 0-u32max
HOST_DATA 0 dwc->speed 0-7
HOST_DATA 0 dwc->u1u2 0,512-7680[c]
LOCK2 &dwc->lock
LOCK2 bh
LOCK2 flags
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct dwc3)->lock

drivers/usb/dwc3/gadget.c dwc3_nostream_work() -> dwc3_send_gadget_generic_command()

Type Parameter Key Value
PARAM_VALUE 0 dwc 4096-ptr_max
PARAM_VALUE 0 dwc->ip 13106
PARAM_VALUE 0 dwc->revision 825241642-u32max
PARAM_VALUE 1 cmd 13
FUZZY_MAX 0 dwc->revision 825241642
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 flags
LOCK2 0 &dwc->lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct dwc3)->lock