Defined in 1 files as a prototype:
Defined in 1 files as a function:
Referenced in 2 files:
Smatch caller information:
drivers/usb/gadget/udc/cdns2/cdns2-gadget.c cdns2_gadget_ep_dequeue() -> cdns2_gadget_giveback()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | pep | 4096-ptr_max |
| PARAM_VALUE | 0 | pep->endpoint.desc | 1-u64max |
| PARAM_VALUE | 1 | preq | 4096-ptr_max |
| PARAM_VALUE | 2 | status | (-104) |
| CAPPED_DATA | 0 | &pep->pending_list | 1 |
| CAPPED_DATA | 1 | preq | 1 |
| BIT_INFO | 0 | pep->ep_state | 0x1,0xffffffffffffffff |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | flags | ||
| LOCK2 | 0 | &pep->pdev->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 cdns2_device)->lock |
drivers/usb/gadget/udc/cdns2/cdns2-gadget.c cdns2_gadget_ep_disable() -> cdns2_gadget_giveback()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | pep | 4096-ptr_max |
| PARAM_VALUE | 0 | pep->pdev | 4096-ptr_max |
| PARAM_VALUE | 0 | pep->pdev->adma_regs | 4096-ptr_max |
| PARAM_VALUE | 1 | preq | 4096-ptr_max |
| PARAM_VALUE | 2 | status | (-108) |
| CAPPED_DATA | 0 | &pep->pending_list | 1 |
| DATA_SOURCE | 1 | preq | r cdns2_next_preq |
| PARAM_COMPARE | 0 | &pep->pending_list | != $0->pending_list.next |
| BIT_INFO | 0 | pep->ep_state | 0x1,0xffffffffffffffff |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &pdev->lock | ||
| LOCK2 | flags | ||
| HALF_LOCKED2 | &data->lock | ||
| HALF_LOCKED2 | &dev->lock | ||
| HALF_LOCKED2 | &ep->lock | ||
| HALF_LOCKED2 | &func->ffs->eps_lock | ||
| HALF_LOCKED2 | &port->lock | ||
| HALF_LOCKED2 | flags | ||
| TYPE_LOCK | (struct cdns2_device)->lock |
drivers/usb/gadget/udc/cdns2/cdns2-gadget.c cdns2_gadget_ep_disable() -> cdns2_gadget_giveback()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | pep | 4096-ptr_max |
| PARAM_VALUE | 0 | pep->pdev | 4096-ptr_max |
| PARAM_VALUE | 0 | pep->pdev->adma_regs | 4096-ptr_max |
| PARAM_VALUE | 1 | preq | 4096-ptr_max |
| PARAM_VALUE | 2 | status | (-108) |
| CAPPED_DATA | 0 | &pep->deferred_list | 1 |
| CAPPED_DATA | 0 | &pep->pending_list | 1 |
| DATA_SOURCE | 1 | preq | r cdns2_next_preq |
| PARAM_COMPARE | 0 | &pep->deferred_list | != $0->deferred_list.next |
| BIT_INFO | 0 | pep->ep_state | 0x1,0xffffffffffffffff |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &pdev->lock | ||
| LOCK2 | flags | ||
| HALF_LOCKED2 | &data->lock | ||
| HALF_LOCKED2 | &dev->lock | ||
| HALF_LOCKED2 | &ep->lock | ||
| HALF_LOCKED2 | &func->ffs->eps_lock | ||
| HALF_LOCKED2 | &port->lock | ||
| HALF_LOCKED2 | flags | ||
| TYPE_LOCK | (struct cdns2_device)->lock |
drivers/usb/gadget/udc/cdns2/cdns2-gadget.c cdns2_skip_isoc_td() -> cdns2_gadget_giveback()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | pep | 4096-ptr_max |
| PARAM_VALUE | 0 | pep->pdev | 4096-ptr_max |
| PARAM_VALUE | 0 | pep->pdev->adma_regs | 4096-ptr_max |
| PARAM_VALUE | 0 | pep->skip | 1 |
| PARAM_VALUE | 1 | preq | 4096-ptr_max |
| PARAM_VALUE | 1 | preq->list.next->next | 4096-ptr_max |
| PARAM_VALUE | 1 | preq->list.next->prev | 4096-ptr_max |
| PARAM_VALUE | 1 | preq->list.prev->next | 4096-ptr_max |
| PARAM_VALUE | 1 | preq->list.prev->prev | 4096-ptr_max |
| PARAM_VALUE | 2 | status | 0 |
| CAPPED_DATA | 1 | preq->num_of_trb | 1 |
| DATA_SOURCE | 0 | pep | $1 |
| DATA_SOURCE | 1 | preq | $2 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &pdev->lock | ||
| LOCK2 | bh | ||
| LOCK2 | flags | ||
| HALF_LOCKED2 | _T->lock | ||
| TYPE_LOCK | (struct cdns2_device)->lock |
drivers/usb/gadget/udc/cdns2/cdns2-gadget.c cdns2_transfer_completed() -> cdns2_gadget_giveback()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | pep | 4096-ptr_max |
| PARAM_VALUE | 0 | pep->pdev | 4096-ptr_max |
| PARAM_VALUE | 0 | pep->pdev->adma_regs | 4096-ptr_max |
| PARAM_VALUE | 1 | preq | 4096-ptr_max |
| PARAM_VALUE | 1 | preq->list.next->prev | 4096-ptr_max |
| PARAM_VALUE | 1 | preq->list.prev->next | 4096-ptr_max |
| PARAM_VALUE | 2 | status | 0 |
| CAPPED_DATA | 0 | &pep->pending_list | 1 |
| CAPPED_DATA | 1 | preq->end_trb | 1 |
| CAPPED_DATA | 1 | preq->num_of_trb | 1 |
| DATA_SOURCE | 0 | pep | $1 |
| DATA_SOURCE | 1 | preq | r cdns2_next_preq |
| PARAM_COMPARE | 0 | &pep->pending_list | != $0->pending_list.next |
| PARAM_COMPARE | 1 | preq->end_trb | <= $1->start_trb |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &pdev->lock | ||
| LOCK2 | bh | ||
| LOCK2 | flags | ||
| HALF_LOCKED2 | _T->lock | ||
| TYPE_LOCK | (struct cdns2_device)->lock |
drivers/usb/gadget/udc/cdns2/cdns2-ep0.c cdns2_ep0_stall() -> cdns2_gadget_giveback()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | pep | 4096-ptr_max |
| PARAM_VALUE | 1 | preq | 4096-ptr_max |
| PARAM_VALUE | 2 | status | (-104) |
| BUF_SIZE | 0 | pep | 6200 |
| BUF_SIZE | 0 | pep | 6200 |
| DATA_SOURCE | 1 | preq | r cdns2_next_preq |
| PARAM_COMPARE | 0 | &pep->pending_list | != $0->pending_list.next |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &pdev->lock | ||
| HALF_LOCKED2 | bh | ||
| HALF_LOCKED2 | flags | ||
| TYPE_LOCK | (struct cdns2_device)->lock |
drivers/usb/gadget/udc/cdns2/cdns2-ep0.c cdns2_handle_setup_packet() -> cdns2_gadget_giveback()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | pep | 4096-ptr_max |
| PARAM_VALUE | 0 | pep->ep_state | 0-4294967293 |
| PARAM_VALUE | 1 | preq | 4096-ptr_max |
| PARAM_VALUE | 2 | status | (-104) |
| BUF_SIZE | 0 | pep | 6200 |
| BUF_SIZE | 0 | pep | 6200 |
| CAPPED_DATA | 0 | &pep->pending_list | 1 |
| DATA_SOURCE | 1 | preq | r cdns2_next_preq |
| PARAM_COMPARE | 0 | &pep->pending_list | != $0->pending_list.next |
| BIT_INFO | 0 | pep->ep_state | 0x0,0xfffffffd |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &pdev->lock | ||
| LOCK2 | bh | ||
| LOCK2 | flags | ||
| HALF_LOCKED2 | _T->lock | ||
| TYPE_LOCK | (struct cdns2_device)->lock |
drivers/usb/gadget/udc/cdns2/cdns2-ep0.c cdns2_transfer_completed() -> cdns2_gadget_giveback()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | pep | 4096-ptr_max |
| PARAM_VALUE | 0 | pep->ring.trbs | 4096-ptr_max |
| PARAM_VALUE | 1 | preq | 4096-ptr_max |
| PARAM_VALUE | 1 | preq->request.actual | 0-131071 |
| PARAM_VALUE | 2 | status | 0 |
| BUF_SIZE | 0 | pep | 6200 |
| BUF_SIZE | 0 | pep | 6200 |
| CAPPED_DATA | 0 | &pep->pending_list | 1 |
| DATA_SOURCE | 1 | preq | r cdns2_next_preq |
| PARAM_COMPARE | 0 | &pep->pending_list | != $0->pending_list.next |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &pdev->lock | ||
| LOCK2 | bh | ||
| LOCK2 | flags | ||
| HALF_LOCKED2 | _T->lock | ||
| TYPE_LOCK | (struct cdns2_device)->lock |