Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/dma/dma-axi-dmac.c axi_dmac_detect_caps() -> axi_dmac_write()

Type Parameter Key Value
PARAM_VALUE 0 axi_dmac 4096-ptr_max
PARAM_VALUE 0 axi_dmac->base 4096-ptr_max
PARAM_VALUE 1 reg 1036
PARAM_VALUE 2 val 1
BUF_SIZE 0 axi_dmac 944
BUF_SIZE 0 axi_dmac->irq s32min-(-1),1-s32max
DATA_SOURCE 0 axi_dmac $0
MEM_ZERO 0 axi_dmac
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/dma/dma-axi-dmac.c axi_dmac_detect_caps() -> axi_dmac_write()

Type Parameter Key Value
PARAM_VALUE 0 axi_dmac 4096-ptr_max
PARAM_VALUE 0 axi_dmac->base 4096-ptr_max
PARAM_VALUE 1 reg 1148
PARAM_VALUE 2 val u32max
BUF_SIZE 0 axi_dmac 944
BUF_SIZE 0 axi_dmac->irq s32min-(-1),1-s32max
DATA_SOURCE 0 axi_dmac $0
MEM_ZERO 0 axi_dmac
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/dma/dma-axi-dmac.c axi_dmac_detect_caps() -> axi_dmac_write()

Type Parameter Key Value
PARAM_VALUE 0 axi_dmac 4096-ptr_max
PARAM_VALUE 0 axi_dmac->base 4096-ptr_max
PARAM_VALUE 1 reg 1052
PARAM_VALUE 2 val 1
BUF_SIZE 0 axi_dmac 944
BUF_SIZE 0 axi_dmac->irq s32min-(-1),1-s32max
DATA_SOURCE 0 axi_dmac $0
MEM_ZERO 0 axi_dmac
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/dma/dma-axi-dmac.c axi_dmac_detect_caps() -> axi_dmac_write()

Type Parameter Key Value
PARAM_VALUE 0 axi_dmac 4096-ptr_max
PARAM_VALUE 0 axi_dmac->base 4096-ptr_max
PARAM_VALUE 1 reg 1048
PARAM_VALUE 2 val u32max
BUF_SIZE 0 axi_dmac 944
BUF_SIZE 0 axi_dmac->irq s32min-(-1),1-s32max
DATA_SOURCE 0 axi_dmac $0
MEM_ZERO 0 axi_dmac
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/dma/dma-axi-dmac.c axi_dmac_detect_caps() -> axi_dmac_write()

Type Parameter Key Value
PARAM_VALUE 0 axi_dmac 4096-ptr_max
PARAM_VALUE 0 axi_dmac->base 4096-ptr_max
PARAM_VALUE 1 reg 1040
PARAM_VALUE 2 val u32max
BUF_SIZE 0 axi_dmac 944
BUF_SIZE 0 axi_dmac->irq s32min-(-1),1-s32max
DATA_SOURCE 0 axi_dmac $0
MEM_ZERO 0 axi_dmac
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/dma/dma-axi-dmac.c axi_dmac_detect_caps() -> axi_dmac_write()

Type Parameter Key Value
PARAM_VALUE 0 axi_dmac 4096-ptr_max
PARAM_VALUE 0 axi_dmac->base 4096-ptr_max
PARAM_VALUE 1 reg 1044
PARAM_VALUE 2 val u32max
BUF_SIZE 0 axi_dmac 944
BUF_SIZE 0 axi_dmac->irq s32min-(-1),1-s32max
DATA_SOURCE 0 axi_dmac $0
MEM_ZERO 0 axi_dmac
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/dma/dma-axi-dmac.c axi_dmac_detect_caps() -> axi_dmac_write()

Type Parameter Key Value
PARAM_VALUE 0 axi_dmac 4096-ptr_max
PARAM_VALUE 0 axi_dmac->base 4096-ptr_max
PARAM_VALUE 1 reg 1168
PARAM_VALUE 2 val u32max
BUF_SIZE 0 axi_dmac 944
BUF_SIZE 0 axi_dmac->irq s32min-(-1),1-s32max
DATA_SOURCE 0 axi_dmac $0
MEM_ZERO 0 axi_dmac
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/dma/dma-axi-dmac.c axi_dmac_detect_caps() -> axi_dmac_write()

Type Parameter Key Value
PARAM_VALUE 0 axi_dmac 4096-ptr_max
PARAM_VALUE 0 axi_dmac->base 4096-ptr_max
PARAM_VALUE 1 reg 1172
PARAM_VALUE 2 val u32max
BUF_SIZE 0 axi_dmac 944
BUF_SIZE 0 axi_dmac->irq s32min-(-1),1-s32max
DATA_SOURCE 0 axi_dmac $0
MEM_ZERO 0 axi_dmac
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/dma/dma-axi-dmac.c axi_dmac_detect_caps() -> axi_dmac_write()

Type Parameter Key Value
PARAM_VALUE 0 axi_dmac 4096-ptr_max
PARAM_VALUE 0 axi_dmac->base 4096-ptr_max
PARAM_VALUE 1 reg 1048
PARAM_VALUE 2 val 0
BUF_SIZE 0 axi_dmac 944
BUF_SIZE 0 axi_dmac->irq s32min-(-1),1-s32max
DATA_SOURCE 0 axi_dmac $0
MEM_ZERO 0 axi_dmac
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/dma/dma-axi-dmac.c axi_dmac_get_next_desc() -> axi_dmac_write()

Type Parameter Key Value
PARAM_VALUE 0 axi_dmac 4096-ptr_max
PARAM_VALUE 1 reg 1036
PARAM_VALUE 2 val 0,2-2147483646
DATA_SOURCE 0 axi_dmac $0
BIT_INFO 2 val 0x0,0x7ffffffe
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 2 val 0,2-2147483646[c]
HALF_LOCKED2 &chan->vchan.lock
HALF_LOCKED2 &dmac->chan.vchan.lock
HALF_LOCKED2 flags
TYPE_LOCK (struct virt_dma_chan)->lock

drivers/dma/dma-axi-dmac.c axi_dmac_handle_cyclic_eot() -> axi_dmac_write()

Type Parameter Key Value
PARAM_VALUE 0 axi_dmac 4096-ptr_max
PARAM_VALUE 1 reg 1024
PARAM_VALUE 2 val 0
DATA_SOURCE 0 axi_dmac r chan_to_axi_dmac
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &dmac->chan.vchan.lock
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
TYPE_LOCK (struct virt_dma_chan)->lock

drivers/dma/dma-axi-dmac.c axi_dmac_handle_cyclic_eot() -> axi_dmac_write()

Type Parameter Key Value
PARAM_VALUE 0 axi_dmac 4096-ptr_max
PARAM_VALUE 1 reg 1024
PARAM_VALUE 2 val 1
DATA_SOURCE 0 axi_dmac r chan_to_axi_dmac
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &dmac->chan.vchan.lock
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
TYPE_LOCK (struct virt_dma_chan)->lock

drivers/dma/dma-axi-dmac.c axi_dmac_interrupt_handler() -> axi_dmac_write()

Type Parameter Key Value
PARAM_VALUE 0 axi_dmac 4096-ptr_max
PARAM_VALUE 1 reg 132
PARAM_VALUE 2 val 1-u32max
DATA_SOURCE 0 axi_dmac $1
DATA_SOURCE 2 val r axi_dmac_read
BIT_INFO 2 val 0x0,0x7fffffff
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 2 val 1-s32max
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 flags

drivers/dma/dma-axi-dmac.c axi_dmac_issue_pending() -> axi_dmac_write()

Type Parameter Key Value
PARAM_VALUE 0 axi_dmac 4096-ptr_max
PARAM_VALUE 1 reg 1024
PARAM_VALUE 2 val 1,5
DATA_SOURCE 0 axi_dmac r chan_to_axi_dmac
FUZZY_MAX 2 val 1
BIT_INFO 2 val 0x1,0x5
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &ctlr->io_mutex
HALF_LOCKED2 &host->io_mutex
HALF_LOCKED2 rcu_read

drivers/dma/dma-axi-dmac.c axi_dmac_probe() -> axi_dmac_write()

Type Parameter Key Value
PARAM_VALUE 0 axi_dmac 4096-ptr_max
PARAM_VALUE 0 axi_dmac->base 4096-ptr_max
PARAM_VALUE 1 reg 128
PARAM_VALUE 2 val 0-1
BUF_SIZE 0 axi_dmac 944
BUF_SIZE 0 axi_dmac->irq s32min-(-1),1-s32max
DATA_SOURCE 0 axi_dmac r devm_kzalloc
FUZZY_MAX 2 val 0
MEM_ZERO 0 axi_dmac
MEM_ZERO 0 axi_dmac->chan.active_descs.next
MEM_ZERO 0 axi_dmac->chan.active_descs.prev
MEM_ZERO 0 axi_dmac->chan.next_desc
MEM_ZERO 0 axi_dmac->chan.pool
MEM_ZERO 0 axi_dmac->chan.vchan.chan.dbg_client_name
MEM_ZERO 0 axi_dmac->chan.vchan.chan.dev
MEM_ZERO 0 axi_dmac->chan.vchan.chan.device
MEM_ZERO 0 axi_dmac->chan.vchan.chan.device_node.next
MEM_ZERO 0 axi_dmac->chan.vchan.chan.device_node.prev
MEM_ZERO 0 axi_dmac->chan.vchan.chan.local
MEM_ZERO 0 axi_dmac->chan.vchan.chan.name
MEM_ZERO 0 axi_dmac->chan.vchan.chan.private
MEM_ZERO 0 axi_dmac->chan.vchan.chan.route_data
MEM_ZERO 0 axi_dmac->chan.vchan.chan.router
MEM_ZERO 0 axi_dmac->chan.vchan.chan.slave
MEM_ZERO 0 axi_dmac->chan.vchan.cyclic
MEM_ZERO 0 axi_dmac->chan.vchan.desc_allocated.next
MEM_ZERO 0 axi_dmac->chan.vchan.desc_allocated.prev
MEM_ZERO 0 axi_dmac->chan.vchan.desc_completed.next
MEM_ZERO 0 axi_dmac->chan.vchan.desc_completed.prev
MEM_ZERO 0 axi_dmac->chan.vchan.desc_free
MEM_ZERO 0 axi_dmac->chan.vchan.desc_issued.next
MEM_ZERO 0 axi_dmac->chan.vchan.desc_issued.prev
MEM_ZERO 0 axi_dmac->chan.vchan.desc_submitted.next
MEM_ZERO 0 axi_dmac->chan.vchan.desc_submitted.prev
MEM_ZERO 0 axi_dmac->chan.vchan.desc_terminated.next
MEM_ZERO 0 axi_dmac->chan.vchan.desc_terminated.prev
MEM_ZERO 0 axi_dmac->chan.vchan.task.next
MEM_ZERO 0 axi_dmac->dma_dev.dev
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 0 axi_dmac->chan.length_align_mask 0-s32max
HOST_DATA 0 axi_dmac->chan.max_length 0-s32max

drivers/dma/dma-axi-dmac.c axi_dmac_start_transfer() -> axi_dmac_write()

Type Parameter Key Value
PARAM_VALUE 0 axi_dmac 4096-ptr_max
PARAM_VALUE 1 reg 1040
DATA_SOURCE 0 axi_dmac r chan_to_axi_dmac
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 2 val unit_byte
HALF_LOCKED2 &chan->vchan.lock
HALF_LOCKED2 &dmac->chan.vchan.lock
HALF_LOCKED2 flags
TYPE_LOCK (struct virt_dma_chan)->lock

drivers/dma/dma-axi-dmac.c axi_dmac_start_transfer() -> axi_dmac_write()

Type Parameter Key Value
PARAM_VALUE 0 axi_dmac 4096-ptr_max
PARAM_VALUE 1 reg 1168
DATA_SOURCE 0 axi_dmac r chan_to_axi_dmac
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &chan->vchan.lock
HALF_LOCKED2 &dmac->chan.vchan.lock
HALF_LOCKED2 flags
TYPE_LOCK (struct virt_dma_chan)->lock

drivers/dma/dma-axi-dmac.c axi_dmac_start_transfer() -> axi_dmac_write()

Type Parameter Key Value
PARAM_VALUE 0 axi_dmac 4096-ptr_max
PARAM_VALUE 1 reg 1056
DATA_SOURCE 0 axi_dmac r chan_to_axi_dmac
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 2 val unit_byte
HALF_LOCKED2 &chan->vchan.lock
HALF_LOCKED2 &dmac->chan.vchan.lock
HALF_LOCKED2 flags
TYPE_LOCK (struct virt_dma_chan)->lock

drivers/dma/dma-axi-dmac.c axi_dmac_start_transfer() -> axi_dmac_write()

Type Parameter Key Value
PARAM_VALUE 0 axi_dmac 4096-ptr_max
PARAM_VALUE 1 reg 1044
DATA_SOURCE 0 axi_dmac r chan_to_axi_dmac
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 2 val unit_byte
HALF_LOCKED2 &chan->vchan.lock
HALF_LOCKED2 &dmac->chan.vchan.lock
HALF_LOCKED2 flags
TYPE_LOCK (struct virt_dma_chan)->lock

drivers/dma/dma-axi-dmac.c axi_dmac_start_transfer() -> axi_dmac_write()

Type Parameter Key Value
PARAM_VALUE 0 axi_dmac 4096-ptr_max
PARAM_VALUE 1 reg 1172
DATA_SOURCE 0 axi_dmac r chan_to_axi_dmac
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &chan->vchan.lock
HALF_LOCKED2 &dmac->chan.vchan.lock
HALF_LOCKED2 flags
TYPE_LOCK (struct virt_dma_chan)->lock

drivers/dma/dma-axi-dmac.c axi_dmac_start_transfer() -> axi_dmac_write()

Type Parameter Key Value
PARAM_VALUE 0 axi_dmac 4096-ptr_max
PARAM_VALUE 1 reg 1060
DATA_SOURCE 0 axi_dmac r chan_to_axi_dmac
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 2 val unit_byte
HALF_LOCKED2 &chan->vchan.lock
HALF_LOCKED2 &dmac->chan.vchan.lock
HALF_LOCKED2 flags
TYPE_LOCK (struct virt_dma_chan)->lock

drivers/dma/dma-axi-dmac.c axi_dmac_start_transfer() -> axi_dmac_write()

Type Parameter Key Value
PARAM_VALUE 0 axi_dmac 4096-ptr_max
PARAM_VALUE 1 reg 1148
DATA_SOURCE 0 axi_dmac r chan_to_axi_dmac
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &chan->vchan.lock
HALF_LOCKED2 &dmac->chan.vchan.lock
HALF_LOCKED2 flags
TYPE_LOCK (struct virt_dma_chan)->lock

drivers/dma/dma-axi-dmac.c axi_dmac_start_transfer() -> axi_dmac_write()

Type Parameter Key Value
PARAM_VALUE 0 axi_dmac 4096-ptr_max
PARAM_VALUE 1 reg 1212
PARAM_VALUE 2 val 0
DATA_SOURCE 0 axi_dmac r chan_to_axi_dmac
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &chan->vchan.lock
HALF_LOCKED2 &dmac->chan.vchan.lock
HALF_LOCKED2 flags
TYPE_LOCK (struct virt_dma_chan)->lock

drivers/dma/dma-axi-dmac.c axi_dmac_start_transfer() -> axi_dmac_write()

Type Parameter Key Value
PARAM_VALUE 0 axi_dmac 4096-ptr_max
PARAM_VALUE 1 reg 1048
DATA_SOURCE 0 axi_dmac r chan_to_axi_dmac
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 2 val unit_byte
HALF_LOCKED2 &chan->vchan.lock
HALF_LOCKED2 &dmac->chan.vchan.lock
HALF_LOCKED2 flags
TYPE_LOCK (struct virt_dma_chan)->lock

drivers/dma/dma-axi-dmac.c axi_dmac_start_transfer() -> axi_dmac_write()

Type Parameter Key Value
PARAM_VALUE 0 axi_dmac 4096-ptr_max
PARAM_VALUE 1 reg 1052
DATA_SOURCE 0 axi_dmac r chan_to_axi_dmac
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 2 val unit_byte
HALF_LOCKED2 &chan->vchan.lock
HALF_LOCKED2 &dmac->chan.vchan.lock
HALF_LOCKED2 flags
TYPE_LOCK (struct virt_dma_chan)->lock

drivers/dma/dma-axi-dmac.c axi_dmac_start_transfer() -> axi_dmac_write()

Type Parameter Key Value
PARAM_VALUE 0 axi_dmac 4096-ptr_max
PARAM_VALUE 1 reg 1036
PARAM_VALUE 2 val 0-7
DATA_SOURCE 0 axi_dmac r chan_to_axi_dmac
FUZZY_MAX 2 val 0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &chan->vchan.lock
HALF_LOCKED2 &dmac->chan.vchan.lock
HALF_LOCKED2 flags
TYPE_LOCK (struct virt_dma_chan)->lock

drivers/dma/dma-axi-dmac.c axi_dmac_start_transfer() -> axi_dmac_write()

Type Parameter Key Value
PARAM_VALUE 0 axi_dmac 4096-ptr_max
PARAM_VALUE 1 reg 1032
PARAM_VALUE 2 val 1
DATA_SOURCE 0 axi_dmac r chan_to_axi_dmac
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &chan->vchan.lock
HALF_LOCKED2 &dmac->chan.vchan.lock
HALF_LOCKED2 flags
TYPE_LOCK (struct virt_dma_chan)->lock

drivers/dma/dma-axi-dmac.c axi_dmac_terminate_all() -> axi_dmac_write()

Type Parameter Key Value
PARAM_VALUE 0 axi_dmac 4096-ptr_max
PARAM_VALUE 1 reg 1024
PARAM_VALUE 2 val 0
DATA_SOURCE 0 axi_dmac r chan_to_axi_dmac
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &chan->vchan.lock
LOCK2 flags
HALF_LOCKED2 &controller->io_mutex
HALF_LOCKED2 &ctlr->io_mutex
HALF_LOCKED2 &dma->lock
HALF_LOCKED2 &dmm->wa_lock
HALF_LOCKED2 &epf_mhi->lock
HALF_LOCKED2 &host->io_mutex
HALF_LOCKED2 &host->lock
HALF_LOCKED2 &host->thread_lock
HALF_LOCKED2 &mem->spi->controller->bus_lock_mutex
HALF_LOCKED2 &mem->spi->controller->io_mutex
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &ospi->lock
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &priv->lock
HALF_LOCKED2 &qspi->list_lock
HALF_LOCKED2 &qspi->lock
HALF_LOCKED2 &sdr->v4l2_mutex
HALF_LOCKED2 &sp->mutex
HALF_LOCKED2 &spi->io_mutex
HALF_LOCKED2 &spi->mutex_lock
HALF_LOCKED2 &state->uart_port->lock
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
TYPE_LOCK (struct virt_dma_chan)->lock