Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 38 files:

Smatch caller information:

drivers/media/platform/renesas/sh_vou.c sh_vou_probe() -> i2c_put_adapter()

Type Parameter Key Value
PARAM_VALUE 0 adap 4096-ptr_max
PARAM_VALUE 0 adap->owner->refcnt.counter 0-s32max
PARAM_VALUE 0 adap->owner->state 0-1,3-u32max
DATA_SOURCE 0 adap r i2c_get_adapter
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/media/platform/renesas/sh_vou.c sh_vou_remove() -> i2c_put_adapter()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 adap unit_byte
HALF_LOCKED2 &_dev->mutex

drivers/platform/mellanox/mlxreg-hotplug.c mlxreg_hotplug_device_create() -> i2c_put_adapter()

Type Parameter Key Value
PARAM_VALUE 0 adap 4096-ptr_max
PARAM_VALUE 0 adap->owner 0,4096-ptr_max
PARAM_VALUE 0 adap->owner->refcnt.counter 0-s32max
PARAM_VALUE 0 adap->owner->state 0-1,3-u32max
DATA_SOURCE 0 adap r i2c_get_adapter
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/platform/mellanox/mlxreg-hotplug.c mlxreg_hotplug_device_destroy() -> i2c_put_adapter()

Type Parameter Key Value
PARAM_VALUE 0 adap 1-u64max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/platform/mellanox/mlxreg-hotplug.c mlxreg_hotplug_probe() -> i2c_put_adapter()

Type Parameter Key Value
PARAM_VALUE 0 adap 4096-ptr_max
PARAM_VALUE 0 adap->owner 0,4096-ptr_max
PARAM_VALUE 0 adap->owner->refcnt.counter 0-s32max
PARAM_VALUE 0 adap->owner->state 0-1,3-u32max
DATA_SOURCE 0 adap r i2c_get_adapter
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/platform/mellanox/mlxreg-lc.c mlxreg_lc_probe() -> i2c_put_adapter()

Type Parameter Key Value
PARAM_VALUE 0 adap 4096-ptr_max
PARAM_VALUE 0 adap->owner 0,4096-ptr_max
PARAM_VALUE 0 adap->owner->refcnt.counter 0-s32max
PARAM_VALUE 0 adap->owner->state 0-1,3-u32max
DATA_SOURCE 0 adap r i2c_get_adapter
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/platform/mellanox/mlxreg-lc.c mlxreg_lc_remove() -> i2c_put_adapter()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &_dev->mutex

drivers/pci/pwrctrl/pci-pwrctrl-tc9563.c tc9563_pwrctrl_probe() -> i2c_put_adapter()

Type Parameter Key Value
PARAM_VALUE 0 adap 4096-ptr_max
DATA_SOURCE 0 adap r of_get_i2c_adapter_by_node
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/pci/pwrctrl/pci-pwrctrl-tc9563.c tc9563_pwrctrl_probe() -> i2c_put_adapter()

Type Parameter Key Value
PARAM_VALUE 0 adap 4096-ptr_max
DATA_SOURCE 0 adap r of_get_i2c_adapter_by_node
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/pci/pwrctrl/pci-pwrctrl-tc9563.c tc9563_pwrctrl_remove() -> i2c_put_adapter()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &_dev->mutex

drivers/net/phy/sfp.c sfp_cleanup() -> i2c_put_adapter()

Type Parameter Key Value
PARAM_VALUE 0 adap 1-u64max
NOCHECK_CALL

drivers/net/phy/sfp.c sfp_i2c_get() -> i2c_put_adapter()

Type Parameter Key Value
PARAM_VALUE 0 adap 4096-ptr_max
PARAM_VALUE 0 adap->algo 4096-ptr_max
PARAM_VALUE 0 adap->algo->functionality 4096-ptr_max
PARAM_VALUE 0 adap->owner 0,4096-ptr_max
PARAM_VALUE 0 adap->owner->refcnt.counter 0-s32max
PARAM_VALUE 0 adap->owner->state 0-1,3-u32max
DATA_SOURCE 0 adap r i2c_get_adapter_by_fwnode
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/i2c/muxes/i2c-mux-gpmux.c i2c_mux_probe() -> i2c_put_adapter()

Type Parameter Key Value
PARAM_VALUE 0 adap 4096-ptr_max
DATA_SOURCE 0 adap r mux_parent_adapter
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/i2c/muxes/i2c-mux-gpmux.c i2c_mux_remove() -> i2c_put_adapter()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 adap unit_byte
HALF_LOCKED2 &_dev->mutex

drivers/char/ipmi/ipmi_ipmb.c ipmi_ipmb_probe() -> i2c_put_adapter()

Type Parameter Key Value
PARAM_VALUE 0 adap 4096-ptr_max
DATA_SOURCE 0 adap r of_get_i2c_adapter_by_node
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/platform/mellanox/mlxreg-dpu.c mlxreg_dpu_probe() -> i2c_put_adapter()

Type Parameter Key Value
PARAM_VALUE 0 adap 4096-ptr_max
PARAM_VALUE 0 adap->owner 0,4096-ptr_max
PARAM_VALUE 0 adap->owner->refcnt.counter 0-s32max
PARAM_VALUE 0 adap->owner->state 0-1,3-u32max
DATA_SOURCE 0 adap r i2c_get_adapter
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/platform/mellanox/mlxreg-dpu.c mlxreg_dpu_remove() -> i2c_put_adapter()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &_dev->mutex

drivers/gpu/drm/exynos/exynos_hdmi.c hdmi_probe() -> i2c_put_adapter()

Type Parameter Key Value
PARAM_VALUE 0 adap 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/gpu/drm/exynos/exynos_hdmi.c hdmi_remove() -> i2c_put_adapter()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &_dev->mutex

drivers/gpu/drm/tegra/output.c tegra_output_probe() -> i2c_put_adapter()

Type Parameter Key Value
PARAM_VALUE 0 adap 1-u64max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/gpu/drm/tegra/output.c tegra_output_remove() -> i2c_put_adapter()

Type Parameter Key Value
PARAM_VALUE 0 adap 1-u64max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &_dev->mutex

drivers/gpu/drm/bridge/synopsys/dw-hdmi.c dw_hdmi_probe() -> i2c_put_adapter()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 global &component_mutex

drivers/gpu/drm/bridge/synopsys/dw-hdmi.c dw_hdmi_remove() -> i2c_put_adapter()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &_dev->mutex
HALF_LOCKED2 global &component_mutex

drivers/i2c/muxes/i2c-arb-gpio-challenge.c i2c_arbitrator_probe() -> i2c_put_adapter()

Type Parameter Key Value
PARAM_VALUE 0 adap 4096-ptr_max
DATA_SOURCE 0 adap r of_get_i2c_adapter_by_node
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 adap unit_byte

drivers/i2c/muxes/i2c-arb-gpio-challenge.c i2c_arbitrator_remove() -> i2c_put_adapter()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 adap unit_byte
HALF_LOCKED2 &_dev->mutex

drivers/gpu/drm/bridge/display-connector.c display_connector_destroy() -> i2c_put_adapter()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &encoder->bridge_chain_mutex
HALF_LOCKED2 &first_bridge->encoder->bridge_chain_mutex
HALF_LOCKED2 &output->bridge->encoder->bridge_chain_mutex
HALF_LOCKED2 &priv->encoder.bridge_chain_mutex

drivers/platform/x86/dell/dell-lis3lv02d.c instantiate_i2c_client() -> i2c_put_adapter()

Type Parameter Key Value
BUF_SIZE 0 adap 0
BIT_INFO 0 adap 0x0,0x0
NOCHECK_CALL
HALF_LOCKED2 &pool->lock

drivers/media/platform/samsung/s3c-camif/camif-core.c camif_register_sensor() -> i2c_put_adapter()

Type Parameter Key Value
PARAM_VALUE 0 adap 4096-ptr_max
PARAM_VALUE 0 adap->owner->refcnt.counter 0-s32max
PARAM_VALUE 0 adap->owner->state 0-1,3-u32max
DATA_SOURCE 0 adap r i2c_get_adapter
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/media/platform/samsung/s3c-camif/camif-core.c camif_unregister_sensor() -> i2c_put_adapter()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 adap unit_byte

drivers/i2c/i2c-dev.c i2cdev_open() -> i2c_put_adapter()

Type Parameter Key Value
PARAM_VALUE 0 adap 4096-ptr_max
PARAM_VALUE 0 adap->owner 0,4096-ptr_max
PARAM_VALUE 0 adap->owner->refcnt.counter 0-s32max
PARAM_VALUE 0 adap->owner->state 0-1,3-u32max
DATA_SOURCE 0 adap r i2c_get_adapter
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/i2c/i2c-dev.c i2cdev_release() -> i2c_put_adapter()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 adap unit_byte

drivers/gpu/drm/panel/panel-edp.c panel_edp_put_adapter() -> i2c_put_adapter()

Type Parameter Key Value
DATA_SOURCE 0 adap $0
NOCHECK_CALL

drivers/gpu/drm/sun4i/sun4i_hdmi_enc.c sun4i_hdmi_bind() -> i2c_put_adapter()

Type Parameter Key Value
PARAM_VALUE 0 adap 0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 global &component_mutex

drivers/gpu/drm/sun4i/sun4i_hdmi_enc.c sun4i_hdmi_unbind() -> i2c_put_adapter()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/platform/mellanox/mlx-platform.c mlxplat_mlxcpld_verify_bus_topology() -> i2c_put_adapter()

Type Parameter Key Value
PARAM_VALUE 0 adap 4096-ptr_max
PARAM_VALUE 0 adap->owner 0,4096-ptr_max
PARAM_VALUE 0 adap->owner->refcnt.counter 0-s32max
PARAM_VALUE 0 adap->owner->state 0-1,3-u32max
DATA_SOURCE 0 adap r i2c_get_adapter
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/gpu/drm/mediatek/mtk_hdmi_common.c mtk_hdmi_put_adapter() -> i2c_put_adapter()

Type Parameter Key Value
DATA_SOURCE 0 adap $0
NOCHECK_CALL

drivers/i2c/muxes/i2c-mux-pinctrl.c i2c_mux_pinctrl_probe() -> i2c_put_adapter()

Type Parameter Key Value
PARAM_VALUE 0 adap 4096-ptr_max
DATA_SOURCE 0 adap r i2c_mux_pinctrl_parent_adapter
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/i2c/muxes/i2c-mux-pinctrl.c i2c_mux_pinctrl_remove() -> i2c_put_adapter()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 adap unit_byte
HALF_LOCKED2 &_dev->mutex

drivers/i2c/muxes/i2c-mux-reg.c i2c_mux_reg_probe() -> i2c_put_adapter()

Type Parameter Key Value
PARAM_VALUE 0 adap 4096-ptr_max
PARAM_VALUE 0 adap->owner 0,4096-ptr_max
PARAM_VALUE 0 adap->owner->refcnt.counter 0-s32max
PARAM_VALUE 0 adap->owner->state 0-1,3-u32max
DATA_SOURCE 0 adap r i2c_get_adapter
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/i2c/muxes/i2c-mux-reg.c i2c_mux_reg_remove() -> i2c_put_adapter()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 adap unit_byte
HALF_LOCKED2 &_dev->mutex

drivers/i2c/i2c-core-of-prober.c i2c_of_probe_component() -> i2c_put_adapter()

Type Parameter Key Value
PARAM_VALUE 0 adap 4096-ptr_max
DATA_SOURCE 0 adap r of_get_i2c_adapter_by_node
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/i2c/muxes/i2c-demux-pinctrl.c i2c_demux_activate_master() -> i2c_put_adapter()

Type Parameter Key Value
PARAM_VALUE 0 adap 4096-ptr_max
CAPPED_DATA 0 adap->dev.parent 1
DATA_SOURCE 0 adap r of_get_i2c_adapter_by_node
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &of->mutex

drivers/i2c/muxes/i2c-demux-pinctrl.c i2c_demux_deactivate_master() -> i2c_put_adapter()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &_dev->mutex
HALF_LOCKED2 &of->mutex

drivers/gpu/drm/sti/sti_hdmi.c sti_hdmi_probe() -> i2c_put_adapter()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/gpu/drm/sti/sti_hdmi.c sti_hdmi_remove() -> i2c_put_adapter()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &_dev->mutex

drivers/gpu/drm/i915/display/intel_dsi_vbt.c mipi_exec_i2c() -> i2c_put_adapter()

Type Parameter Key Value
PARAM_VALUE 0 adap 4096-ptr_max
PARAM_VALUE 0 adap->dev.driver_data->adev->pm.bus_locked 0-1
PARAM_VALUE 0 adap->dev.driver_data->adev->pm.mutex.dep_map->name 0-255
PARAM_VALUE 0 adap->dev.driver_data->adev->pm.mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 adap->dev.driver_data->adev->pm.mutex.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 adap->dev.driver_data->adev->pm.mutex.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 adap->dev.driver_data->adev->pm.mutex.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 adap->dev.driver_data->adev->pm.mutex.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 adap->dev.driver_data->adev->pm.mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 adap->dev.driver_data->adev->powerplay.pp_handle->msg_lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 adap->lock_ops 4096-ptr_max
PARAM_VALUE 0 adap->owner 0,4096-ptr_max
PARAM_VALUE 0 adap->owner->refcnt.counter 0-s32max
PARAM_VALUE 0 adap->owner->state 0-1,3-u32max
DATA_SOURCE 0 adap r i2c_get_adapter
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/gpu/drm/gma500/oaktrail_lvds.c oaktrail_lvds_init() -> i2c_put_adapter()

Type Parameter Key Value
PARAM_VALUE 0 adap 4096-ptr_max
PARAM_VALUE 0 adap->owner 0,4096-ptr_max
PARAM_VALUE 0 adap->owner->refcnt.counter 0-s32max
PARAM_VALUE 0 adap->owner->state 0-1,3-u32max
DATA_SOURCE 0 adap r i2c_get_adapter
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &dev->mode_config.mutex
TYPE_LOCK (struct drm_mode_config)->mutex

drivers/gpu/drm/gma500/oaktrail_lvds.c oaktrail_lvds_init() -> i2c_put_adapter()

Type Parameter Key Value
PARAM_VALUE 0 adap 4096-ptr_max
PARAM_VALUE 0 adap->owner 0,4096-ptr_max
PARAM_VALUE 0 adap->owner->refcnt.counter 0-s32max
PARAM_VALUE 0 adap->owner->state 0-1,3-u32max
DATA_SOURCE 0 adap r i2c_get_adapter
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/platform/mellanox/nvsw-sn2201.c nvsw_sn2201_config_post_init() -> i2c_put_adapter()

Type Parameter Key Value
PARAM_VALUE 0 adap 4096-ptr_max
PARAM_VALUE 0 adap->owner 0,4096-ptr_max
PARAM_VALUE 0 adap->owner->refcnt.counter 0-s32max
PARAM_VALUE 0 adap->owner->state 0-1,3-u32max
DATA_SOURCE 0 adap r i2c_get_adapter
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/platform/mellanox/nvsw-sn2201.c nvsw_sn2201_config_post_init() -> i2c_put_adapter()

Type Parameter Key Value
PARAM_VALUE 0 adap 4096-ptr_max
PARAM_VALUE 0 adap->owner 0,4096-ptr_max
PARAM_VALUE 0 adap->owner->refcnt.counter 0-s32max
PARAM_VALUE 0 adap->owner->state 0-1,3-u32max
DATA_SOURCE 0 adap r i2c_get_adapter
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/platform/mellanox/nvsw-sn2201.c nvsw_sn2201_destroy_static_devices() -> i2c_put_adapter()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &_dev->mutex

drivers/platform/mellanox/nvsw-sn2201.c nvsw_sn2201_i2c_completion_notify() -> i2c_put_adapter()

Type Parameter Key Value
PARAM_VALUE 0 adap 4096-ptr_max
PARAM_VALUE 0 adap->owner->refcnt.counter 0-s32max
PARAM_VALUE 0 adap->owner->state 0-1,3-u32max
DATA_SOURCE 0 adap r i2c_get_adapter
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/platform/mellanox/nvsw-sn2201.c nvsw_sn2201_i2c_completion_notify() -> i2c_put_adapter()

Type Parameter Key Value
PARAM_VALUE 0 adap->dev.kobj.release->timer->entry.pprev 4096-ptr_max
PARAM_VALUE 0 adap->dev.kobj.release.work.entry.next->prev 4096-ptr_max
PARAM_VALUE 0 adap->owner->refcnt.counter 0-s32max
PARAM_VALUE 0 adap->owner->state 0-1,3-u32max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/platform/mellanox/nvsw-sn2201.c nvsw_sn2201_remove() -> i2c_put_adapter()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &_dev->mutex

drivers/gpu/drm/vc4/vc4_hdmi.c vc4_hdmi_put_ddc() -> i2c_put_adapter()

Type Parameter Key Value
NOCHECK_CALL

drivers/gpu/drm/gma500/oaktrail_hdmi.c oaktrail_hdmi_get_modes() -> i2c_put_adapter()

Type Parameter Key Value
PARAM_VALUE 0 adap 4096-ptr_max
PARAM_VALUE 0 adap->owner 0,4096-ptr_max
PARAM_VALUE 0 adap->owner->refcnt.counter 0-s32max
PARAM_VALUE 0 adap->owner->state 0-1,3-u32max
DATA_SOURCE 0 adap r i2c_get_adapter
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &client->modeset_mutex
HALF_LOCKED2 &connector->dev->mode_config.connection_mutex
HALF_LOCKED2 &dev->mode_config.connection_mutex
HALF_LOCKED2 &dev->mode_config.mutex
HALF_LOCKED2 &drm->mode_config.mutex
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 _T->lock

drivers/i2c/muxes/i2c-mux-gpio.c i2c_mux_gpio_probe() -> i2c_put_adapter()

Type Parameter Key Value
PARAM_VALUE 0 adap 4096-ptr_max
PARAM_VALUE 0 adap->owner 0,4096-ptr_max
PARAM_VALUE 0 adap->owner->refcnt.counter 0-s32max
PARAM_VALUE 0 adap->owner->state 0-1,3-u32max
DATA_SOURCE 0 adap r i2c_get_adapter
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/i2c/muxes/i2c-mux-gpio.c i2c_mux_gpio_remove() -> i2c_put_adapter()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 adap unit_byte
HALF_LOCKED2 &_dev->mutex