Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/dma/dma-axi-dmac.c axi_dmac_dequeue_partial_xfers() -> axi_dmac_read()

Type Parameter Key Value
PARAM_VALUE 0 axi_dmac 4096-ptr_max
PARAM_VALUE 1 reg 1100
DATA_SOURCE 0 axi_dmac r chan_to_axi_dmac
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
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_dequeue_partial_xfers() -> axi_dmac_read()

Type Parameter Key Value
PARAM_VALUE 0 axi_dmac 4096-ptr_max
PARAM_VALUE 1 reg 1104
DATA_SOURCE 0 axi_dmac r chan_to_axi_dmac
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
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_dequeue_partial_xfers() -> axi_dmac_read()

Type Parameter Key Value
PARAM_VALUE 0 axi_dmac 4096-ptr_max
PARAM_VALUE 1 reg 1064
DATA_SOURCE 0 axi_dmac r chan_to_axi_dmac
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
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_detect_caps() -> axi_dmac_read()

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
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

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

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
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

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

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
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

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

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
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

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

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
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

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

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
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

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

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
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

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

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
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

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

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
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

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

Type Parameter Key Value
PARAM_VALUE 0 axi_dmac 4096-ptr_max
PARAM_VALUE 1 reg 1036
DATA_SOURCE 0 axi_dmac $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
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_interrupt_handler() -> axi_dmac_read()

Type Parameter Key Value
PARAM_VALUE 1 reg 132
DATA_SOURCE 0 axi_dmac $1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 flags

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

Type Parameter Key Value
PARAM_VALUE 0 axi_dmac 4096-ptr_max
PARAM_VALUE 1 reg 1064
DATA_SOURCE 0 axi_dmac $1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 0 &axi_dmac->chan.vchan.lock
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 flags
TYPE_LOCK (struct virt_dma_chan)->lock

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

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 0
BUF_SIZE 0 axi_dmac 944
BUF_SIZE 0 axi_dmac->irq s32min-(-1),1-s32max
DATA_SOURCE 0 axi_dmac r devm_kzalloc
MEM_ZERO 0 axi_dmac
RX_PATH
TASK_NOT_RUNNING

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

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 20
BUF_SIZE 0 axi_dmac 944
BUF_SIZE 0 axi_dmac->irq s32min-(-1),1-s32max
DATA_SOURCE 0 axi_dmac r devm_kzalloc
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
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_read_chan_config() -> axi_dmac_read()

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 16
BUF_SIZE 0 axi_dmac 944
BUF_SIZE 0 axi_dmac->irq s32min-(-1),1-s32max
DATA_SOURCE 0 axi_dmac $1
MEM_ZERO 0 axi_dmac
RX_PATH
TASK_NOT_RUNNING

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

Type Parameter Key Value
PARAM_VALUE 0 axi_dmac 4096-ptr_max
PARAM_VALUE 1 reg 1032
DATA_SOURCE 0 axi_dmac r chan_to_axi_dmac
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
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_read()

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