Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/spi/spi-dw-core.c dw_spi_enh_write_cmd_addr() -> dw_write_io_reg()

Type Parameter Key Value
PARAM_VALUE 0 dws 4096-ptr_max
PARAM_VALUE 1 offset 4096
BUF_SIZE 0 dws s32min-(-2),1-s32max
BUF_SIZE 0 dws s32min-(-2),1-s32max
DATA_SOURCE 0 dws $0
BIT_INFO 0 dws->quirk_flags 0x1,0xffffffff
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 0 dws->rx_len 0-u32max
HOST_DATA 0 dws->tx_len 0-u32max
USER_DATA 0 dws->rx_len 0-u32max
USER_DATA 0 dws->tx_len 0-u32max
UNITS 0 dws unit_byte
LOCK2 &mem->spi->controller->bus_lock_mutex
LOCK2 &mem->spi->controller->io_mutex
HALF_LOCKED2 &at25->lock
HALF_LOCKED2 &master->master.chrdev_lock
HALF_LOCKED2 &spinand->lock
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct spi_controller)->bus_lock_mutex
TYPE_LOCK (struct spi_controller)->io_mutex

drivers/spi/spi-dw-core.c dw_spi_enh_write_cmd_addr() -> dw_write_io_reg()

Type Parameter Key Value
PARAM_VALUE 0 dws 4096-ptr_max
PARAM_VALUE 0 dws->reg_io_width 2,4
PARAM_VALUE 1 offset 4100
BUF_SIZE 0 dws s32min-(-2),1-s32max
BUF_SIZE 0 dws s32min-(-2),1-s32max
DATA_SOURCE 0 dws $0
BIT_INFO 0 dws->quirk_flags 0x1,0xffffffffffffffff
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 0 dws->rx_len 0-u32max
HOST_DATA 0 dws->tx_len 0-u32max
HOST_DATA 2 val 0-u32max[c]
USER_DATA 0 dws->rx_len 0-u32max
USER_DATA 0 dws->tx_len 0-u32max
USER_DATA 2 val 0-u32max
UNITS 0 dws unit_byte
UNITS 2 val unit_byte
LOCK2 &mem->spi->controller->bus_lock_mutex
LOCK2 &mem->spi->controller->io_mutex
HALF_LOCKED2 &at25->lock
HALF_LOCKED2 &master->master.chrdev_lock
HALF_LOCKED2 &spinand->lock
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct spi_controller)->bus_lock_mutex
TYPE_LOCK (struct spi_controller)->io_mutex

drivers/spi/spi-dw-core.c dw_spi_enh_write_cmd_addr() -> dw_write_io_reg()

Type Parameter Key Value
PARAM_VALUE 0 dws 4096-ptr_max
PARAM_VALUE 1 offset 96
BUF_SIZE 0 dws s32min-(-2),1-s32max
BUF_SIZE 0 dws s32min-(-2),1-s32max
DATA_SOURCE 0 dws $0
BIT_INFO 0 dws->quirk_flags 0x0,0xfffffffe
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 0 dws->rx_len 0-u32max
HOST_DATA 0 dws->tx_len 0-u32max
USER_DATA 0 dws->rx_len 0-u32max
USER_DATA 0 dws->tx_len 0-u32max
UNITS 0 dws unit_byte
LOCK2 &mem->spi->controller->bus_lock_mutex
LOCK2 &mem->spi->controller->io_mutex
HALF_LOCKED2 &at25->lock
HALF_LOCKED2 &master->master.chrdev_lock
HALF_LOCKED2 &spinand->lock
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct spi_controller)->bus_lock_mutex
TYPE_LOCK (struct spi_controller)->io_mutex

drivers/spi/spi-dw-core.c dw_spi_enh_write_cmd_addr() -> dw_write_io_reg()

Type Parameter Key Value
PARAM_VALUE 0 dws 4096-ptr_max
PARAM_VALUE 0 dws->reg_io_width 2,4
PARAM_VALUE 1 offset 96
BUF_SIZE 0 dws s32min-(-2),1-s32max
BUF_SIZE 0 dws s32min-(-2),1-s32max
DATA_SOURCE 0 dws $0
BIT_INFO 0 dws->quirk_flags 0x0,0xfffffffe
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 0 dws->rx_len 0-u32max
HOST_DATA 0 dws->tx_len 0-u32max
HOST_DATA 2 val 0-999999997[c]
USER_DATA 0 dws->rx_len 0-u32max
USER_DATA 0 dws->tx_len 0-u32max
USER_DATA 2 val 0-4294967294[c]
UNITS 0 dws unit_byte
LOCK2 &mem->spi->controller->bus_lock_mutex
LOCK2 &mem->spi->controller->io_mutex
HALF_LOCKED2 &at25->lock
HALF_LOCKED2 &master->master.chrdev_lock
HALF_LOCKED2 &spinand->lock
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct spi_controller)->bus_lock_mutex
TYPE_LOCK (struct spi_controller)->io_mutex

drivers/spi/spi-dw-core.c dw_spi_enh_write_cmd_addr() -> dw_write_io_reg()

Type Parameter Key Value
PARAM_VALUE 0 dws 4096-ptr_max
PARAM_VALUE 0 dws->reg_io_width 2,4
PARAM_VALUE 1 offset 96
BUF_SIZE 0 dws s32min-(-2),1-s32max
BUF_SIZE 0 dws s32min-(-2),1-s32max
DATA_SOURCE 0 dws $0
BIT_INFO 0 dws->quirk_flags 0x0,0xfffffffe
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 0 dws->rx_len 0-u32max
HOST_DATA 0 dws->tx_len 0-u32max
HOST_DATA 2 val 0-2[c]
USER_DATA 0 dws->rx_len 0-u32max
USER_DATA 0 dws->tx_len 0-u32max
USER_DATA 2 val 0-2147483648[c]
UNITS 0 dws unit_byte
LOCK2 &mem->spi->controller->bus_lock_mutex
LOCK2 &mem->spi->controller->io_mutex
HALF_LOCKED2 &at25->lock
HALF_LOCKED2 &master->master.chrdev_lock
HALF_LOCKED2 &spinand->lock
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct spi_controller)->bus_lock_mutex
TYPE_LOCK (struct spi_controller)->io_mutex

drivers/spi/spi-dw-core.c dw_spi_write_then_read() -> dw_write_io_reg()

Type Parameter Key Value
PARAM_VALUE 0 dws 4096-ptr_max
PARAM_VALUE 1 offset 96
PARAM_VALUE 2 val 0-255
BUF_SIZE 0 dws s32min-(-2),1-s32max
BUF_SIZE 0 dws s32min-(-2),1-s32max
DATA_SOURCE 0 dws $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 0 dws->rx_len 0-u32max
USER_DATA 0 dws->rx_len 0-u32max
UNITS 0 dws unit_byte
LOCK2 &spi->controller->bus_lock_mutex
LOCK2 &spi->controller->io_mutex
LOCK2 flags
HALF_LOCKED2 &at25->lock
HALF_LOCKED2 &master->master.chrdev_lock
HALF_LOCKED2 &spinand->lock
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct spi_controller)->bus_lock_mutex
TYPE_LOCK (struct spi_controller)->io_mutex

drivers/spi/spi-dw-core.c dw_spi_write_then_read() -> dw_write_io_reg()

Type Parameter Key Value
PARAM_VALUE 0 dws 4096-ptr_max
PARAM_VALUE 1 offset 96
PARAM_VALUE 2 val 0-255
BUF_SIZE 0 dws s32min-(-2),1-s32max
BUF_SIZE 0 dws s32min-(-2),1-s32max
DATA_SOURCE 0 dws $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 0 dws->rx_len 0-u32max
USER_DATA 0 dws->rx_len 0-u32max
UNITS 0 dws unit_byte
LOCK2 &spi->controller->bus_lock_mutex
LOCK2 &spi->controller->io_mutex
LOCK2 flags
HALF_LOCKED2 &at25->lock
HALF_LOCKED2 &master->master.chrdev_lock
HALF_LOCKED2 &spinand->lock
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct spi_controller)->bus_lock_mutex
TYPE_LOCK (struct spi_controller)->io_mutex

drivers/spi/spi-dw-core.c dw_writer() -> dw_write_io_reg()

Type Parameter Key Value
PARAM_VALUE 0 dws 4096-ptr_max
PARAM_VALUE 1 offset 96
BUF_SIZE 0 dws s32min-(-2),1-s32max
BUF_SIZE 0 dws s32min-(-2),1-s32max
BUF_SIZE 0 dws->rx s32min-(-1),1-s32max
BUF_SIZE 0 dws->tx s32min-(-1),1-s32max
DATA_SOURCE 0 dws $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 dws unit_byte
HALF_LOCKED2 &ctlr->io_mutex