Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/dma/mediatek/mtk-cqdma.c mtk_cqdma_free_chan_resources() -> mtk_cqdma_poll_engine_done()

Type Parameter Key Value
PARAM_VALUE 0 pc 4096-ptr_max
PARAM_VALUE 1 atomic 1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 flags
LOCK2 0 &pc->lock
HALF_LOCKED2 global &dma_list_mutex
TYPE_LOCK (struct mtk_cqdma_pchan)->lock

drivers/dma/mediatek/mtk-cqdma.c mtk_cqdma_hard_reset() -> mtk_cqdma_poll_engine_done()

Type Parameter Key Value
PARAM_VALUE 0 pc 4096-ptr_max
PARAM_VALUE 1 atomic 1
DATA_SOURCE 0 pc $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 flags
HALF_LOCKED2 0 &pc->lock

drivers/dma/mediatek/mtk-cqdma.c mtk_cqdma_start() -> mtk_cqdma_poll_engine_done()

Type Parameter Key Value
PARAM_VALUE 0 pc 4096-ptr_max
PARAM_VALUE 1 atomic 1
DATA_SOURCE 0 pc $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &cvc->pc->lock
HALF_LOCKED2 &cvc->vc.lock
HALF_LOCKED2 flags
HALF_LOCKED2 pc_flags
HALF_LOCKED2 vc_flags
HALF_LOCKED2 0 &pc->lock
TYPE_LOCK (struct mtk_cqdma_pchan)->lock

drivers/dma/mediatek/mtk-cqdma.c mtk_cqdma_start() -> mtk_cqdma_poll_engine_done()

Type Parameter Key Value
PARAM_VALUE 0 pc 4096-ptr_max
PARAM_VALUE 1 atomic 1
DATA_SOURCE 0 pc $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &cvc->pc->lock
HALF_LOCKED2 &cvc->vc.lock
HALF_LOCKED2 flags
HALF_LOCKED2 pc_flags
HALF_LOCKED2 vc_flags
HALF_LOCKED2 0 &pc->lock
TYPE_LOCK (struct mtk_cqdma_pchan)->lock