Documented in 1 files:

Defined in 1 files as a member:

Defined in 2 files as a function:

Referenced in 4 files:

Smatch caller information:

drivers/usb/gadget/udc/pch_udc.c empty_req_queue() -> complete_req()

Type Parameter Key Value
PARAM_VALUE 0 ep 4096-ptr_max
PARAM_VALUE 1 req 4096-ptr_max
PARAM_VALUE 2 sts (-108)
CAPPED_DATA 0 &ep->queue 1
DATA_SOURCE 0 ep $0
PARAM_COMPARE 0 &ep->queue != $0->queue.next
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &dev->lock
HALF_LOCKED2 flags
HALF_LOCKED2 iflags
HALF_LOCKED2 0 &ep->dev->lock
TYPE_LOCK (struct pch_udc_dev)->lock

drivers/usb/gadget/udc/pch_udc.c pch_udc_complete_receiver() -> complete_req()

Type Parameter Key Value
PARAM_VALUE 0 ep 4096-ptr_max
PARAM_VALUE 0 ep->dev 4096-ptr_max
PARAM_VALUE 0 ep->dev->prot_stall 0
PARAM_VALUE 0 ep->epsts 0
PARAM_VALUE 1 req 4096-ptr_max
PARAM_VALUE 1 req->dma_going 0
PARAM_VALUE 1 req->req.actual 0-65536
PARAM_VALUE 1 req->td_data 4096-ptr_max
PARAM_VALUE 1 req->td_data->status 0,134217728-u32max
PARAM_VALUE 1 req->td_data_last 4096-ptr_max
PARAM_VALUE 2 sts 0
CAPPED_DATA 0 &ep->queue 1
DATA_SOURCE 0 ep $0
PARAM_COMPARE 0 &ep->queue != $0->queue.next
BIT_INFO 1 req->td_data->status 0x8000000,0xffffffff
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &dev->lock
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
TYPE_LOCK (struct pch_udc_dev)->lock

drivers/usb/gadget/udc/pch_udc.c pch_udc_complete_transfer() -> complete_req()

Type Parameter Key Value
PARAM_VALUE 0 ep 4096-ptr_max
PARAM_VALUE 0 ep->epsts 0
PARAM_VALUE 1 req 4096-ptr_max
PARAM_VALUE 1 req->td_data 4096-ptr_max
PARAM_VALUE 1 req->td_data->status 3355443200
PARAM_VALUE 1 req->td_data_last 4096-ptr_max
PARAM_VALUE 1 req->td_data_last->status 3355443200
PARAM_VALUE 2 sts 0
BUF_SIZE 0 ep (-1),4864
BUF_SIZE 0 ep (-1),4864
CAPPED_DATA 0 &ep->queue 1
DATA_SOURCE 0 ep $0
PARAM_COMPARE 0 &ep->queue != $0->queue.next
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &dev->lock
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
TYPE_LOCK (struct pch_udc_dev)->lock

drivers/usb/gadget/udc/pch_udc.c pch_udc_pcd_dequeue() -> complete_req()

Type Parameter Key Value
PARAM_VALUE 0 ep 4096-ptr_max
PARAM_VALUE 0 ep->dev 4096-ptr_max
PARAM_VALUE 0 ep->num 0-15
PARAM_VALUE 1 req 4096-ptr_max
PARAM_VALUE 2 sts (-104)
CAPPED_DATA 0 &ep->queue 1
CAPPED_DATA 1 &req->queue 1
CAPPED_DATA 1 &req->req 1
PARAM_COMPARE 1 &req->queue != $1->queue.next
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 flags
LOCK2 0 &ep->dev->lock
HALF_LOCKED2 &ctx->ctx_lock
HALF_LOCKED2 &epdata->dev->lock
HALF_LOCKED2 &epdata->lock
HALF_LOCKED2 &epfile->dmabufs_mutex
HALF_LOCKED2 &epfile->ffs->eps_lock
HALF_LOCKED2 &ffs->eps_lock
HALF_LOCKED2 &port->port_lock
HALF_LOCKED2 irq
TYPE_LOCK (struct pch_udc_dev)->lock

drivers/usb/gadget/udc/pch_udc.c process_zlp() -> complete_req()

Type Parameter Key Value
PARAM_VALUE 0 ep 4096-ptr_max
PARAM_VALUE 0 ep->dev 4096-ptr_max
PARAM_VALUE 0 ep->dev->driver 1-u64max
PARAM_VALUE 0 ep->dev->gadget.dev.parent->dma_io_tlb_pools.next 4096-ptr_max
PARAM_VALUE 0 ep->dev->gadget.dev.parent->dma_io_tlb_pools.next->prev 4096-ptr_max
PARAM_VALUE 0 ep->dev->gadget.dev.parent->dma_io_tlb_pools.next->prev->prev 4096-ptr_max
PARAM_VALUE 0 ep->dev->gadget.dev.parent->dma_uses_io_tlb 1
PARAM_VALUE 0 ep->dev->gadget.dev.parent->iommu->pci_32bit_workaround 0-1
PARAM_VALUE 0 ep->dev->gadget.speed 1-u32max
PARAM_VALUE 0 ep->halted 0
PARAM_VALUE 0 ep->num 0-15
PARAM_VALUE 0 ep->queue.next 4096-ptr_max
PARAM_VALUE 1 req 4096-ptr_max
PARAM_VALUE 1 req->dma_done 0
PARAM_VALUE 1 req->queue.next 4096-ptr_max
PARAM_VALUE 2 sts 0
DATA_SOURCE 0 ep $0
DATA_SOURCE 1 req $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 iflags
HALF_LOCKED2 &cdev->lock
HALF_LOCKED2 &dev->lock
HALF_LOCKED2 &dev->lock_printer_io
HALF_LOCKED2 &epdata->dev->lock
HALF_LOCKED2 &epdata->lock
HALF_LOCKED2 &epfile->ffs->eps_lock
HALF_LOCKED2 &hidg->get_report_spinlock
HALF_LOCKED2 &midi->transmit_lock
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &port->lock
HALF_LOCKED2 &usb9pfs->lock
HALF_LOCKED2 &video->req_lock
HALF_LOCKED2 cdev_flags
HALF_LOCKED2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct pch_udc_dev)->lock

drivers/usb/gadget/udc/snps_udc_core.c empty_req_queue() -> complete_req()

Type Parameter Key Value
PARAM_VALUE 0 ep 4096-ptr_max
PARAM_VALUE 1 req 4096-ptr_max
PARAM_VALUE 2 sts (-108)
BUF_SIZE 0 ep (-1),6400
BUF_SIZE 0 ep (-1),6400
CAPPED_DATA 0 &ep->queue 1
DATA_SOURCE 0 ep $0
PARAM_COMPARE 0 &ep->queue != $0->queue.next
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &dev->lock
HALF_LOCKED2 &udc->connect_lock
HALF_LOCKED2 &udc->lock
HALF_LOCKED2 flags
HALF_LOCKED2 iflags
HALF_LOCKED2 0 &ep->dev->lock
TYPE_LOCK (struct udc)->lock

drivers/usb/gadget/udc/snps_udc_core.c udc_control_in_isr() -> complete_req()

Type Parameter Key Value
PARAM_VALUE 0 ep 4096-ptr_max
PARAM_VALUE 0 ep->dma 1-u64max
PARAM_VALUE 0 ep->regs 4096-ptr_max
PARAM_VALUE 1 req 4096-ptr_max
PARAM_VALUE 1 req->td_data 4096-ptr_max
PARAM_VALUE 1 req->td_data->status 0-1073741823
PARAM_VALUE 2 sts 0
BUF_SIZE 0 ep 6400
BUF_SIZE 0 ep 6400
CAPPED_DATA 0 &ep->queue 1
PARAM_COMPARE 0 &ep->queue != $0->queue.next
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &dev->lock
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct udc)->lock

drivers/usb/gadget/udc/snps_udc_core.c udc_control_in_isr() -> complete_req()

Type Parameter Key Value
PARAM_VALUE 0 ep 4096-ptr_max
PARAM_VALUE 0 ep->dma 0
PARAM_VALUE 1 req 4096-ptr_max
PARAM_VALUE 2 sts 0
BUF_SIZE 0 ep 6400
BUF_SIZE 0 ep 6400
CAPPED_DATA 0 &ep->queue 1
PARAM_COMPARE 0 &ep->queue != $0->queue.next
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &dev->lock
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct udc)->lock

drivers/usb/gadget/udc/snps_udc_core.c udc_data_in_isr() -> complete_req()

Type Parameter Key Value
PARAM_VALUE 0 ep 4096-ptr_max
PARAM_VALUE 0 ep->cancel_transfer 0
PARAM_VALUE 0 ep->regs 4096-ptr_max
PARAM_VALUE 1 req 4096-ptr_max
PARAM_VALUE 2 sts 0
CAPPED_DATA 0 &ep->queue 1
CAPPED_DATA 1 req->req.actual 1
CAPPED_DATA 1 req->req.length 1
PARAM_COMPARE 0 &ep->queue != $0->queue.next
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &dev->lock
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct udc)->lock

drivers/usb/gadget/udc/snps_udc_core.c udc_data_in_isr() -> complete_req()

Type Parameter Key Value
PARAM_VALUE 0 ep 4096-ptr_max
PARAM_VALUE 0 ep->cancel_transfer 0-1
PARAM_VALUE 0 ep->regs 4096-ptr_max
PARAM_VALUE 1 req 4096-ptr_max
PARAM_VALUE 2 sts 0
CAPPED_DATA 0 &ep->queue 1
PARAM_COMPARE 0 &ep->queue != $0->queue.next
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &dev->lock
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct udc)->lock

drivers/usb/gadget/udc/snps_udc_core.c udc_data_out_isr() -> complete_req()

Type Parameter Key Value
PARAM_VALUE 0 ep 4096-ptr_max
PARAM_VALUE 0 ep->queue.next 4096-ptr_max
PARAM_VALUE 0 ep->regs 4096-ptr_max
PARAM_VALUE 1 req 4096-ptr_max
PARAM_VALUE 1 req->req.status (-75)
PARAM_VALUE 1 req->req.zero 0
PARAM_VALUE 2 sts 0
CAPPED_DATA 0 &ep->queue 1
PARAM_COMPARE 0 &ep->queue != $0->queue.next
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &dev->lock
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
TYPE_LOCK (struct udc)->lock

drivers/usb/gadget/udc/snps_udc_core.c udc_data_out_isr() -> complete_req()

Type Parameter Key Value
PARAM_VALUE 0 ep 4096-ptr_max
PARAM_VALUE 0 ep->bna_occurred 0
PARAM_VALUE 0 ep->cancel_transfer 0
PARAM_VALUE 0 ep->queue.next 4096-ptr_max
PARAM_VALUE 0 ep->regs 4096-ptr_max
PARAM_VALUE 1 req 4096-ptr_max
PARAM_VALUE 1 req->dma_going 0
PARAM_VALUE 1 req->td_data 0,4096-ptr_max
PARAM_VALUE 2 sts 0
CAPPED_DATA 0 &ep->queue 1
PARAM_COMPARE 0 &ep->queue != $0->queue.next
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &dev->lock
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
TYPE_LOCK (struct udc)->lock

drivers/usb/gadget/udc/snps_udc_core.c udc_dequeue() -> complete_req()

Type Parameter Key Value
PARAM_VALUE 0 ep 4096-ptr_max
PARAM_VALUE 0 ep->cancel_transfer 0-1
PARAM_VALUE 0 ep->halted 1
PARAM_VALUE 1 req 4096-ptr_max
PARAM_VALUE 2 sts (-104)
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 iflags
LOCK2 0 &ep->dev->lock
HALF_LOCKED2 &ctx->ctx_lock
HALF_LOCKED2 &epdata->dev->lock
HALF_LOCKED2 &epdata->lock
HALF_LOCKED2 &epfile->dmabufs_mutex
HALF_LOCKED2 &epfile->ffs->eps_lock
HALF_LOCKED2 &ffs->eps_lock
HALF_LOCKED2 &port->port_lock
HALF_LOCKED2 irq
TYPE_LOCK (struct udc)->lock

drivers/usb/gadget/udc/snps_udc_core.c udc_queue() -> complete_req()

Type Parameter Key Value
PARAM_VALUE 0 ep 4096-ptr_max
PARAM_VALUE 0 ep->dev 4096-ptr_max
PARAM_VALUE 0 ep->dev->driver 1-u64max
PARAM_VALUE 0 ep->dev->gadget.speed 1-u32max
PARAM_VALUE 0 ep->queue.next 4096-ptr_max
PARAM_VALUE 1 req 4096-ptr_max
PARAM_VALUE 1 req->dma_done 0
PARAM_VALUE 1 req->queue.next 4096-ptr_max
PARAM_VALUE 2 sts 0
CAPPED_DATA 0 &ep->queue 1
CAPPED_DATA 1 &req->queue 1
PARAM_COMPARE 0 &ep->queue == $0->queue.next
PARAM_COMPARE 1 &req->queue == $1->queue.next
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &dev->lock
LOCK2 iflags
HALF_LOCKED2 &cdev->lock
HALF_LOCKED2 &dev->lock
HALF_LOCKED2 &dev->lock_printer_io
HALF_LOCKED2 &epdata->dev->lock
HALF_LOCKED2 &epdata->lock
HALF_LOCKED2 &epfile->ffs->eps_lock
HALF_LOCKED2 &hidg->get_report_spinlock
HALF_LOCKED2 &midi->transmit_lock
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &port->lock
HALF_LOCKED2 &usb9pfs->lock
HALF_LOCKED2 &video->req_lock
HALF_LOCKED2 cdev_flags
HALF_LOCKED2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct udc)->lock

drivers/usb/gadget/udc/snps_udc_core.c udc_queue() -> complete_req()

Type Parameter Key Value
PARAM_VALUE 0 ep 4096-ptr_max
PARAM_VALUE 0 ep->bna_occurred 0-1
PARAM_VALUE 0 ep->dev 4096-ptr_max
PARAM_VALUE 0 ep->dev->driver 1-u64max
PARAM_VALUE 0 ep->dev->gadget.speed 1-u32max
PARAM_VALUE 0 ep->in 0
PARAM_VALUE 0 ep->naking 0-1
PARAM_VALUE 0 ep->queue.prev 4096-ptr_max
PARAM_VALUE 0 ep->queue.prev->next 4096-ptr_max
PARAM_VALUE 0 ep->queue.prev->next->next 4096-ptr_max
PARAM_VALUE 0 ep->regs 4096-ptr_max
PARAM_VALUE 1 req 4096-ptr_max
PARAM_VALUE 1 req->dma_done 0
PARAM_VALUE 1 req->queue.next 4096-ptr_max
PARAM_VALUE 1 req->req.status (-75)
PARAM_VALUE 1 req->req.zero 0
PARAM_VALUE 2 sts 0
CAPPED_DATA 0 &ep->queue 1
CAPPED_DATA 1 &req->queue 1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &dev->lock
LOCK2 iflags
HALF_LOCKED2 &cdev->lock
HALF_LOCKED2 &dev->lock
HALF_LOCKED2 &dev->lock_printer_io
HALF_LOCKED2 &epdata->dev->lock
HALF_LOCKED2 &epdata->lock
HALF_LOCKED2 &epfile->ffs->eps_lock
HALF_LOCKED2 &hidg->get_report_spinlock
HALF_LOCKED2 &midi->transmit_lock
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &port->lock
HALF_LOCKED2 &usb9pfs->lock
HALF_LOCKED2 &video->req_lock
HALF_LOCKED2 cdev_flags
HALF_LOCKED2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct udc)->lock