Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 7 files:

Smatch caller information:

drivers/i3c/master/adi-i3c-master.c adi_i3c_master_handle_ibi() -> i3c_master_queue_ibi()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 1 slot 4096-ptr_max
PARAM_VALUE 1 slot->data 4096-ptr_max
PARAM_VALUE 1 slot->len 0-255
BUF_SIZE 1 slot 104
DATA_SOURCE 1 slot r i3c_generic_ibi_get_free_slot
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &master->ibi.lock
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
TYPE_LOCK (struct adi_i3c_master)->ibi.lock

drivers/i3c/master/dw-i3c-master.c dw_i3c_master_handle_ibi_sir() -> i3c_master_queue_ibi()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->ibi 4096-ptr_max
PARAM_VALUE 1 slot 4096-ptr_max
BUF_SIZE 1 slot 104
DATA_SOURCE 1 slot r i3c_generic_ibi_get_free_slot
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &master->devs_lock
LOCK2 irq
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
TYPE_LOCK (struct dw_i3c_master)->devs_lock

drivers/i3c/master/mipi-i3c-hci/dma.c hci_dma_process_ibi() -> i3c_master_queue_ibi()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->info.dyn_addr 0-1,3-255
PARAM_VALUE 1 slot 4096-ptr_max
PARAM_VALUE 1 slot->dev 4096-ptr_max
PARAM_VALUE 1 slot->dev->info.dyn_addr 0-1,3-255
BUF_SIZE 1 slot 104
CAPPED_DATA 0 dev->info.dyn_addr 1
CAPPED_DATA 1 slot->dev->info.dyn_addr 1
CAPPED_DATA 1 slot->len 1
DATA_SOURCE 0 dev r i3c_hci_addr_to_dev
DATA_SOURCE 1 slot r i3c_generic_ibi_get_free_slot
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &hci->lock
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
TYPE_LOCK (struct i3c_hci)->lock

drivers/i3c/master/svc-i3c-master.c svc_i3c_master_ibi_isr() -> i3c_master_queue_ibi()

Type Parameter Key Value
PARAM_VALUE 0 dev 1-u64max
DATA_SOURCE 0 dev r svc_i3c_master_dev_from_addr
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &master->xferqueue.lock
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct svc_i3c_master)->xferqueue.lock

drivers/i3c/master/mipi-i3c-hci/pio.c hci_pio_process_ibi() -> i3c_master_queue_ibi()

Type Parameter Key Value
PARAM_VALUE 1 slot 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &hci->lock
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
TYPE_LOCK (struct i3c_hci)->lock

drivers/i3c/master/i3c-master-cdns.c cdns_i3c_master_handle_ibi() -> i3c_master_queue_ibi()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->ibi 4096-ptr_max
PARAM_VALUE 1 slot 4096-ptr_max
PARAM_VALUE 1 slot->len 0-31
BUF_SIZE 1 slot 104
CAPPED_DATA 1 slot->len 1
DATA_SOURCE 1 slot r i3c_generic_ibi_get_free_slot
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 1 slot->len 0-31[c]
LOCK2 &master->ibi.lock
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
TYPE_LOCK (struct cdns_i3c_master)->ibi.lock