Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 2 files as a function:

Referenced in 15 files:

Smatch caller information:

drivers/power/supply/sbs-manager.c sbsm_do_alert() -> i2c_verify_client()

Type Parameter Key Value
PARAM_VALUE 0 dev 1-u64max
DATA_SOURCE 0 dev $0

drivers/misc/keba/cp500.c cp500_nvmem_match() -> i2c_verify_client()

Type Parameter Key Value
DATA_SOURCE 0 dev $0 [m]
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_byte
HALF_LOCKED2 &buffer->mutex
HALF_LOCKED2 &frag->frag_sem
HALF_LOCKED2 &generic_phy->mutex
HALF_LOCKED2 &ns->subsys->lock
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &pdev->dev.mutex
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &seq->lock
HALF_LOCKED2 &sfile->lock
HALF_LOCKED2 &tb->lock
HALF_LOCKED2 _T->lock
HALF_LOCKED2 global &component_mutex
HALF_LOCKED2 global &hmem_resource_lock
HALF_LOCKED2 global &iommu_probe_device_lock
HALF_LOCKED2 global &pi_mutex
HALF_LOCKED2 global &vdpa_dev_lock

drivers/i2c/i2c-core-base.c __i2c_check_addr_busy() -> i2c_verify_client()

Type Parameter Key Value
PARAM_VALUE 0 dev 1-u64max
DATA_SOURCE 0 dev $0

drivers/i2c/i2c-core-base.c __unregister_client() -> i2c_verify_client()

Type Parameter Key Value
PARAM_VALUE 0 dev 1-u64max
DATA_SOURCE 0 dev $0

drivers/i2c/i2c-core-base.c __unregister_dummy() -> i2c_verify_client()

Type Parameter Key Value
PARAM_VALUE 0 dev 1-u64max
DATA_SOURCE 0 dev $0

drivers/i2c/i2c-core-base.c i2c_cmd() -> i2c_verify_client()

Type Parameter Key Value
PARAM_VALUE 0 dev 1-u64max
DATA_SOURCE 0 dev $0

drivers/i2c/i2c-core-base.c i2c_device_match() -> i2c_verify_client()

Type Parameter Key Value
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &of->mutex

drivers/i2c/i2c-core-base.c i2c_device_probe() -> i2c_verify_client()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
BUF_SIZE 0 dev (-1)-0,4,16,24,56,64,120,168-s32max
BUF_SIZE 0 dev (-1)-0,4,16,24,56,64,120,168-s32max
CAPPED_DATA 0 dev 1
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 0 &dev->mutex

drivers/i2c/i2c-core-base.c i2c_device_shutdown() -> i2c_verify_client()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
LOCK2 0 &dev->mutex
HALF_LOCKED2 &parent->mutex
HALF_LOCKED2 global &system_transition_mutex
TYPE_LOCK (struct device)->mutex

drivers/i2c/i2c-core-base.c i2c_find_device_by_fwnode() -> i2c_verify_client()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
DATA_SOURCE 0 dev r bus_find_device_by_fwnode
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &card->mutex
HALF_LOCKED2 _T->lock

drivers/media/v4l2-core/v4l2-async.c match_i2c() -> i2c_verify_client()

Type Parameter Key Value
BUF_SIZE 0 dev (-1),1616
BUF_SIZE 0 dev (-1),1616
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &list_lock

drivers/leds/leds-turris-omnia.c omnia_find_mcu_and_get_features() -> i2c_verify_client()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
DATA_SOURCE 0 dev r device_find_child
RX_PATH
TASK_NOT_RUNNING

drivers/leds/leds-turris-omnia.c omnia_match_mcu_client() -> i2c_verify_client()

Type Parameter Key Value
PARAM_VALUE 0 dev 1-u64max
DATA_SOURCE 0 dev $0
STR_LEN 0 dev (-1),31
STR_LEN 0 dev (-1),31
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dev->mutex
HALF_LOCKED2 &endpoint->dev.mutex
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &pdev->dev.mutex
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 _T->lock
HALF_LOCKED2 global &component_mutex
HALF_LOCKED2 global &dpm_list_mtx
HALF_LOCKED2 global &dsa2_mutex
HALF_LOCKED2 global &nvdimm_bus_list_mutex
HALF_LOCKED2 global &rtnl_mutex
HALF_LOCKED2 global &rx_queue_mutex
HALF_LOCKED2 global &system_transition_mutex
HALF_LOCKED2 global &wwan_register_lock

drivers/i2c/i2c-smbus.c smbus_do_alert() -> i2c_verify_client()

Type Parameter Key Value
PARAM_VALUE 0 dev 1-u64max
DATA_SOURCE 0 dev $0

drivers/i2c/i2c-smbus.c smbus_do_alert_force() -> i2c_verify_client()

Type Parameter Key Value
PARAM_VALUE 0 dev 1-u64max
DATA_SOURCE 0 dev $0

drivers/platform/x86/dell/dell-lis3lv02d.c i2c_bus_notify() -> i2c_verify_client()

Type Parameter Key Value
DATA_SOURCE 0 dev $2

drivers/hwmon/hwmon.c hwmon_pec_register() -> i2c_verify_client()

Type Parameter Key Value
STR_LEN 0 dev (-1)
STR_LEN 0 dev (-1)
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_byte
HALF_LOCKED2 &dev->mutex
HALF_LOCKED2 &hdev->driver_input_lock
HALF_LOCKED2 &mdev->intf_state_mutex
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &sp->mutex
HALF_LOCKED2 _T->lock

drivers/i2c/i2c-atr.c i2c_atr_bus_notifier_call() -> i2c_verify_client()

Type Parameter Key Value
DATA_SOURCE 0 dev $2

drivers/platform/x86/touchscreen_dmi.c ts_dmi_notifier_call() -> i2c_verify_client()

Type Parameter Key Value
DATA_SOURCE 0 dev $2

drivers/ptp/ptp_ocp.c ptp_ocp_nvmem_match() -> i2c_verify_client()

Type Parameter Key Value
DATA_SOURCE 0 dev $0 [m]
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_byte
HALF_LOCKED2 &buffer->mutex
HALF_LOCKED2 &frag->frag_sem
HALF_LOCKED2 &generic_phy->mutex
HALF_LOCKED2 &ns->subsys->lock
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &pdev->dev.mutex
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &seq->lock
HALF_LOCKED2 &sfile->lock
HALF_LOCKED2 &tb->lock
HALF_LOCKED2 _T->lock
HALF_LOCKED2 global &component_mutex
HALF_LOCKED2 global &hmem_resource_lock
HALF_LOCKED2 global &iommu_probe_device_lock
HALF_LOCKED2 global &pi_mutex
HALF_LOCKED2 global &vdpa_dev_lock

drivers/i2c/i2c-dev.c i2cdev_check() -> i2c_verify_client()

Type Parameter Key Value
PARAM_VALUE 0 dev 1-u64max
DATA_SOURCE 0 dev $0

sound/soc/intel/boards/bytcr_rt5640.c snd_byt_rt5640_mc_probe() -> i2c_verify_client()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
DATA_SOURCE 0 dev r bus_find_device_by_name
RX_PATH
TASK_NOT_RUNNING

drivers/iio/accel/fxls8962af-core.c fxls8962af_fifo_transfer() -> i2c_verify_client()

Type Parameter Key Value
DATA_SOURCE 0 dev r regmap_get_device
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 _T->lock

drivers/platform/x86/amd/amd_isp4.c isp_i2c_bus_notify() -> i2c_verify_client()

Type Parameter Key Value
DATA_SOURCE 0 dev $2