Documented in 1 files:

Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

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

Type Parameter Key Value
PARAM_VALUE 0 i2c 4096-ptr_max
PARAM_VALUE 0 i2c->lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 i2c->msg 4096-ptr_max
PARAM_VALUE 0 i2c->processed 0-u16max
PARAM_VALUE 0 i2c->state 2
BUF_SIZE 0 i2c s32min-(-1),1-s32max
BUF_SIZE 0 i2c s32min-(-1),1-s32max
CAPPED_DATA 0 i2c->msg->len 1
CAPPED_DATA 0 i2c->processed 1
DATA_SOURCE 0 i2c $0
PARAM_COMPARE 0 i2c->msg->len == $0->processed
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 i2c unit_byte
LOCK2 0 &i2c->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() -> rk3x_i2c_stop()

Type Parameter Key Value
PARAM_VALUE 0 i2c 4096-ptr_max
PARAM_VALUE 0 i2c->lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 i2c->state 1
PARAM_VALUE 1 error (-5)
BUF_SIZE 0 i2c s32min-(-1),1-s32max
BUF_SIZE 0 i2c s32min-(-1),1-s32max
DATA_SOURCE 0 i2c $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 i2c unit_byte
LOCK2 0 &i2c->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() -> rk3x_i2c_stop()

Type Parameter Key Value
PARAM_VALUE 0 i2c 4096-ptr_max
PARAM_VALUE 0 i2c->lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 i2c->state 4
PARAM_VALUE 1 error (-5)
BUF_SIZE 0 i2c s32min-(-1),1-s32max
BUF_SIZE 0 i2c s32min-(-1),1-s32max
DATA_SOURCE 0 i2c $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 i2c unit_byte
LOCK2 0 &i2c->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_write() -> rk3x_i2c_stop()

Type Parameter Key Value
PARAM_VALUE 0 i2c 4096-ptr_max
PARAM_VALUE 0 i2c->lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 i2c->state 3
PARAM_VALUE 1 error (-5)
BUF_SIZE 0 i2c s32min-(-1),1-s32max
BUF_SIZE 0 i2c s32min-(-1),1-s32max
DATA_SOURCE 0 i2c $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 i2c unit_byte
LOCK2 0 &i2c->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_write() -> rk3x_i2c_stop()

Type Parameter Key Value
PARAM_VALUE 0 i2c 4096-ptr_max
PARAM_VALUE 0 i2c->lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 i2c->msg 4096-ptr_max
PARAM_VALUE 0 i2c->processed 0-u16max
PARAM_VALUE 0 i2c->state 3
BUF_SIZE 0 i2c s32min-(-1),1-s32max
BUF_SIZE 0 i2c s32min-(-1),1-s32max
CAPPED_DATA 0 i2c->msg->len 1
CAPPED_DATA 0 i2c->processed 1
DATA_SOURCE 0 i2c $0
PARAM_COMPARE 0 i2c->msg->len == $0->processed
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 i2c unit_byte
LOCK2 0 &i2c->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() -> rk3x_i2c_stop()

Type Parameter Key Value
PARAM_VALUE 0 i2c 4096-ptr_max
PARAM_VALUE 0 i2c->lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 i2c->msg 4096-ptr_max
PARAM_VALUE 0 i2c->state 1-u32max
PARAM_VALUE 1 error (-6)
BUF_SIZE 0 i2c s32min-(-1),1-s32max
BUF_SIZE 0 i2c s32min-(-1),1-s32max
DATA_SOURCE 0 i2c $1
BIT_INFO 0 i2c->msg->flags 0x0,0xefff
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 i2c unit_byte
LOCK2 0 &i2c->lock
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 flags
TYPE_LOCK (struct rk3x_i2c)->lock