Defined in 1 files as a function:

Referenced in 52 files:

Smatch caller information:

drivers/i2c/busses/i2c-ls2x.c ls2x_i2c_start() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-18446744073709547519
DATA_SOURCE 0 msg $1

drivers/i2c/busses/i2c-axxia.c axxia_i2c_set_addr() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max
DATA_SOURCE 0 msg $1
BIT_INFO 0 msg->flags 0x0,0xffef

drivers/i2c/busses/i2c-stm32f4.c stm32f4_i2c_xfer_msg() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max
DATA_SOURCE 0 msg $1

drivers/i2c/i2c-core-smbus.c i2c_smbus_msg_pec() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max
BUF_SIZE 0 msg (-1),32
BUF_SIZE 0 msg (-1),32
DATA_SOURCE 0 msg $1
RX_PATH
TASK_NOT_RUNNING

drivers/i2c/busses/i2c-st.c st_i2c_xfer_msg() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max
DATA_SOURCE 0 msg $1

drivers/i2c/busses/i2c-cgbc.c cgbc_i2c_xfer_msg() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value

drivers/i3c/master/renesas-i3c.c renesas_i3c_start_isr() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &i3c->xferqueue.lock
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 flags
TYPE_LOCK (struct renesas_i3c_xferqueue)->lock

drivers/i2c/busses/i2c-cp2615.c cp2615_i2c_xfer() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max

drivers/i2c/busses/i2c-mv64xxx.c mv64xxx_i2c_prepare_for_io() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max
DATA_SOURCE 0 msg $1
BIT_INFO 0 msg->flags 0x0,0xffef
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &drv_data->lock
HALF_LOCKED2 flags
TYPE_LOCK (struct mv64xxx_i2c_data)->lock

drivers/i2c/busses/i2c-qup.c qup_i2c_set_tags() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max
DATA_SOURCE 0 msg $2

drivers/i2c/busses/i2c-qup.c qup_i2c_write_rx_tags_v1() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING

drivers/i2c/busses/i2c-qup.c qup_i2c_write_tx_fifo_v1() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max
TASK_NOT_RUNNING

drivers/i2c/busses/i2c-aspeed.c aspeed_i2c_do_start() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &bus->lock
HALF_LOCKED2 flags
TYPE_LOCK (struct aspeed_i2c_bus)->lock

drivers/i2c/busses/i2c-bcm-kona.c bcm_kona_i2c_do_addr() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max
DATA_SOURCE 0 msg $1
BIT_INFO 0 msg->flags 0x0,0xbfef

drivers/i2c/busses/i2c-pasemi-core.c pasemi_i2c_xfer_msg() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max
DATA_SOURCE 0 msg $1

drivers/i2c/busses/i2c-img-scb.c img_i2c_atomic() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &i2c->lock
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct img_i2c)->lock

drivers/i2c/busses/i2c-owl.c owl_i2c_xfer_common() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max
PREEMPT_ADD <- disables preempt
LOCK2 &i2c_dev->lock
LOCK2 flags
TYPE_LOCK (struct owl_i2c_dev)->lock

drivers/i2c/busses/i2c-owl.c owl_i2c_xfer_common() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max
PREEMPT_ADD <- disables preempt
LOCK2 &i2c_dev->lock
LOCK2 flags
TYPE_LOCK (struct owl_i2c_dev)->lock

drivers/i2c/busses/i2c-iop3xx.c iic_cook_addr() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max
PARAM_VALUE 0 msg->addr 1-u16max
DATA_SOURCE 0 msg $0

drivers/i2c/algos/i2c-algo-pca.c pca_address() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max
DATA_SOURCE 0 msg $1

drivers/i2c/busses/i2c-mt65xx.c mtk_i2c_do_transfer() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max
DATA_SOURCE 0 msg $1

drivers/i2c/busses/i2c-mxs.c mxs_i2c_dma_setup_xfer() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max
PARAM_VALUE 0 msg->flags 1-u16max
CAPPED_DATA 0 msg->len 1
DATA_SOURCE 0 msg $1

drivers/i2c/busses/i2c-mxs.c mxs_i2c_pio_setup_xfer() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max
PARAM_VALUE 0 msg->flags 1-u16max
DATA_SOURCE 0 msg $1

drivers/i2c/busses/i2c-eg20t.c pch_i2c_readbytes() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max
PARAM_VALUE 0 msg->flags 1-u16max
DATA_SOURCE 0 msg $1
BIT_INFO 0 msg->flags 0x0,0xffef
LOCK2 global &pch_mutex

drivers/i2c/busses/i2c-eg20t.c pch_i2c_writebytes() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max
DATA_SOURCE 0 msg $1
BIT_INFO 0 msg->flags 0x0,0xffef
LOCK2 global &pch_mutex

drivers/i2c/busses/i2c-nct6694.c nct6694_i2c_xfer() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max

drivers/i2c/busses/i2c-xiic.c xiic_start_recv() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &i2c->atomic_lock
HALF_LOCKED2 &i2c->lock

drivers/i2c/busses/i2c-xiic.c xiic_start_recv() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &i2c->atomic_lock
HALF_LOCKED2 &i2c->lock

drivers/i2c/busses/i2c-xiic.c xiic_start_send() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &i2c->atomic_lock
HALF_LOCKED2 &i2c->lock

drivers/i2c/busses/i2c-xiic.c xiic_start_send() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &i2c->atomic_lock
HALF_LOCKED2 &i2c->lock

drivers/i2c/algos/i2c-algo-bit.c bit_doAddress() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max
DATA_SOURCE 0 msg $1
BIT_INFO 0 msg->flags 0x0,0xbfff
HALF_LOCKED2 &bus->mutex
HALF_LOCKED2 &bus->pad->mutex
HALF_LOCKED2 &i2c_adap->dev.driver_data->ast->modeset_lock
HALF_LOCKED2 &i2c_adap->dev.driver_data->mdev->rmmio_lock
HALF_LOCKED2 &i2c_adap->dev.driver_data->mutex

drivers/i2c/busses/i2c-synquacer.c synquacer_i2c_master_start() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
DATA_SOURCE 0 msg $1
RX_PATH
TASK_NOT_RUNNING

drivers/i2c/busses/i2c-microchip-corei2c.c mchp_corei2c_next_msg() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags

drivers/i2c/busses/i2c-microchip-corei2c.c mchp_corei2c_xfer() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max
BUF_SIZE 0 msg 32
BUF_SIZE 0 msg 32
DATA_SOURCE 0 msg $1
RX_PATH
TASK_NOT_RUNNING

drivers/i2c/busses/i2c-kempld.c kempld_i2c_process() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max
BIT_INFO 0 msg->flags 0x0,0xffef
LOCK2 &pld->lock
TYPE_LOCK (struct kempld_device_data)->lock

drivers/i2c/busses/i2c-imx.c i2c_imx_atomic_write() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max
DATA_SOURCE 0 msg $1

drivers/i2c/busses/i2c-imx.c i2c_imx_atomic_write() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max
DATA_SOURCE 0 msg $1

drivers/i2c/busses/i2c-imx.c i2c_imx_dma_write() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max
PARAM_VALUE 0 msg->flags 512-u16max
CAPPED_DATA 0 msg->buf 1
DATA_SOURCE 0 msg $1

drivers/i2c/busses/i2c-imx.c i2c_imx_prepare_read() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max
PARAM_VALUE 0 msg->flags 1-u16max
DATA_SOURCE 0 msg $1

drivers/i2c/busses/i2c-imx.c i2c_imx_read() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max
PARAM_VALUE 0 msg->flags 1-u16max
DATA_SOURCE 0 msg $1

drivers/i2c/busses/i2c-imx.c i2c_imx_read() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max
PARAM_VALUE 0 msg->flags 1-u16max
DATA_SOURCE 0 msg $1

drivers/i2c/busses/i2c-imx.c i2c_imx_write() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max
DATA_SOURCE 0 msg $1

drivers/i2c/busses/i2c-imx.c i2c_imx_write() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max
DATA_SOURCE 0 msg $1

drivers/i2c/busses/i2c-sh_mobile.c i2c_op() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &pd->lock
LOCK2 flags
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
TYPE_LOCK (struct sh_mobile_i2c_data)->lock

drivers/i2c/busses/i2c-rzv2m.c rzv2m_i2c_send_address() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max
DATA_SOURCE 0 msg $1
BIT_INFO 0 msg->flags 0x0,0xffef

drivers/i2c/busses/i2c-bcm-iproc.c bcm_iproc_i2c_xfer_internal() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max

drivers/i2c/busses/i2c-bcm-iproc.c bcm_iproc_i2c_xfer_internal() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4097-18446744073709547521
PARAM_VALUE 0 msg->flags 1-u16max

drivers/i2c/busses/i2c-npcm7xx.c npcm_i2c_master_xfer() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max

drivers/i2c/busses/i2c-rcar.c rcar_i2c_prepare_msg() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING

drivers/i2c/busses/i2c-brcmstb.c brcmstb_i2c_do_addr() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max
DATA_SOURCE 0 msg $1
BIT_INFO 0 msg->flags 0x0,0xbfef

drivers/i2c/busses/i2c-nvidia-gpu.c gpu_i2c_xfer() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value

drivers/i2c/busses/i2c-riic.c riic_tdre_isr() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 flags

drivers/i2c/busses/i2c-hix5hd2.c hix5hd2_i2c_message_start() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max
PREEMPT_ADD <- disables preempt
LOCK2 &priv->lock
LOCK2 flags
TYPE_LOCK (struct hix5hd2_i2c_priv)->lock

drivers/hwmon/pmbus/adm1266.c adm1266_pmbus_block_xfer() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 2718329707786825728
PARAM_VALUE 0 msg->flags 512
BUF_SIZE 0 msg 32
RX_PATH
TASK_NOT_RUNNING
LOCK2 &data->buf_mutex
LOCK2 &data->client->dev.driver_data->update_lock
LOCK2 _T->lock
HALF_LOCKED2 &s->lock
TYPE_LOCK (struct adm1266_data)->buf_mutex

drivers/hwmon/pmbus/adm1266.c adm1266_pmbus_block_xfer() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 2718329707786825736
PARAM_VALUE 0 msg->flags 513
RX_PATH
TASK_NOT_RUNNING
LOCK2 &data->buf_mutex
LOCK2 &data->client->dev.driver_data->update_lock
LOCK2 _T->lock
HALF_LOCKED2 &s->lock
TYPE_LOCK (struct adm1266_data)->buf_mutex

drivers/i2c/busses/i2c-lpc2k.c i2c_lpc2k_pump_msg() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq

drivers/i2c/busses/i2c-mchp-pci1xxxx.c pci1xxxx_i2c_xfer() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max

drivers/i2c/busses/i2c-ls2x-v2.c loongson2_i2c_xfer_msg() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max
DATA_SOURCE 0 msg $1

drivers/media/common/saa7146/saa7146_i2c.c saa7146_i2c_msg_prepare() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 &dev->i2c_lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct saa7146_dev)->i2c_lock

drivers/i2c/busses/i2c-diolan-u2c.c diolan_usb_xfer() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max

drivers/i2c/busses/i2c-mt7621.c mtk_i2c_xfer() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max
BIT_INFO 0 msg->flags 0x0,0xffef

drivers/i2c/busses/i2c-ocores.c ocores_process() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4097-ptr_max
BIT_INFO 0 msg->flags 0x0,0xbfff
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &i2c->process_lock
LOCK2 flags
HALF_LOCKED2 _T->lock
HALF_LOCKED2 irq
TYPE_LOCK (struct ocores_i2c)->process_lock

drivers/i2c/busses/i2c-ocores.c ocores_xfer_core() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
DATA_SOURCE 0 msg $1

drivers/i2c/busses/i2c-altera.c altr_i2c_xfer_msg() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
DATA_SOURCE 0 msg $1

drivers/i2c/busses/i2c-emev2.c __em_i2c_xfer() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max
DATA_SOURCE 0 msg $1

drivers/i2c/busses/i2c-imx-lpi2c.c lpi2c_imx_start() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4096-ptr_max
DATA_SOURCE 0 msg $1

drivers/i2c/busses/i2c-pxa.c i2c_pxa_irq_txempty() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PARAM_VALUE 0 msg 4097-ptr_max
BIT_INFO 0 msg->flags 0x0,0xbfff
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq

drivers/i2c/busses/i2c-pxa.c i2c_pxa_start_message() -> i2c_8bit_addr_from_msg()

Type Parameter Key Value
PREEMPT_ADD
HALF_LOCKED2 &i2c->lock
HALF_LOCKED2 irq