Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 46 files:

Smatch caller information:

drivers/tty/serial/tegra-tcu.c tegra_tcu_write_one() -> mbox_send_message()

Type Parameter Key Value
PARAM_VALUE 0 chan 0,4096-u64max
PARAM_VALUE 1 mssg 0-u32max
DATA_SOURCE 1 mssg $1 [m]
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 flags

drivers/firmware/imx/imx-dsp.c imx_dsp_ring_doorbell() -> mbox_send_message()

Type Parameter Key Value
PARAM_VALUE 1 mssg 0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &sdev->ipc_lock
HALF_LOCKED2 _T->lock
HALF_LOCKED2 irq

drivers/remoteproc/stm32_rproc.c stm32_rproc_detach() -> mbox_send_message()

Type Parameter Key Value
PARAM_VALUE 0 chan 4096-u64max
PARAM_VALUE 1 mssg 4153651034352455680
PARAM_VALUE 1 *mssg 0-255
BUF_SIZE 1 mssg 5
STR_LEN 0 chan 4
TERMINATED 1 mssg 1
RX_PATH
TASK_NOT_RUNNING
LOCK2 &rproc->lock
HALF_LOCKED2 &of->mutex
TYPE_LOCK (struct rproc)->lock

drivers/remoteproc/stm32_rproc.c stm32_rproc_kick() -> mbox_send_message()

Type Parameter Key Value
PARAM_VALUE 0 chan 4096-u64max
PARAM_VALUE 1 mssg 1640683747299921920
PARAM_VALUE 1 *mssg 0-255
BUF_SIZE 1 mssg 5
STR_LEN 0 chan 4
TERMINATED 1 mssg 1
RX_PATH
TASK_NOT_RUNNING

drivers/remoteproc/stm32_rproc.c stm32_rproc_stop() -> mbox_send_message()

Type Parameter Key Value
PARAM_VALUE 0 chan 4096-u64max
PARAM_VALUE 1 mssg 8004350084184649728
PARAM_VALUE 1 *mssg 0-255
BUF_SIZE 1 mssg 7
STR_LEN 0 chan 6
TERMINATED 1 mssg 1
RX_PATH
TASK_NOT_RUNNING
LOCK2 &rproc->lock
TYPE_LOCK (struct rproc)->lock

drivers/hwmon/xgene-hwmon.c xgene_hwmon_pcc_rd() -> mbox_send_message()

Type Parameter Key Value
PARAM_VALUE 0 chan 0,4096-u64max
PARAM_VALUE 1 mssg 4096-ptr_max
BUF_SIZE 1 mssg 12
DATA_SOURCE 1 mssg $1
RX_PATH
TASK_NOT_RUNNING
LOCK2 &ctx->rd_mutex
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct xgene_hwmon_dev)->rd_mutex

drivers/hwmon/xgene-hwmon.c xgene_hwmon_rd() -> mbox_send_message()

Type Parameter Key Value
PARAM_VALUE 0 chan 0,4096-u64max
PARAM_VALUE 1 mssg 4096-ptr_max
BUF_SIZE 1 mssg 12
DATA_SOURCE 1 mssg $1
RX_PATH
TASK_NOT_RUNNING
LOCK2 &ctx->rd_mutex
LOCK2 &of->mutex
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex
TYPE_LOCK (struct xgene_hwmon_dev)->rd_mutex

drivers/firmware/thead,th1520-aon.c th1520_aon_call_rpc() -> mbox_send_message()

Type Parameter Key Value
PARAM_VALUE 1 mssg 101783353651052544,4836068962679357440,6850263904296628224
BUF_SIZE 1 mssg 28
BUF_SIZE 1 mssg 28
DATA_SOURCE 1 mssg $1
RX_PATH
TASK_NOT_RUNNING
LOCK2 &aon_chan->transaction_lock
TYPE_LOCK (struct th1520_aon_chan)->transaction_lock

drivers/soc/qcom/qcom_aoss.c qmp_kick() -> mbox_send_message()

Type Parameter Key Value
PARAM_VALUE 1 mssg 0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 chan->con_priv->ring_pool->allocation
HALF_LOCKED2 &qmp->tx_lock

drivers/firmware/mtk-adsp-ipc.c mtk_adsp_ipc_send() -> mbox_send_message()

Type Parameter Key Value
PARAM_VALUE 1 *mssg 1-2
BUF_SIZE 1 mssg 4
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &sdev->ipc_lock
HALF_LOCKED2 _T->lock
HALF_LOCKED2 irq

drivers/rpmsg/qcom_smd.c qcom_smd_signal_channel() -> mbox_send_message()

Type Parameter Key Value
PARAM_VALUE 0 chan 1-u64max
PARAM_VALUE 1 mssg 0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &channel->recv_lock
HALF_LOCKED2 &channel->tx_lock
HALF_LOCKED2 flags

drivers/rpmsg/qcom_glink_rpm.c glink_rpm_tx_kick() -> mbox_send_message()

Type Parameter Key Value
PARAM_VALUE 1 mssg 0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &glink->tx_lock
HALF_LOCKED2 flags

drivers/acpi/cppc_acpi.c send_pcc_cmd() -> mbox_send_message()

Type Parameter Key Value
PARAM_VALUE 1 *mssg 0-1
BUF_SIZE 1 mssg 2
RX_PATH
TASK_NOT_RUNNING
LOCK2 &pcc_ss_data->pcc_lock
HALF_LOCKED2 &of->mutex
TYPE_LOCK (struct cppc_pcc_data)->pcc_lock

drivers/pmdomain/mediatek/mtk-mfg-pmdomain.c mtk_mfg_eb_off() -> mbox_send_message()

Type Parameter Key Value
PARAM_VALUE 1 mssg 7025818476249018368
BUF_SIZE 1 mssg 12
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &pd->mlock

drivers/pmdomain/mediatek/mtk-mfg-pmdomain.c mtk_mfg_send_ipi() -> mbox_send_message()

Type Parameter Key Value
PARAM_VALUE 0 chan 0,4096-u64max
PARAM_VALUE 1 mssg 3500892576825143296,5273785776006447104,8415855936015138816
DATA_SOURCE 1 mssg $1
RX_PATH
TASK_NOT_RUNNING

drivers/clk/clk-rpmi.c rpmi_mbox_send_message() -> mbox_send_message()

Type Parameter Key Value
PARAM_VALUE 1 mssg 649628641723961344,720890052839239680,790089781028483072,1615618347395854336,3594499978242990080,6232588169638567936,6920575804240183296,7374853421348495360
DATA_SOURCE 0 chan $0
DATA_SOURCE 1 mssg $1
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 chan->con_priv->ring_pool->allocation

drivers/soc/qcom/smp2p.c qcom_smp2p_kick() -> mbox_send_message()

Type Parameter Key Value
PARAM_VALUE 0 chan 1-u64max
PARAM_VALUE 1 mssg 0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 chan->con_priv->ring_pool->allocation

drivers/gpu/drm/mediatek/mtk_crtc.c mtk_crtc_update_config() -> mbox_send_message()

Type Parameter Key Value
PARAM_VALUE 0 chan 4096-ptr_max
PARAM_VALUE 0 chan->mbox 4096-ptr_max
PARAM_VALUE 0 chan->mbox->dev 4096-ptr_max
PARAM_VALUE 0 chan->mbox->dev->flags 4096-ptr_max
PARAM_VALUE 0 chan->mbox->dev->power.request 0-4
PARAM_VALUE 0 chan->mbox->dev->power.runtime_error s32min-(-17),(-15)-(-14),(-12),(-10)-s32max
PARAM_VALUE 0 chan->mbox->dev->power.wakeirq->status 0-4294967295
PARAM_VALUE 0 chan->mbox->ops 4096-ptr_max
PARAM_VALUE 1 mssg 4096-ptr_max
BUF_SIZE 1 mssg 48
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &mtk_crtc->hw_lock
TYPE_LOCK (struct mtk_crtc)->hw_lock

drivers/acpi/acpi_pcc.c acpi_pcc_address_space_handler() -> mbox_send_message()

Type Parameter Key Value
PARAM_VALUE 1 mssg 0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 context_mutex

drivers/firmware/turris-mox-rwtm.c mox_rwtm_exec() -> mbox_send_message()

Type Parameter Key Value
PARAM_VALUE 0 chan 0,4096-u64max
PARAM_VALUE 1 mssg 1071625322726772736,3727185788799651840,5145489510829178880,7028814517424111616
BUF_SIZE 1 mssg (-1),68
DATA_SOURCE 1 mssg $2 [m]
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 chan->con_priv->ring_pool->allocation
HALF_LOCKED2 &rwtm->busy
HALF_LOCKED2 _T->lock

drivers/media/platform/amphion/vpu_mbox.c vpu_mbox_send_msg() -> mbox_send_message()

Type Parameter Key Value
BUF_SIZE 1 mssg 4
NOCHECK_CALL
HALF_LOCKED2 &pool->lock

drivers/media/platform/amphion/vpu_mbox.c vpu_mbox_send_msg() -> mbox_send_message()

Type Parameter Key Value
PARAM_VALUE 1 *mssg 1-3
BUF_SIZE 1 mssg 4
NOCHECK_CALL
HALF_LOCKED2 &pool->lock

drivers/media/platform/amphion/vpu_mbox.c vpu_mbox_send_type() -> mbox_send_message()

Type Parameter Key Value
PARAM_VALUE 1 *mssg 4
BUF_SIZE 1 mssg 4
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &core->cmd_lock
HALF_LOCKED2 &core->cmd_lock
HALF_LOCKED2 &core->lock
HALF_LOCKED2 &inst->lock
TYPE_LOCK (struct vpu_core)->cmd_lock

drivers/soc/hisilicon/kunpeng_hccs.c hccs_pcc_cmd_send() -> mbox_send_message()

Type Parameter Key Value
PARAM_VALUE 1 *mssg 1-13
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &hdev->lock
HALF_LOCKED2 &of->mutex

drivers/soc/qcom/smsm.c smsm_update_bits() -> mbox_send_message()

Type Parameter Key Value
PARAM_VALUE 0 chan 1-u64max
PARAM_VALUE 1 mssg 0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &ch->lock
HALF_LOCKED2 flags

drivers/firmware/arm_scmi/transports/mailbox.c mailbox_clear_channel() -> mbox_send_message()

Type Parameter Key Value
PARAM_VALUE 0 chan 1-u64max
PARAM_VALUE 1 mssg 0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &vioch->pending_lock
HALF_LOCKED2 flags

drivers/firmware/arm_scmi/transports/mailbox.c mailbox_send_message() -> mbox_send_message()

Type Parameter Key Value
PARAM_VALUE 1 mssg 4096-ptr_max
DATA_SOURCE 1 mssg $1
TASK_NOT_RUNNING
LOCK2 &smbox->chan_lock
TYPE_LOCK (struct scmi_mailbox)->chan_lock

drivers/media/platform/mediatek/mdp3/mtk-mdp3-cmdq.c mdp_cmdq_send() -> mbox_send_message()

Type Parameter Key Value
PARAM_VALUE 0 chan 4096-ptr_max
PARAM_VALUE 0 chan->mbox 4096-ptr_max
PARAM_VALUE 1 mssg 4096-ptr_max
BUF_SIZE 1 mssg 48
RX_PATH
TASK_NOT_RUNNING

drivers/firmware/arm_scpi.c scpi_send_message() -> mbox_send_message()

Type Parameter Key Value
PARAM_VALUE 1 mssg 4096-ptr_max
DATA_SOURCE 1 mssg r get_scpi_xfer
RX_PATH
TASK_NOT_RUNNING

drivers/rpmsg/qcom_glink_smem.c glink_smem_tx_kick() -> mbox_send_message()

Type Parameter Key Value
PARAM_VALUE 1 mssg 0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &glink->tx_lock
HALF_LOCKED2 flags

drivers/firmware/imx/imx-scu.c imx_scu_ipc_write() -> mbox_send_message()

Type Parameter Key Value
PARAM_VALUE 1 mssg 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 &sc_ipc->lock
HALF_LOCKED2 &tz->lock
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct imx_sc_ipc)->lock

drivers/firmware/samsung/exynos-acpm.c acpm_do_xfer() -> mbox_send_message()

Type Parameter Key Value
PARAM_VALUE 1 mssg 8980655744648843264
BUF_SIZE 1 mssg 8
RX_PATH
TASK_NOT_RUNNING
LOCK2 _T->lock

drivers/remoteproc/ti_k3_common.c k3_rproc_kick() -> mbox_send_message()

Type Parameter Key Value
PARAM_VALUE 1 mssg 0-s32max
DATA_SOURCE 1 mssg $1
RX_PATH
TASK_NOT_RUNNING

drivers/dma/bcm-sba-raid.c sba_send_mbox_request() -> mbox_send_message()

Type Parameter Key Value
PARAM_VALUE 0 chan 0,4096-u64max
PARAM_VALUE 1 mssg 4096-ptr_max
BUF_SIZE 1 mssg 40
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &sba->reqs_lock
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 flags
TYPE_LOCK (struct sba_device)->reqs_lock

drivers/mailbox/mailbox-test.c mbox_test_message_write() -> mbox_send_message()

Type Parameter Key Value
PARAM_VALUE 0 chan 1-u64max
PARAM_VALUE 1 mssg 1-u64max
BUF_SIZE 1 mssg 8,128
BUF_SIZE 1 mssg 8,128
USER_PTR 1 mssg
LOCK2 &tdev->mutex
TYPE_LOCK (struct mbox_test_device)->mutex

drivers/firmware/ti_sci.c ti_sci_do_xfer() -> mbox_send_message()

Type Parameter Key Value
PARAM_VALUE 1 mssg 4096-ptr_max
BUF_SIZE 1 mssg 32
RX_PATH
TASK_NOT_RUNNING
LOCK2 &info->minfo.sem_xfer_count
HALF_LOCKED2 &control->lock
TYPE_LOCK (struct ti_sci_xfers_info)->sem_xfer_count

drivers/soc/microchip/mpfs-sys-controller.c mpfs_blocking_transaction() -> mbox_send_message()

Type Parameter Key Value
PARAM_VALUE 1 mssg 4096-ptr_max
BUF_SIZE 1 mssg (-1),32
DATA_SOURCE 1 mssg $1
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &transaction_lock