Defined in 2 files as a function:

Referenced in 2 files:

Smatch caller information:

drivers/i2c/busses/i2c-rk3x.c rk3x_i2c_adapt_div() -> i2c_readl()

Type Parameter Key Value
PARAM_VALUE 0 i2c_dev 4096-ptr_max
PARAM_VALUE 1 reg 0
BUF_SIZE 0 i2c_dev s32min-(-1),1-s32max
BUF_SIZE 0 i2c_dev s32min-(-1),1-s32max
BUF_SIZE 0 i2c_dev->adap.algo (-1),56
BUF_SIZE 0 i2c_dev->adap.algo_data (-1),2640
BUF_SIZE 0 i2c_dev->adap.dev.parent (-1),1616
BUF_SIZE 0 i2c_dev->clk (-1),1-s32max
BUF_SIZE 0 i2c_dev->dev (-1),1616
BUF_SIZE 0 i2c_dev->pclk (-1),1-s32max
DATA_SOURCE 0 i2c_dev $0
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
UNITS 0 i2c_dev unit_byte
LOCK2 flags
LOCK2 0 &i2c_dev->lock
TYPE_LOCK (struct rk3x_i2c)->lock

drivers/i2c/busses/i2c-rk3x.c rk3x_i2c_handle_read() -> i2c_readl()

Type Parameter Key Value
PARAM_VALUE 0 i2c_dev 4096-ptr_max
PARAM_VALUE 1 reg 512-540
BUF_SIZE 0 i2c_dev s32min-(-1),1-s32max
BUF_SIZE 0 i2c_dev s32min-(-1),1-s32max
CAPPED_DATA 1 reg 1
DATA_SOURCE 0 i2c_dev $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 0 i2c_dev unit_byte
LOCK2 0 &i2c_dev->lock
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct rk3x_i2c)->lock

drivers/i2c/busses/i2c-rk3x.c rk3x_i2c_handle_start() -> i2c_readl()

Type Parameter Key Value
PARAM_VALUE 0 i2c_dev 4096-ptr_max
PARAM_VALUE 1 reg 0
BUF_SIZE 0 i2c_dev s32min-(-1),1-s32max
BUF_SIZE 0 i2c_dev s32min-(-1),1-s32max
DATA_SOURCE 0 i2c_dev $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 0 i2c_dev unit_byte
LOCK2 0 &i2c_dev->lock
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct rk3x_i2c)->lock

drivers/i2c/busses/i2c-rk3x.c rk3x_i2c_handle_stop() -> i2c_readl()

Type Parameter Key Value
PARAM_VALUE 0 i2c_dev 4096-ptr_max
PARAM_VALUE 1 reg 0
BUF_SIZE 0 i2c_dev s32min-(-1),1-s32max
BUF_SIZE 0 i2c_dev s32min-(-1),1-s32max
DATA_SOURCE 0 i2c_dev $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 0 i2c_dev unit_byte
LOCK2 0 &i2c_dev->lock
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct rk3x_i2c)->lock

drivers/i2c/busses/i2c-rk3x.c rk3x_i2c_irq() -> i2c_readl()

Type Parameter Key Value
PARAM_VALUE 0 i2c_dev 4096-ptr_max
PARAM_VALUE 1 reg 28
BUF_SIZE 0 i2c_dev s32min-(-1),1-s32max
BUF_SIZE 0 i2c_dev s32min-(-1),1-s32max
DATA_SOURCE 0 i2c_dev $1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
UNITS 0 i2c_dev unit_byte
LOCK2 0 &i2c_dev->lock
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 flags
TYPE_LOCK (struct rk3x_i2c)->lock

drivers/i2c/busses/i2c-rk3x.c rk3x_i2c_prepare_read() -> i2c_readl()

Type Parameter Key Value
PARAM_VALUE 0 i2c_dev 4096-ptr_max
PARAM_VALUE 1 reg 0
BUF_SIZE 0 i2c_dev s32min-(-1),1-s32max
BUF_SIZE 0 i2c_dev s32min-(-1),1-s32max
DATA_SOURCE 0 i2c_dev $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 0 i2c_dev unit_byte
LOCK2 0 &i2c_dev->lock
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
TYPE_LOCK (struct rk3x_i2c)->lock

drivers/i2c/busses/i2c-rk3x.c rk3x_i2c_start() -> i2c_readl()

Type Parameter Key Value
PARAM_VALUE 0 i2c_dev 4096-ptr_max
PARAM_VALUE 1 reg 0
BUF_SIZE 0 i2c_dev s32min-(-2),1-s32max
BUF_SIZE 0 i2c_dev s32min-(-2),1-s32max
DATA_SOURCE 0 i2c_dev $0
UNITS 0 i2c_dev unit_byte

drivers/i2c/busses/i2c-rk3x.c rk3x_i2c_stop() -> i2c_readl()

Type Parameter Key Value
PARAM_VALUE 0 i2c_dev 4096-ptr_max
PARAM_VALUE 1 reg 0
BUF_SIZE 0 i2c_dev s32min-(-1),1-s32max
BUF_SIZE 0 i2c_dev s32min-(-1),1-s32max
DATA_SOURCE 0 i2c_dev $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 0 i2c_dev unit_byte
LOCK2 0 &i2c_dev->lock
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
TYPE_LOCK (struct rk3x_i2c)->lock

drivers/i2c/busses/i2c-rk3x.c rk3x_i2c_stop() -> i2c_readl()

Type Parameter Key Value
PARAM_VALUE 0 i2c_dev 4096-ptr_max
PARAM_VALUE 1 reg 0
BUF_SIZE 0 i2c_dev s32min-(-1),1-s32max
BUF_SIZE 0 i2c_dev s32min-(-1),1-s32max
DATA_SOURCE 0 i2c_dev $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 0 i2c_dev unit_byte
LOCK2 0 &i2c_dev->lock
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
TYPE_LOCK (struct rk3x_i2c)->lock

drivers/i2c/busses/i2c-rk3x.c rk3x_i2c_xfer_common() -> i2c_readl()

Type Parameter Key Value
PARAM_VALUE 0 i2c_dev 4096-ptr_max
PARAM_VALUE 1 reg 0
BUF_SIZE 0 i2c_dev s32min-(-2),1-s32max
BUF_SIZE 0 i2c_dev s32min-(-2),1-s32max
PREEMPT_ADD <- disables preempt
UNITS 0 i2c_dev unit_byte
LOCK2 flags
LOCK2 0 &i2c_dev->lock
TYPE_LOCK (struct rk3x_i2c)->lock

drivers/i2c/busses/i2c-tegra.c tegra_i2c_disable_packet_mode() -> i2c_readl()

Type Parameter Key Value
PARAM_VALUE 0 i2c_dev 4096-ptr_max
BUF_SIZE 0 i2c_dev s32min-(-1),1-s32max
BUF_SIZE 0 i2c_dev s32min-(-1),1-s32max
DATA_SOURCE 0 i2c_dev $0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 i2c_dev unit_byte
HALF_LOCKED2 _T->lock
HALF_LOCKED2 irq

drivers/i2c/busses/i2c-tegra.c tegra_i2c_empty_rx_fifo() -> i2c_readl()

Type Parameter Key Value
PARAM_VALUE 0 i2c_dev 4096-ptr_max
BUF_SIZE 0 i2c_dev s32min-(-1),1-s32max
BUF_SIZE 0 i2c_dev s32min-(-1),1-s32max
DATA_SOURCE 0 i2c_dev $0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 i2c_dev unit_byte
HALF_LOCKED2 _T->lock
HALF_LOCKED2 irq

drivers/i2c/busses/i2c-tegra.c tegra_i2c_empty_rx_fifo() -> i2c_readl()

Type Parameter Key Value
PARAM_VALUE 0 i2c_dev 4096-ptr_max
BUF_SIZE 0 i2c_dev s32min-(-1),1-s32max
BUF_SIZE 0 i2c_dev s32min-(-1),1-s32max
DATA_SOURCE 0 i2c_dev $0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 i2c_dev unit_byte
HALF_LOCKED2 _T->lock
HALF_LOCKED2 irq

drivers/i2c/busses/i2c-tegra.c tegra_i2c_empty_rx_fifo() -> i2c_readl()

Type Parameter Key Value
PARAM_VALUE 0 i2c_dev 4096-ptr_max
BUF_SIZE 0 i2c_dev s32min-(-1),1-s32max
BUF_SIZE 0 i2c_dev s32min-(-1),1-s32max
DATA_SOURCE 0 i2c_dev $0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 i2c_dev unit_byte
HALF_LOCKED2 _T->lock
HALF_LOCKED2 irq

drivers/i2c/busses/i2c-tegra.c tegra_i2c_fill_tx_fifo() -> i2c_readl()

Type Parameter Key Value
PARAM_VALUE 0 i2c_dev 4096-ptr_max
BUF_SIZE 0 i2c_dev s32min-(-1),1-s32max
BUF_SIZE 0 i2c_dev s32min-(-1),1-s32max
BUF_SIZE 0 i2c_dev->msg_buf s32min-(-1),1-s32max
DATA_SOURCE 0 i2c_dev $0
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 i2c_dev->div_clk->core->parent->req_rate
UNITS 0 i2c_dev unit_byte

drivers/i2c/busses/i2c-tegra.c tegra_i2c_fill_tx_fifo() -> i2c_readl()

Type Parameter Key Value
PARAM_VALUE 0 i2c_dev 4096-ptr_max
BUF_SIZE 0 i2c_dev s32min-(-1),1-s32max
BUF_SIZE 0 i2c_dev s32min-(-1),1-s32max
BUF_SIZE 0 i2c_dev->msg_buf s32min-(-1),1-s32max
DATA_SOURCE 0 i2c_dev $0
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 i2c_dev->div_clk->core->parent->req_rate
UNITS 0 i2c_dev unit_byte

drivers/i2c/busses/i2c-tegra.c tegra_i2c_flush_fifos() -> i2c_readl()

Type Parameter Key Value
PARAM_VALUE 0 i2c_dev 4096-ptr_max
PARAM_VALUE 1 reg 92,96,180,184
BUF_SIZE 0 i2c_dev s32min-(-1),1-s32max
BUF_SIZE 0 i2c_dev s32min-(-1),1-s32max
BUF_SIZE 0 i2c_dev->dev (-1),1616
BUF_SIZE 0 i2c_dev->msg_buf s32min-(-1),1-s32max
DATA_SOURCE 0 i2c_dev $0
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 *i2c_dev->msg_buf 0-255
NO_OVERFLOW_SIMPLE 0 i2c_dev->div_clk->core->parent->req_rate
UNITS 0 i2c_dev unit_byte

drivers/i2c/busses/i2c-tegra.c tegra_i2c_init() -> i2c_readl()

Type Parameter Key Value
PARAM_VALUE 0 i2c_dev 4096-ptr_max
BUF_SIZE 0 i2c_dev s32min-(-2),1-s32max
BUF_SIZE 0 i2c_dev s32min-(-2),1-s32max
BUF_SIZE 0 i2c_dev->dev (-1),1616
BUF_SIZE 0 i2c_dev->msg_buf s32min-(-1),1-s32max
CAPPED_DATA 0 i2c_dev->hw->regs->tx_fifo 1
DATA_SOURCE 0 i2c_dev $0
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 *i2c_dev->msg_buf 0-255
NO_OVERFLOW_SIMPLE 0 i2c_dev->div_clk->core->parent->req_rate
UNITS 0 i2c_dev unit_byte

drivers/i2c/busses/i2c-tegra.c tegra_i2c_isr() -> i2c_readl()

Type Parameter Key Value
PARAM_VALUE 0 i2c_dev 4096-ptr_max
BUF_SIZE 0 i2c_dev s32min-(-1),1-s32max
BUF_SIZE 0 i2c_dev s32min-(-1),1-s32max
DATA_SOURCE 0 i2c_dev $1
RX_PATH
TASK_NOT_RUNNING
UNITS 0 i2c_dev unit_byte

drivers/i2c/busses/i2c-tegra.c tegra_i2c_isr() -> i2c_readl()

Type Parameter Key Value
PARAM_VALUE 0 i2c_dev 4096-ptr_max
BUF_SIZE 0 i2c_dev s32min-(-1),1-s32max
BUF_SIZE 0 i2c_dev s32min-(-1),1-s32max
DATA_SOURCE 0 i2c_dev $1
RX_PATH
TASK_NOT_RUNNING
UNITS 0 i2c_dev unit_byte

drivers/i2c/busses/i2c-tegra.c tegra_i2c_isr() -> i2c_readl()

Type Parameter Key Value
PARAM_VALUE 0 i2c_dev 4096-ptr_max
BUF_SIZE 0 i2c_dev s32min-(-1),1-s32max
BUF_SIZE 0 i2c_dev s32min-(-1),1-s32max
DATA_SOURCE 0 i2c_dev $1
RX_PATH
TASK_NOT_RUNNING
UNITS 0 i2c_dev unit_byte

drivers/i2c/busses/i2c-tegra.c tegra_i2c_isr() -> i2c_readl()

Type Parameter Key Value
PARAM_VALUE 0 i2c_dev 4096-ptr_max
BUF_SIZE 0 i2c_dev s32min-(-1),1-s32max
BUF_SIZE 0 i2c_dev s32min-(-1),1-s32max
DATA_SOURCE 0 i2c_dev $1
RX_PATH
TASK_NOT_RUNNING
UNITS 0 i2c_dev unit_byte

drivers/i2c/busses/i2c-tegra.c tegra_i2c_issue_bus_clear() -> i2c_readl()

Type Parameter Key Value
PARAM_VALUE 0 i2c_dev 4096-ptr_max
BUF_SIZE 0 i2c_dev s32min-(-2),1-s32max
BUF_SIZE 0 i2c_dev s32min-(-2),1-s32max
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 *i2c_dev->msg_buf 0-255
UNITS 0 i2c_dev unit_byte
HALF_LOCKED2 &ctrl->lock
HALF_LOCKED2 &drv_data->lock

drivers/i2c/busses/i2c-tegra.c tegra_i2c_mask_irq() -> i2c_readl()

Type Parameter Key Value
PARAM_VALUE 0 i2c_dev 4096-ptr_max
BUF_SIZE 0 i2c_dev s32min-(-1),1-s32max
BUF_SIZE 0 i2c_dev s32min-(-1),1-s32max
BUF_SIZE 0 i2c_dev->msg_buf s32min-(-1),1-s32max
DATA_SOURCE 0 i2c_dev $0
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 *i2c_dev->msg_buf 0-255
NO_OVERFLOW_SIMPLE 0 i2c_dev->div_clk->core->parent->req_rate
UNITS 0 i2c_dev unit_byte

drivers/i2c/busses/i2c-tegra.c tegra_i2c_poll_completion() -> i2c_readl()

Type Parameter Key Value
PARAM_VALUE 0 i2c_dev 4096-ptr_max
BUF_SIZE 0 i2c_dev s32min-(-2),1-s32max
BUF_SIZE 0 i2c_dev s32min-(-2),1-s32max
BUF_SIZE 0 i2c_dev->msg_buf s32min-(-1),1-s32max
DATA_SOURCE 0 i2c_dev $0
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 *i2c_dev->msg_buf 0-255
NO_OVERFLOW_SIMPLE 0 i2c_dev->div_clk->core->parent->req_rate
UNITS 0 i2c_dev unit_byte

drivers/i2c/busses/i2c-tegra.c tegra_i2c_unmask_irq() -> i2c_readl()

Type Parameter Key Value
PARAM_VALUE 0 i2c_dev 4096-ptr_max
BUF_SIZE 0 i2c_dev s32min-(-2),1-s32max
BUF_SIZE 0 i2c_dev s32min-(-2),1-s32max
BUF_SIZE 0 i2c_dev->msg_buf s32min-(-1),1-s32max
DATA_SOURCE 0 i2c_dev $0
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 i2c_dev->div_clk->core->parent->req_rate
UNITS 0 i2c_dev unit_byte

drivers/i2c/busses/i2c-tegra.c tegra_i2c_xfer_msg() -> i2c_readl()

Type Parameter Key Value
PARAM_VALUE 0 i2c_dev 4096-ptr_max
BUF_SIZE 0 i2c_dev s32min-(-2),1-s32max
BUF_SIZE 0 i2c_dev s32min-(-2),1-s32max
BUF_SIZE 0 i2c_dev->msg_buf s32min-(-1),1-s32max
CAPPED_DATA 0 i2c_dev->hw->regs->tx_fifo 1
DATA_SOURCE 0 i2c_dev $0
UNITS 0 i2c_dev unit_byte