Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/tty/serial/altera_uart.c altera_uart_config_port() -> altera_uart_writel()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
PARAM_VALUE 1 dat 0
PARAM_VALUE 2 reg 12
BUF_SIZE 0 port->dev (-1),1616
BUF_SIZE 0 port->name (-1)-s32max
BUF_SIZE 0 port->ops (-1),216
BUF_SIZE 0 port->private_data (-1),1-s32max
BUF_SIZE 0 port->tty_groups (-1),24
DATA_SOURCE 0 port $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 port->cons->kthread->dl.dl_runtime
NO_OVERFLOW_SIMPLE 0 port->cons->pbufs
NO_OVERFLOW_SIMPLE 0 port->dev->cma_area->available_count
NO_OVERFLOW_SIMPLE 0 port->dev->p->deferred_probe_reason
NO_OVERFLOW_SIMPLE 0 port->iobase
NO_OVERFLOW_SIMPLE 0 port->mapbase
NO_OVERFLOW_SIMPLE 0 port->mapsize
NO_OVERFLOW_SIMPLE 0 port->port_dev->dev.p->deferred_probe_reason
NO_OVERFLOW_SIMPLE 0 port->port_dev->dev.physical_location
HALF_LOCKED2 _T->lock

drivers/tty/serial/altera_uart.c altera_uart_config_port() -> altera_uart_writel()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
PARAM_VALUE 1 dat 0
PARAM_VALUE 2 reg 8
BUF_SIZE 0 port->dev (-1),1616
BUF_SIZE 0 port->name (-1)-s32max
BUF_SIZE 0 port->ops (-1),216
BUF_SIZE 0 port->private_data (-1),1-s32max
BUF_SIZE 0 port->tty_groups (-1),24
DATA_SOURCE 0 port $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 port->cons->kthread->dl.dl_runtime
NO_OVERFLOW_SIMPLE 0 port->cons->pbufs
NO_OVERFLOW_SIMPLE 0 port->dev->cma_area->available_count
NO_OVERFLOW_SIMPLE 0 port->dev->p->deferred_probe_reason
NO_OVERFLOW_SIMPLE 0 port->iobase
NO_OVERFLOW_SIMPLE 0 port->mapbase
NO_OVERFLOW_SIMPLE 0 port->mapsize
NO_OVERFLOW_SIMPLE 0 port->port_dev->dev.p->deferred_probe_reason
NO_OVERFLOW_SIMPLE 0 port->port_dev->dev.physical_location
HALF_LOCKED2 _T->lock

drivers/tty/serial/altera_uart.c altera_uart_console_putc() -> altera_uart_writel()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
PARAM_VALUE 2 reg 4
BUF_SIZE 0 port (-1),616
BUF_SIZE 0 port (-1),616
DATA_SOURCE 0 port $0
DATA_SOURCE 1 dat $1
STR_LEN 0 port (-1),1
STR_LEN 0 port (-1),1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &s->lock
HALF_LOCKED2 0 &port->lock

drivers/tty/serial/altera_uart.c altera_uart_earlycon_setup() -> altera_uart_writel()

Type Parameter Key Value
PARAM_VALUE 0 port 4360160625620111368
PARAM_VALUE 0 port->membase 1-u64max
PARAM_VALUE 1 dat 128
PARAM_VALUE 2 reg 12
BUF_SIZE 0 port 616
NOCHECK_CALL
USER_DATA 0 port->iobase 0-u64max
USER_DATA 0 port->mapbase 0-u64max

drivers/tty/serial/altera_uart.c altera_uart_earlycon_setup() -> altera_uart_writel()

Type Parameter Key Value
PARAM_VALUE 0 port 4360160625620111368
PARAM_VALUE 0 port->membase 1-u64max
PARAM_VALUE 2 reg 16
BUF_SIZE 0 port 616
NOCHECK_CALL
USER_DATA 0 port->iobase 0-u64max
USER_DATA 0 port->mapbase 0-u64max

drivers/tty/serial/altera_uart.c altera_uart_poll_put_char() -> altera_uart_writel()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
PARAM_VALUE 2 reg 4
DATA_SOURCE 0 port $0
DATA_SOURCE 1 dat $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 flags
HALF_LOCKED2 rcu_read

drivers/tty/serial/altera_uart.c altera_uart_rx_chars() -> altera_uart_writel()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
PARAM_VALUE 1 dat 256-u16max
PARAM_VALUE 2 reg 8
BUF_SIZE 0 port (-1),616
BUF_SIZE 0 port (-1),616
DATA_SOURCE 0 port $0
DATA_SOURCE 1 dat r altera_uart_readl
BIT_INFO 1 dat 0x100,0xffff
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 1 dat 256-u16max
LOCK2 0 &port->lock
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct uart_port)->lock

drivers/tty/serial/altera_uart.c altera_uart_set_termios() -> altera_uart_writel()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
PARAM_VALUE 2 reg 16
BUF_SIZE 0 port s32min-(-1),1-s32max
BUF_SIZE 0 port s32min-(-1),1-s32max
BUF_SIZE 0 port->uartclk (-1),9
DATA_SOURCE 0 port $0
STR_LEN 0 port (-1),7
STR_LEN 0 port (-1),7
STR_LEN 0 port->cons (-1)
NOSPEC 0 port->cons->index
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 0 port->cons->cflag s32min-0,16-s32max
HOST_DATA 0 port->cons->dropped 0
HOST_DATA 0 port->cons->irq_work.node.a_flags.counter 0-s32max
HOST_DATA 0 port->cons->irq_work.node.dst 0-u16max
HOST_DATA 0 port->cons->irq_work.node.src 0-u16max
HOST_DATA 0 port->cons->irq_work.node.u_flags 0-s32max
HOST_DATA 0 port->cons->ispeed 0-s32max
HOST_DATA 0 port->cons->nbcon_device_ctxt.allow_unsafe_takeover 0
HOST_DATA 0 port->cons->nbcon_device_ctxt.backlog 0
HOST_DATA 0 port->cons->nbcon_device_ctxt.prio 0
HOST_DATA 0 port->cons->nbcon_device_ctxt.seq 0
HOST_DATA 0 port->cons->nbcon_device_ctxt.spinwait_max_us 0
HOST_DATA 0 port->cons->nbcon_prev_seq.counter (-1)-0
HOST_DATA 0 port->cons->nbcon_seq.counter s64min-s64max
HOST_DATA 0 port->cons->nbcon_state.counter 0
HOST_DATA 0 port->cons->ospeed 0-u32max
HOST_DATA 0 port->cons->seq 0-u64max
HOST_DATA 0 port->frame_time 1-8,23-u32max[c]
USER_DATA 0 port->cons->index 0-3[c]
USER_DATA 0 port->frame_time 1-u32max[c]
LOCK2 flags
LOCK2 0 &port->lock
HALF_LOCKED2 &port->mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 global &console_mutex
TYPE_LOCK (struct uart_port)->lock

drivers/tty/serial/altera_uart.c altera_uart_tx_chars() -> altera_uart_writel()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
PARAM_VALUE 1 dat 1-255
PARAM_VALUE 2 reg 4
BUF_SIZE 0 port (-1),616
BUF_SIZE 0 port (-1),616
DATA_SOURCE 0 port $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 0 &port->lock
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct uart_port)->lock

drivers/tty/serial/altera_uart.c altera_uart_tx_chars() -> altera_uart_writel()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
PARAM_VALUE 2 reg 4
BUF_SIZE 0 port (-1),616
BUF_SIZE 0 port (-1),616
DATA_SOURCE 0 port $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 0 &port->lock
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct uart_port)->lock

drivers/tty/serial/altera_uart.c altera_uart_update_ctrl_reg() -> altera_uart_writel()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
PARAM_VALUE 2 reg 12
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &port->lock
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags