Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 2 files as a function:

Referenced in 5 files:

Smatch caller information:

drivers/iommu/amd/iommu.c pdev_get_caps() -> pci_ats_supported()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
DATA_SOURCE 0 dev $0

drivers/iommu/intel/iommu.c intel_iommu_probe_device() -> pci_ats_supported()

Type Parameter Key Value
PARAM_VALUE 0 dev 0,4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &iommu_probe_device_lock

drivers/iommu/intel/iommu.c intel_iommu_probe_device() -> pci_ats_supported()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
CAPPED_DATA 0 dev 1
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &iommu_probe_device_lock

drivers/iommu/intel/iommu.c intel_iommu_release_device() -> pci_ats_supported()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 &group->mutex
LOCK2 &iommu->iopf_lock
HALF_LOCKED2 global &iommu_probe_device_lock
TYPE_LOCK (struct intel_iommu)->iopf_lock
TYPE_LOCK (struct iommu_group)->mutex

drivers/pci/ats.c pci_ats_required() -> pci_ats_supported()

Type Parameter Key Value
DATA_SOURCE 0 dev $0

drivers/pci/ats.c pci_ats_supported() -> pci_ats_supported()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 dev->acs_capabilities 0-u16max
HOST_DATA 0 dev->bus->bridge_ctl 0-u16max
HOST_DATA 0 dev->bus->parent->bridge_ctl 0-u16max
HOST_DATA 0 dev->class 0-16777215
HOST_DATA 0 dev->current_state 0-3[c]
HOST_DATA 0 dev->dev.flags 0-u32max
HOST_DATA 0 dev->devcap 0-u32max
HOST_DATA 0 dev->devfn 1-503[c]
HOST_DATA 0 dev->device 0-u16max
HOST_DATA 0 dev->eetlp_prefix_max 0-7[c]
HOST_DATA 0 dev->fm_enabled 0-1[c]
HOST_DATA 0 dev->hdr_type 0-255[c]
HOST_DATA 0 dev->ide_cfg 0-1[c]
HOST_DATA 0 dev->ide_tee_limit 0-1[c]
HOST_DATA 0 dev->irq 0-255
HOST_DATA 0 dev->is_cxl 0-1
HOST_DATA 0 dev->multifunction 0-1[c]
HOST_DATA 0 dev->nr_ide_mem 0-255[c]
HOST_DATA 0 dev->pcie_flags_reg 0-u16max
HOST_DATA 0 dev->pcie_mpss 0-7[c]
HOST_DATA 0 dev->physfn->acs_capabilities 0-u16max
HOST_DATA 0 dev->physfn->bus->bridge_ctl 0-u16max
HOST_DATA 0 dev->physfn->bus->parent->bridge_ctl 0-u16max
HOST_DATA 0 dev->physfn->class 0-16777215
HOST_DATA 0 dev->physfn->current_state 0-3[c]
HOST_DATA 0 dev->physfn->devcap 0-u32max
HOST_DATA 0 dev->physfn->devfn 1-503[c]
HOST_DATA 0 dev->physfn->device 0-u16max
HOST_DATA 0 dev->physfn->eetlp_prefix_max 0-7[c]
HOST_DATA 0 dev->physfn->fm_enabled 0-1[c]
HOST_DATA 0 dev->physfn->hdr_type 0-255[c]
HOST_DATA 0 dev->physfn->ide_cfg 0-1[c]
HOST_DATA 0 dev->physfn->ide_tee_limit 0-1[c]
HOST_DATA 0 dev->physfn->irq 0-255
HOST_DATA 0 dev->physfn->is_cxl 0-1
HOST_DATA 0 dev->physfn->multifunction 0-1[c]
HOST_DATA 0 dev->physfn->nr_ide_mem 0-255[c]
HOST_DATA 0 dev->physfn->pcie_flags_reg 0-u16max
HOST_DATA 0 dev->physfn->pcie_mpss 0-7[c]
HOST_DATA 0 dev->physfn->pin 0
HOST_DATA 0 dev->physfn->pme_support 0-31[c]
HOST_DATA 0 dev->physfn->ptm_granularity 0-255[c]
HOST_DATA 0 dev->physfn->revision 0-255
HOST_DATA 0 dev->physfn->subsystem_device 0-u16max
HOST_DATA 0 dev->physfn->subsystem_vendor 0-u16max
HOST_DATA 0 dev->physfn->supported_speeds 0,2-254[c]
HOST_DATA 0 dev->physfn->transparent 0[c]
HOST_DATA 0 dev->physfn->vendor 0-u16max
HOST_DATA 0 dev->pin 0
HOST_DATA 0 dev->pme_support 0-31[c]
HOST_DATA 0 dev->ptm_granularity 0-255[c]
HOST_DATA 0 dev->revision 0-255
HOST_DATA 0 dev->subsystem_device 0-u16max
HOST_DATA 0 dev->subsystem_vendor 0-u16max
HOST_DATA 0 dev->supported_speeds 0,2-254[c]
HOST_DATA 0 dev->transparent 0[c]
HOST_DATA 0 dev->vendor 0-u16max
HOST_DATA 0 *dev->dev.driver_data s64min-s64max
HOST_DATA 0 *dev->physfn->dev.driver_data s64min-s64max
HALF_LOCKED2 &iommu->iopf_lock
HALF_LOCKED2 global &iommu_probe_device_lock

drivers/pci/ats.c pci_enable_ats() -> pci_ats_supported()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dev_data->mutex

drivers/pci/ats.c pci_prepare_ats() -> pci_ats_supported()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
CAPPED_DATA 0 dev 1
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &iommu_probe_device_lock

drivers/iommu/iommu.c pci_dev_reset_iommu_done() -> pci_ats_supported()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
BUF_SIZE 0 dev (-1)-s32max
BUF_SIZE 0 dev (-1)-s32max
BUF_SIZE 0 dev->dev.dma_mask (-1),8
BUF_SIZE 0 dev->dev.dma_parms (-1),16
BUF_SIZE 0 dev->physfn (-1),16,40,56,96,128,240,656,704,888,1600,1616,1752,2072,8064
CAPPED_DATA 0 dev 1
DATA_SOURCE 0 dev $0
STR_LEN 0 dev (-1),9-10,12
STR_LEN 0 dev (-1),9-10,12
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 dev->acs_capabilities 0-u16max
HOST_DATA 0 dev->bus->bridge_ctl 0-u16max
HOST_DATA 0 dev->bus->parent->bridge_ctl 0-u16max
HOST_DATA 0 dev->bus->self->pcie_flags_reg 0-u16max
HOST_DATA 0 dev->class 0-16777215
HOST_DATA 0 dev->current_state 0-3[c]
HOST_DATA 0 dev->dev.class 0-16777215
HOST_DATA 0 dev->dev.flags 0-u32max
HOST_DATA 0 dev->dev.iommu.max_pasids 0-u32max
HOST_DATA 0 dev->devcap 0-u32max
HOST_DATA 0 dev->devfn 0-503[c]
HOST_DATA 0 dev->device 0-u16max
HOST_DATA 0 dev->eetlp_prefix_max 0-7[c]
HOST_DATA 0 dev->fm_enabled 0-1[c]
HOST_DATA 0 dev->hdr_type 0-255[c]
HOST_DATA 0 dev->ide_cfg 0-1[c]
HOST_DATA 0 dev->ide_tee_limit 0-1[c]
HOST_DATA 0 dev->irq 0-255
HOST_DATA 0 dev->is_cxl 0-1
HOST_DATA 0 dev->multifunction 0-1[c]
HOST_DATA 0 dev->nr_ide_mem 0-255[c]
HOST_DATA 0 dev->pcie_flags_reg 0-u16max
HOST_DATA 0 dev->pcie_mpss 0-7[c]
HOST_DATA 0 dev->physfn->acs_capabilities 0-u16max
HOST_DATA 0 dev->physfn->bus->bridge_ctl 0-u16max
HOST_DATA 0 dev->physfn->bus->parent->bridge_ctl 0-u16max
HOST_DATA 0 dev->physfn->class 0-16777215
HOST_DATA 0 dev->physfn->current_state 0-3[c]
HOST_DATA 0 dev->physfn->devcap 0-u32max
HOST_DATA 0 dev->physfn->devfn 1-503[c]
HOST_DATA 0 dev->physfn->device 0-u16max
HOST_DATA 0 dev->physfn->eetlp_prefix_max 0-7[c]
HOST_DATA 0 dev->physfn->fm_enabled 0-1[c]
HOST_DATA 0 dev->physfn->hdr_type 0-255[c]
HOST_DATA 0 dev->physfn->ide_cfg 0-1[c]
HOST_DATA 0 dev->physfn->ide_tee_limit 0-1[c]
HOST_DATA 0 dev->physfn->irq 0-255
HOST_DATA 0 dev->physfn->is_cxl 0-1
HOST_DATA 0 dev->physfn->multifunction 0-1[c]
HOST_DATA 0 dev->physfn->nr_ide_mem 0-255[c]
HOST_DATA 0 dev->physfn->pcie_flags_reg 0-u16max
HOST_DATA 0 dev->physfn->pcie_mpss 0-7[c]
HOST_DATA 0 dev->physfn->pin 0
HOST_DATA 0 dev->physfn->pme_support 0-31[c]
HOST_DATA 0 dev->physfn->ptm_granularity 0-255[c]
HOST_DATA 0 dev->physfn->revision 0-255
HOST_DATA 0 dev->physfn->subsystem_device 0-u16max
HOST_DATA 0 dev->physfn->subsystem_vendor 0-u16max
HOST_DATA 0 dev->physfn->supported_speeds 0,2-254[c]
HOST_DATA 0 dev->physfn->transparent 0[c]
HOST_DATA 0 dev->physfn->vendor 0-u16max
HOST_DATA 0 dev->pin 0
HOST_DATA 0 dev->pme_support 0-31[c]
HOST_DATA 0 dev->ptm_granularity 0-255[c]
HOST_DATA 0 dev->revision 0-255
HOST_DATA 0 dev->subsystem_device 0-u16max
HOST_DATA 0 dev->subsystem_vendor 0-u16max
HOST_DATA 0 dev->supported_speeds 0,2-254[c]
HOST_DATA 0 dev->transparent 0[c]
HOST_DATA 0 dev->vendor 0-u16max
HOST_DATA 0 *dev->dev.driver_data s64min-s64max
HOST_DATA 0 *dev->physfn->dev.driver_data s64min-s64max
UNITS 0 dev unit_byte
HALF_LOCKED2 0 &dev->dev.mutex

drivers/iommu/iommu.c pci_dev_reset_iommu_prepare() -> pci_ats_supported()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
BUF_SIZE 0 dev (-1)-s32max
BUF_SIZE 0 dev (-1)-s32max
BUF_SIZE 0 dev->dev.dma_mask (-1),8
BUF_SIZE 0 dev->dev.dma_parms (-1),16
BUF_SIZE 0 dev->physfn (-1),16,40,56,96,128,240,656,704,888,1600,1616,1752,2072,8064
DATA_SOURCE 0 dev $0
STR_LEN 0 dev (-1),9-10,12
STR_LEN 0 dev (-1),9-10,12
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 dev->acs_capabilities 0-u16max
HOST_DATA 0 dev->bus->bridge_ctl 0-u16max
HOST_DATA 0 dev->bus->parent->bridge_ctl 0-u16max
HOST_DATA 0 dev->class 0-16777215
HOST_DATA 0 dev->current_state 0-3[c]
HOST_DATA 0 dev->devcap 0-u32max
HOST_DATA 0 dev->devfn 0-503[c]
HOST_DATA 0 dev->device 0-u16max
HOST_DATA 0 dev->eetlp_prefix_max 0-7[c]
HOST_DATA 0 dev->fm_enabled 0-1[c]
HOST_DATA 0 dev->hdr_type 0-255[c]
HOST_DATA 0 dev->ide_cfg 0-1[c]
HOST_DATA 0 dev->ide_tee_limit 0-1[c]
HOST_DATA 0 dev->irq 0-255
HOST_DATA 0 dev->is_cxl 0-1
HOST_DATA 0 dev->multifunction 0-1[c]
HOST_DATA 0 dev->nr_ide_mem 0-255[c]
HOST_DATA 0 dev->pcie_flags_reg 0-u16max
HOST_DATA 0 dev->pcie_mpss 0-7[c]
HOST_DATA 0 dev->physfn->acs_capabilities 0-u16max
HOST_DATA 0 dev->physfn->bus->bridge_ctl 0-u16max
HOST_DATA 0 dev->physfn->bus->parent->bridge_ctl 0-u16max
HOST_DATA 0 dev->physfn->class 0-16777215
HOST_DATA 0 dev->physfn->current_state 0-3[c]
HOST_DATA 0 dev->physfn->devcap 0-u32max
HOST_DATA 0 dev->physfn->devfn 1-503[c]
HOST_DATA 0 dev->physfn->device 0-u16max
HOST_DATA 0 dev->physfn->eetlp_prefix_max 0-7[c]
HOST_DATA 0 dev->physfn->fm_enabled 0-1[c]
HOST_DATA 0 dev->physfn->hdr_type 0-255[c]
HOST_DATA 0 dev->physfn->ide_cfg 0-1[c]
HOST_DATA 0 dev->physfn->ide_tee_limit 0-1[c]
HOST_DATA 0 dev->physfn->irq 0-255
HOST_DATA 0 dev->physfn->is_cxl 0-1
HOST_DATA 0 dev->physfn->multifunction 0-1[c]
HOST_DATA 0 dev->physfn->nr_ide_mem 0-255[c]
HOST_DATA 0 dev->physfn->pcie_flags_reg 0-u16max
HOST_DATA 0 dev->physfn->pcie_mpss 0-7[c]
HOST_DATA 0 dev->physfn->pin 0
HOST_DATA 0 dev->physfn->pme_support 0-31[c]
HOST_DATA 0 dev->physfn->ptm_granularity 0-255[c]
HOST_DATA 0 dev->physfn->revision 0-255
HOST_DATA 0 dev->physfn->subsystem_device 0-u16max
HOST_DATA 0 dev->physfn->subsystem_vendor 0-u16max
HOST_DATA 0 dev->physfn->supported_speeds 0,2-254[c]
HOST_DATA 0 dev->physfn->transparent 0[c]
HOST_DATA 0 dev->physfn->vendor 0-u16max
HOST_DATA 0 dev->pin 0
HOST_DATA 0 dev->pme_support 0-31[c]
HOST_DATA 0 dev->ptm_granularity 0-255[c]
HOST_DATA 0 dev->revision 0-255
HOST_DATA 0 dev->subsystem_device 0-u16max
HOST_DATA 0 dev->subsystem_vendor 0-u16max
HOST_DATA 0 dev->supported_speeds 0,2-254[c]
HOST_DATA 0 dev->transparent 0[c]
HOST_DATA 0 dev->vendor 0-u16max
HOST_DATA 0 *dev->dev.driver_data s64min-s64max
HOST_DATA 0 *dev->physfn->dev.driver_data s64min-s64max
UNITS 0 dev unit_byte
HALF_LOCKED2 0 &dev->dev.mutex