Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 4 files:

Smatch caller information:

drivers/usb/dwc2/hcd_ddma.c dwc2_hcd_complete_xfer_ddma() -> dwc2_hcd_queue_transactions()

Type Parameter Key Value
PARAM_VALUE 0 hsotg 4096-ptr_max
PARAM_VALUE 0 hsotg->dev->dma_io_tlb_mem->can_grow 0-1
PARAM_VALUE 0 hsotg->dev->iommu->pci_32bit_workaround 0-1
PARAM_VALUE 0 hsotg->hc_ptr_array 4096-ptr_max
PARAM_VALUE 0 hsotg->lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 hsotg->periodic_sched_assigned.prev 4096-ptr_max
PARAM_VALUE 0 hsotg->periodic_sched_assigned.prev->next 4096-ptr_max
PARAM_VALUE 0 hsotg->periodic_sched_assigned.prev->next->next 4096-ptr_max
PARAM_VALUE 1 tr_type 1-3
DATA_SOURCE 0 hsotg $0
FUZZY_MAX 1 tr_type 3
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 hsotg->unaligned_cache->object_size
LOCK2 0 &hsotg->lock
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct dwc2_hsotg)->lock

drivers/usb/dwc2/hcd_queue.c dwc2_wait_timer_fn() -> dwc2_hcd_queue_transactions()

Type Parameter Key Value
PARAM_VALUE 0 hsotg 4096-ptr_max
PARAM_VALUE 0 hsotg->dev->iommu->pci_32bit_workaround 0-1
PARAM_VALUE 0 hsotg->free_hc_list.prev 4096-ptr_max
PARAM_VALUE 0 hsotg->free_hc_list.prev->next 4096-ptr_max
PARAM_VALUE 0 hsotg->free_hc_list.prev->next->next 4096-ptr_max
PARAM_VALUE 0 hsotg->non_periodic_sched_inactive.next 4096-ptr_max
PARAM_VALUE 0 hsotg->periodic_sched_assigned.prev 4096-ptr_max
PARAM_VALUE 0 hsotg->periodic_sched_assigned.prev->next 4096-ptr_max
PARAM_VALUE 0 hsotg->periodic_sched_assigned.prev->next->next 4096-ptr_max
PARAM_VALUE 1 tr_type 1-3
DATA_SOURCE 1 tr_type r dwc2_hcd_select_transactions
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 flags
LOCK2 0 &hsotg->lock
HALF_LOCKED2 irq
TYPE_LOCK (struct dwc2_hsotg)->lock

drivers/usb/dwc2/hcd.c _dwc2_hcd_clear_tt_buffer_complete() -> dwc2_hcd_queue_transactions()

Type Parameter Key Value
PARAM_VALUE 0 hsotg 4096-ptr_max
PARAM_VALUE 0 hsotg->flags.b.port_connect_status 1
PARAM_VALUE 1 tr_type 3
DATA_SOURCE 0 hsotg r dwc2_hcd_to_hsotg
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 flags
LOCK2 0 &hsotg->lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct dwc2_hsotg)->lock

drivers/usb/dwc2/hcd.c dwc2_hcd_urb_enqueue() -> dwc2_hcd_queue_transactions()

Type Parameter Key Value
PARAM_VALUE 0 hsotg 4096-ptr_max
PARAM_VALUE 0 hsotg->dev->iommu->pci_32bit_workaround 0-1
PARAM_VALUE 0 hsotg->flags.b.port_connect_status 1
PARAM_VALUE 0 hsotg->free_hc_list.prev 4096-ptr_max
PARAM_VALUE 0 hsotg->free_hc_list.prev->next 4096-ptr_max
PARAM_VALUE 0 hsotg->free_hc_list.prev->next->next 4096-ptr_max
PARAM_VALUE 0 hsotg->non_periodic_sched_inactive.prev 4096-ptr_max
PARAM_VALUE 0 hsotg->non_periodic_sched_inactive.prev->next 4096-ptr_max
PARAM_VALUE 0 hsotg->non_periodic_sched_inactive.prev->next->next 4096-ptr_max
PARAM_VALUE 0 hsotg->non_periodic_sched_waiting.prev 4096-ptr_max
PARAM_VALUE 0 hsotg->non_periodic_sched_waiting.prev->next 4096-ptr_max
PARAM_VALUE 0 hsotg->non_periodic_sched_waiting.prev->next->next 4096-ptr_max
PARAM_VALUE 0 hsotg->periodic_channels s32min-254
PARAM_VALUE 0 hsotg->periodic_sched_assigned.prev 4096-ptr_max
PARAM_VALUE 0 hsotg->periodic_sched_assigned.prev->next 4096-ptr_max
PARAM_VALUE 0 hsotg->periodic_sched_assigned.prev->next->next 4096-ptr_max
PARAM_VALUE 0 hsotg->periodic_sched_inactive.prev 4096-ptr_max
PARAM_VALUE 0 hsotg->periodic_sched_inactive.prev->next 4096-ptr_max
PARAM_VALUE 0 hsotg->periodic_sched_inactive.prev->next->next 4096-ptr_max
PARAM_VALUE 0 hsotg->periodic_sched_ready.prev 4096-ptr_max
PARAM_VALUE 0 hsotg->periodic_sched_ready.prev->next 4096-ptr_max
PARAM_VALUE 0 hsotg->periodic_sched_ready.prev->next->next 4096-ptr_max
PARAM_VALUE 1 tr_type 1-3
DATA_SOURCE 0 hsotg $0
DATA_SOURCE 1 tr_type r dwc2_hcd_select_transactions
PREEMPT_ADD
NOCHECK_CALL
LOCK2 flags
LOCK2 0 &hsotg->lock
TYPE_LOCK (struct dwc2_hsotg)->lock

drivers/usb/dwc2/hcd_intr.c dwc2_np_tx_fifo_empty_intr() -> dwc2_hcd_queue_transactions()

Type Parameter Key Value
PARAM_VALUE 0 hsotg 4096-ptr_max
PARAM_VALUE 0 hsotg->lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 tr_type 2
DATA_SOURCE 0 hsotg $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 0 &hsotg->lock
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct dwc2_hsotg)->lock

drivers/usb/dwc2/hcd_intr.c dwc2_perio_tx_fifo_empty_intr() -> dwc2_hcd_queue_transactions()

Type Parameter Key Value
PARAM_VALUE 0 hsotg 4096-ptr_max
PARAM_VALUE 0 hsotg->lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 tr_type 1
DATA_SOURCE 0 hsotg $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 0 &hsotg->lock
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct dwc2_hsotg)->lock

drivers/usb/dwc2/hcd_intr.c dwc2_release_channel() -> dwc2_hcd_queue_transactions()

Type Parameter Key Value
PARAM_VALUE 0 hsotg 4096-ptr_max
PARAM_VALUE 0 hsotg->dev->dma_io_tlb_mem->can_grow 0-1
PARAM_VALUE 0 hsotg->dev->iommu->pci_32bit_workaround 0-1
PARAM_VALUE 0 hsotg->free_hc_list.prev 4096-ptr_max
PARAM_VALUE 0 hsotg->free_hc_list.prev->next 4096-ptr_max
PARAM_VALUE 0 hsotg->free_hc_list.prev->next->next 4096-ptr_max
PARAM_VALUE 0 hsotg->hc_ptr_array 4096-ptr_max
PARAM_VALUE 0 hsotg->non_periodic_sched_inactive.prev 4096-ptr_max
PARAM_VALUE 0 hsotg->non_periodic_sched_inactive.prev->next 4096-ptr_max
PARAM_VALUE 0 hsotg->non_periodic_sched_inactive.prev->next->next 4096-ptr_max
PARAM_VALUE 0 hsotg->non_periodic_sched_waiting.prev 4096-ptr_max
PARAM_VALUE 0 hsotg->non_periodic_sched_waiting.prev->next 4096-ptr_max
PARAM_VALUE 0 hsotg->non_periodic_sched_waiting.prev->next->next 4096-ptr_max
PARAM_VALUE 0 hsotg->periodic_sched_assigned.prev 4096-ptr_max
PARAM_VALUE 0 hsotg->periodic_sched_assigned.prev->next 4096-ptr_max
PARAM_VALUE 0 hsotg->periodic_sched_assigned.prev->next->next 4096-ptr_max
PARAM_VALUE 0 hsotg->periodic_sched_inactive.prev 4096-ptr_max
PARAM_VALUE 0 hsotg->periodic_sched_inactive.prev->next 4096-ptr_max
PARAM_VALUE 0 hsotg->periodic_sched_inactive.prev->next->next 4096-ptr_max
PARAM_VALUE 0 hsotg->periodic_sched_ready.prev 4096-ptr_max
PARAM_VALUE 0 hsotg->periodic_sched_ready.prev->next 4096-ptr_max
PARAM_VALUE 0 hsotg->periodic_sched_ready.prev->next->next 4096-ptr_max
PARAM_VALUE 1 tr_type 1-3
DATA_SOURCE 0 hsotg $0
DATA_SOURCE 1 tr_type r dwc2_hcd_select_transactions
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 hsotg->unaligned_cache->object_size
LOCK2 0 &hsotg->lock
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct dwc2_hsotg)->lock

drivers/usb/dwc2/hcd_intr.c dwc2_sof_intr() -> dwc2_hcd_queue_transactions()

Type Parameter Key Value
PARAM_VALUE 0 hsotg 4096-ptr_max
PARAM_VALUE 0 hsotg->dev->iommu->pci_32bit_workaround 0-1
PARAM_VALUE 0 hsotg->dumped_frame_num_array s32min-(-1),1-s32max
PARAM_VALUE 0 hsotg->frame_num_idx s32min-1000
PARAM_VALUE 0 hsotg->free_hc_list.prev 4096-ptr_max
PARAM_VALUE 0 hsotg->free_hc_list.prev->next 4096-ptr_max
PARAM_VALUE 0 hsotg->free_hc_list.prev->next->next 4096-ptr_max
PARAM_VALUE 0 hsotg->lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 hsotg->periodic_sched_assigned.prev 4096-ptr_max
PARAM_VALUE 0 hsotg->periodic_sched_assigned.prev->next 4096-ptr_max
PARAM_VALUE 0 hsotg->periodic_sched_assigned.prev->next->next 4096-ptr_max
PARAM_VALUE 1 tr_type 1-3
CAPPED_DATA 0 &hsotg->periodic_sched_inactive 1
DATA_SOURCE 0 hsotg $0
DATA_SOURCE 1 tr_type r dwc2_hcd_select_transactions
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 0 &hsotg->lock
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct dwc2_hsotg)->lock