Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 2 files as a function:

Referenced in 14 files:

Smatch caller information:

drivers/vhost/vdpa.c vhost_vdpa_alloc_domain() -> iommu_attach_device()

Type Parameter Key Value
PARAM_VALUE 0 domain 4096-ptr_max
PARAM_VALUE 1 dev 4096-ptr_max
PARAM_VALUE 1 dev->iommu 4096-ptr_max
PARAM_VALUE 1 dev->iommu->iommu_dev 4096-ptr_max
PARAM_VALUE 1 dev->iommu->iommu_dev->ops 4096-ptr_max
BUF_SIZE 0 domain (-1),112
BUF_SIZE 0 domain (-1),112
DATA_SOURCE 0 domain r iommu_paging_domain_alloc
RX_PATH
TASK_NOT_RUNNING
UNITS 1 dev unit_byte

drivers/net/wireless/ath/ath10k/snoc.c ath10k_fw_init() -> iommu_attach_device()

Type Parameter Key Value
PARAM_VALUE 0 domain 4096-ptr_max
PARAM_VALUE 1 dev 4096-ptr_max
PARAM_VALUE 1 dev->dma_mem 1-u64max
PARAM_VALUE 1 dev->iommu 4096-ptr_max
PARAM_VALUE 1 dev->iommu->iommu_dev 4096-ptr_max
PARAM_VALUE 1 dev->iommu->iommu_dev->ops 4096-ptr_max
PARAM_VALUE 1 dev->iommu_group 0
BUF_SIZE 0 domain (-1),112
BUF_SIZE 0 domain (-1),112
BUF_SIZE 1 dev 1616
DATA_SOURCE 0 domain r iommu_paging_domain_alloc
RX_PATH
TASK_NOT_RUNNING

drivers/media/platform/qcom/venus/firmware.c venus_firmware_init() -> iommu_attach_device()

Type Parameter Key Value
PARAM_VALUE 0 domain 4096-ptr_max
PARAM_VALUE 1 dev 4096-ptr_max
PARAM_VALUE 1 dev->dma_mem 1-u64max
PARAM_VALUE 1 dev->iommu 4096-ptr_max
PARAM_VALUE 1 dev->iommu->iommu_dev 4096-ptr_max
PARAM_VALUE 1 dev->iommu->iommu_dev->ops 4096-ptr_max
PARAM_VALUE 1 dev->iommu_group 0
BUF_SIZE 0 domain (-1),112
BUF_SIZE 0 domain (-1),112
BUF_SIZE 1 dev 1616
DATA_SOURCE 0 domain r iommu_paging_domain_alloc
RX_PATH
TASK_NOT_RUNNING

drivers/gpu/drm/msm/msm_iommu.c msm_iommu_new() -> iommu_attach_device()

Type Parameter Key Value
PARAM_VALUE 0 domain 4096-ptr_max
PARAM_VALUE 1 dev 4096-ptr_max
PARAM_VALUE 1 dev->iommu 4096-ptr_max
PARAM_VALUE 1 dev->iommu->iommu_dev 4096-ptr_max
PARAM_VALUE 1 dev->iommu->iommu_dev->ops 4096-ptr_max
PARAM_VALUE 1 dev->iommu_group 1-u64max
BUF_SIZE 0 domain (-1),112
BUF_SIZE 0 domain (-1),112
CAPPED_DATA 1 dev 1
DATA_SOURCE 1 dev $0
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 1 dev->dma_io_tlb_mem->nslabs
UNITS 1 dev unit_byte
HALF_LOCKED2 global &component_mutex

drivers/remoteproc/remoteproc_core.c rproc_enable_iommu() -> iommu_attach_device()

Type Parameter Key Value
PARAM_VALUE 0 domain 4096-ptr_max
PARAM_VALUE 0 domain->cookie_type 1-u32max
PARAM_VALUE 1 dev 4096-ptr_max
PARAM_VALUE 1 dev->iommu 4096-ptr_max
PARAM_VALUE 1 dev->iommu->iommu_dev 4096-ptr_max
PARAM_VALUE 1 dev->iommu->iommu_dev->ops 4096-ptr_max
BUF_SIZE 0 domain (-1),112
BUF_SIZE 0 domain (-1),112
DATA_SOURCE 0 domain r iommu_paging_domain_alloc
RX_PATH
TASK_NOT_RUNNING
UNITS 1 dev unit_byte
LOCK2 &rproc->lock
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct rproc)->lock

drivers/media/platform/rockchip/rkvdec/rkvdec.c rkvdec_iommu_restore() -> iommu_attach_device()

Type Parameter Key Value
PARAM_VALUE 0 domain 1-u64max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 _T->lock

drivers/gpu/drm/exynos/exynos_drm_dma.c drm_iommu_attach_device() -> iommu_attach_device()

Type Parameter Key Value
PARAM_VALUE 1 dev 4096-ptr_max
PARAM_VALUE 1 dev->dma_parms 0,4096-ptr_max
PARAM_VALUE 1 dev->dma_parms->max_segment_size u32max
DATA_SOURCE 1 dev $1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &component_mutex

drivers/infiniband/hw/usnic/usnic_uiom.c usnic_uiom_attach_dev_to_pd() -> iommu_attach_device()

Type Parameter Key Value
PARAM_VALUE 1 dev 4096-ptr_max
DATA_SOURCE 1 dev $1
RX_PATH
TASK_NOT_RUNNING
LOCK2 &us_ibdev->usdev_lock
LOCK2 &vf->lock
TYPE_LOCK (struct usnic_ib_dev)->usdev_lock
TYPE_LOCK (struct usnic_ib_vf)->lock

drivers/net/wireless/ath/ath11k/ahb.c ath11k_ahb_fw_resources_init() -> iommu_attach_device()

Type Parameter Key Value
PARAM_VALUE 0 domain 4096-ptr_max
PARAM_VALUE 1 dev 4096-ptr_max
PARAM_VALUE 1 dev->dma_mem 1-u64max
PARAM_VALUE 1 dev->iommu 4096-ptr_max
PARAM_VALUE 1 dev->iommu->iommu_dev 4096-ptr_max
PARAM_VALUE 1 dev->iommu->iommu_dev->ops 4096-ptr_max
PARAM_VALUE 1 dev->iommu_group 0
BUF_SIZE 0 domain (-1),112
BUF_SIZE 0 domain (-1),112
BUF_SIZE 1 dev 1616
DATA_SOURCE 0 domain r iommu_paging_domain_alloc
RX_PATH
TASK_NOT_RUNNING

drivers/gpu/drm/rockchip/rockchip_drm_drv.c rockchip_drm_dma_attach_device() -> iommu_attach_device()

Type Parameter Key Value
PARAM_VALUE 0 domain 1-u64max
PARAM_VALUE 1 dev 4096-ptr_max
PARAM_VALUE 1 dev->bus 0,4096-ptr_max
PARAM_VALUE 1 dev->class 0,4096-ptr_max
PARAM_VALUE 1 dev->power.request 0-4
PARAM_VALUE 1 dev->power.runtime_error s32min-(-17),(-15)-(-14),(-12),(-10)-s32max
PARAM_VALUE 1 dev->power.wakeirq 0,4096-ptr_max
PARAM_VALUE 1 dev->power.wakeirq->status 0-4294967295
PARAM_VALUE 1 dev->type 0,4096-ptr_max
DATA_SOURCE 1 dev $1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &state->dev->mode_config.connection_mutex
HALF_LOCKED2 &state->dev->mode_config.connection_mutex.mutex
HALF_LOCKED2 &vop->vop_lock
HALF_LOCKED2 &vop2->vop2_lock