Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/tty/serial/mps2-uart.c mps2_uart_console_putchar() -> mps2_uart_write8()

Type Parameter Key Value
PARAM_VALUE 2 off 0
BUF_SIZE 0 port (-1),616
BUF_SIZE 0 port (-1),616
DATA_SOURCE 0 port $0
DATA_SOURCE 1 val $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/mps2-uart.c mps2_uart_oerrirq() -> mps2_uart_write8()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
PARAM_VALUE 1 val 8
PARAM_VALUE 2 off 12
DATA_SOURCE 0 port $1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 0 &port->lock
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 flags
TYPE_LOCK (struct uart_port)->lock

drivers/tty/serial/mps2-uart.c mps2_uart_oerrirq() -> mps2_uart_write8()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
PARAM_VALUE 1 val 4
PARAM_VALUE 2 off 12
DATA_SOURCE 0 port $1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 0 &port->lock
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 flags
TYPE_LOCK (struct uart_port)->lock

drivers/tty/serial/mps2-uart.c mps2_uart_rxirq() -> mps2_uart_write8()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
PARAM_VALUE 1 val 2
PARAM_VALUE 2 off 12
DATA_SOURCE 0 port $1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 0 &port->lock
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 flags
TYPE_LOCK (struct uart_port)->lock

drivers/tty/serial/mps2-uart.c mps2_uart_shutdown() -> mps2_uart_write8()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
PARAM_VALUE 1 val 0,64-192
PARAM_VALUE 2 off 8
BUF_SIZE 0 port s32min-(-1),1-s32max
BUF_SIZE 0 port s32min-(-1),1-s32max
DATA_SOURCE 0 port $0
BIT_INFO 1 val 0x0,0xc0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 1 val 0,64-192[c]
LOCK2 _T->lock
HALF_LOCKED2 0 &port->lock

drivers/tty/serial/mps2-uart.c mps2_uart_start_tx() -> mps2_uart_write8()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
PARAM_VALUE 2 off 8
BUF_SIZE 0 port s32min-(-1),1-s32max
BUF_SIZE 0 port s32min-(-1),1-s32max
DATA_SOURCE 0 port $0
BIT_INFO 1 val 0x4,0xff
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 0 port->cons_flow 0-1
HOST_DATA 0 port->console_reinit 0-255
HOST_DATA 0 port->ctrl_id 0-u32max
HOST_DATA 0 port->custom_divisor 0-u32max
HOST_DATA 0 port->fifosize 0-u32max
HOST_DATA 0 port->flags 0-u64max
HOST_DATA 0 port->frame_time 0-u32max
HOST_DATA 0 port->has_sysrq 0-255
HOST_DATA 0 port->hub6 0-255
HOST_DATA 0 port->icount.brk 0-u32max
HOST_DATA 0 port->icount.buf_overrun 0-u32max
HOST_DATA 0 port->icount.cts 0-u32max
HOST_DATA 0 port->icount.dcd 0-u32max
HOST_DATA 0 port->icount.dsr 0-u32max
HOST_DATA 0 port->icount.frame 0-u32max
HOST_DATA 0 port->icount.overrun 0-u32max
HOST_DATA 0 port->icount.parity 0-u32max
HOST_DATA 0 port->icount.rng 0-u32max
HOST_DATA 0 port->icount.rx 0-u32max
HOST_DATA 0 port->icount.tx 0-u32max
HOST_DATA 0 port->ignore_status_mask 0-u32max
HOST_DATA 0 port->iobase 0-u64max
HOST_DATA 0 port->iotype s32min-s32max
HOST_DATA 0 port->irq 0-u32max
HOST_DATA 0 port->irqflags 0-u64max
HOST_DATA 0 port->iso7816.clk 0-u32max
HOST_DATA 0 port->iso7816.flags 0-u32max
HOST_DATA 0 port->iso7816.sc_di 0-u32max
HOST_DATA 0 port->iso7816.sc_fi 0-u32max
HOST_DATA 0 port->iso7816.tg 0-u32max
HOST_DATA 0 port->line 0-u32max
HOST_DATA 0 port->mapbase 0-u64max
HOST_DATA 0 port->mapsize 0-u64max
HOST_DATA 0 port->mctrl 0-u32max
HOST_DATA 0 port->minor 0-u32max
HOST_DATA 0 port->port_id 0-u32max
HOST_DATA 0 port->quirks 0-255
HOST_DATA 0 port->read_status_mask 0-u32max
HOST_DATA 0 port->regshift 0-255
HOST_DATA 0 port->rs485.addr_dest 0-255
HOST_DATA 0 port->rs485.addr_recv 0-255
HOST_DATA 0 port->rs485.delay_rts_after_send 0-u32max
HOST_DATA 0 port->rs485.delay_rts_before_send 0-u32max
HOST_DATA 0 port->rs485.flags 0-u32max
HOST_DATA 0 port->rs485_supported.addr_dest 0-255
HOST_DATA 0 port->rs485_supported.addr_recv 0-255
HOST_DATA 0 port->rs485_supported.delay_rts_after_send 0-u32max
HOST_DATA 0 port->rs485_supported.delay_rts_before_send 0-u32max
HOST_DATA 0 port->rs485_supported.flags 0-u32max
HOST_DATA 0 port->status 0-u32max
HOST_DATA 0 port->suspended 0-255
HOST_DATA 0 port->sysrq 0-u64max
HOST_DATA 0 port->sysrq_ch 0-255
HOST_DATA 0 port->sysrq_seq 0-255
HOST_DATA 0 port->type 0-u32max
HOST_DATA 0 port->uartclk 0-u32max
HOST_DATA 0 port->x_char 0-255
HOST_DATA 1 val 0-255
HALF_LOCKED2 &_T->lock->lock
HALF_LOCKED2 _T->flags
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq
HALF_LOCKED2 0 &port->lock

drivers/tty/serial/mps2-uart.c mps2_uart_startup() -> mps2_uart_write8()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
PARAM_VALUE 1 val 0,64-192
PARAM_VALUE 2 off 8
BUF_SIZE 0 port s32min-(-1),1-s32max
BUF_SIZE 0 port s32min-(-1),1-s32max
DATA_SOURCE 0 port $0
BIT_INFO 1 val 0x0,0xc0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 1 val 0,64-192[c]
LOCK2 _T->lock
HALF_LOCKED2 0 &port->lock

drivers/tty/serial/mps2-uart.c mps2_uart_startup() -> mps2_uart_write8()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
PARAM_VALUE 1 val 63,127-255
PARAM_VALUE 2 off 8
BUF_SIZE 0 port s32min-(-1),1-s32max
BUF_SIZE 0 port s32min-(-1),1-s32max
DATA_SOURCE 0 port $0
BIT_INFO 1 val 0x3f,0xff
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 1 val 63,127-255[c]
LOCK2 _T->lock
HALF_LOCKED2 0 &port->lock

drivers/tty/serial/mps2-uart.c mps2_uart_stop_rx() -> mps2_uart_write8()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
PARAM_VALUE 1 val 0-213
PARAM_VALUE 2 off 8
BUF_SIZE 0 port s32min-(-1),1-s32max
BUF_SIZE 0 port s32min-(-1),1-s32max
DATA_SOURCE 0 port $0
BIT_INFO 1 val 0x0,0xd5
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 1 val 0-213[c]
HALF_LOCKED2 &_T->lock->lock
HALF_LOCKED2 &up->port.lock
HALF_LOCKED2 _T->flags
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq
HALF_LOCKED2 0 &port->lock

drivers/tty/serial/mps2-uart.c mps2_uart_stop_tx() -> mps2_uart_write8()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
PARAM_VALUE 1 val 0-251
PARAM_VALUE 2 off 8
BUF_SIZE 0 port s32min-(-1),1-s32max
BUF_SIZE 0 port s32min-(-1),1-s32max
DATA_SOURCE 0 port $0
BIT_INFO 1 val 0x0,0xfb
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 0 port->cons_flow 0-1
HOST_DATA 0 port->console_reinit 0-255
HOST_DATA 0 port->ctrl_id 0-u32max
HOST_DATA 0 port->custom_divisor 0-u32max
HOST_DATA 0 port->fifosize 0-u32max
HOST_DATA 0 port->flags 0-u64max
HOST_DATA 0 port->frame_time 0-u32max
HOST_DATA 0 port->has_sysrq 0-255
HOST_DATA 0 port->hub6 0-255
HOST_DATA 0 port->icount.brk 0-u32max
HOST_DATA 0 port->icount.buf_overrun 0-u32max
HOST_DATA 0 port->icount.cts 0-u32max
HOST_DATA 0 port->icount.dcd 0-u32max
HOST_DATA 0 port->icount.dsr 0-u32max
HOST_DATA 0 port->icount.frame 0-u32max
HOST_DATA 0 port->icount.overrun 0-u32max
HOST_DATA 0 port->icount.parity 0-u32max
HOST_DATA 0 port->icount.rng 0-u32max
HOST_DATA 0 port->icount.rx 0-u32max
HOST_DATA 0 port->icount.tx 0-u32max
HOST_DATA 0 port->ignore_status_mask 0-u32max
HOST_DATA 0 port->iobase 0-u64max
HOST_DATA 0 port->iotype s32min-s32max
HOST_DATA 0 port->irq 0-u32max
HOST_DATA 0 port->irqflags 0-u64max
HOST_DATA 0 port->iso7816.clk 0-u32max
HOST_DATA 0 port->iso7816.flags 0-u32max
HOST_DATA 0 port->iso7816.sc_di 0-u32max
HOST_DATA 0 port->iso7816.sc_fi 0-u32max
HOST_DATA 0 port->iso7816.tg 0-u32max
HOST_DATA 0 port->line 0-u32max
HOST_DATA 0 port->mapbase 0-u64max
HOST_DATA 0 port->mapsize 0-u64max
HOST_DATA 0 port->mctrl 0-u32max
HOST_DATA 0 port->minor 0-u32max
HOST_DATA 0 port->port_id 0-u32max
HOST_DATA 0 port->quirks 0-255
HOST_DATA 0 port->read_status_mask 0-u32max
HOST_DATA 0 port->regshift 0-255
HOST_DATA 0 port->rs485.addr_dest 0-255
HOST_DATA 0 port->rs485.addr_recv 0-255
HOST_DATA 0 port->rs485.delay_rts_after_send 0-u32max
HOST_DATA 0 port->rs485.delay_rts_before_send 0-u32max
HOST_DATA 0 port->rs485.flags 0-u32max
HOST_DATA 0 port->rs485_supported.addr_dest 0-255
HOST_DATA 0 port->rs485_supported.addr_recv 0-255
HOST_DATA 0 port->rs485_supported.delay_rts_after_send 0-u32max
HOST_DATA 0 port->rs485_supported.delay_rts_before_send 0-u32max
HOST_DATA 0 port->rs485_supported.flags 0-u32max
HOST_DATA 0 port->status 0-u32max
HOST_DATA 0 port->suspended 0-255
HOST_DATA 0 port->sysrq 0-u64max
HOST_DATA 0 port->sysrq_ch 0-255
HOST_DATA 0 port->sysrq_seq 0-255
HOST_DATA 0 port->type 0-u32max
HOST_DATA 0 port->uartclk 0-u32max
HOST_DATA 0 port->x_char 0-255
HOST_DATA 1 val 0-251[c]
HALF_LOCKED2 &ltq_port->lock
HALF_LOCKED2 &port->lock
HALF_LOCKED2 &ssp->port.lock
HALF_LOCKED2 &state->uart_port->lock
HALF_LOCKED2 &tty->flow.lock
HALF_LOCKED2 &up->port.lock
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq
HALF_LOCKED2 0 &port->lock

drivers/tty/serial/mps2-uart.c mps2_uart_tx_chars() -> mps2_uart_write8()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
PARAM_VALUE 1 val 1-255
PARAM_VALUE 2 off 0
BUF_SIZE 0 port s32min-(-1),1-s32max
BUF_SIZE 0 port s32min-(-1),1-s32max
DATA_SOURCE 0 port $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 port->cons_flow 0-1
HOST_DATA 0 port->console_reinit 0-255
HOST_DATA 0 port->ctrl_id 0-u32max
HOST_DATA 0 port->custom_divisor 0-u32max
HOST_DATA 0 port->fifosize 0-u32max
HOST_DATA 0 port->flags 0-u64max
HOST_DATA 0 port->frame_time 0-u32max
HOST_DATA 0 port->has_sysrq 0-255
HOST_DATA 0 port->hub6 0-255
HOST_DATA 0 port->icount.brk 0-u32max
HOST_DATA 0 port->icount.buf_overrun 0-u32max
HOST_DATA 0 port->icount.cts 0-u32max
HOST_DATA 0 port->icount.dcd 0-u32max
HOST_DATA 0 port->icount.dsr 0-u32max
HOST_DATA 0 port->icount.frame 0-u32max
HOST_DATA 0 port->icount.overrun 0-u32max
HOST_DATA 0 port->icount.parity 0-u32max
HOST_DATA 0 port->icount.rng 0-u32max
HOST_DATA 0 port->icount.rx 0-u32max
HOST_DATA 0 port->icount.tx 0-u32max
HOST_DATA 0 port->ignore_status_mask 0-u32max
HOST_DATA 0 port->iobase 0-u64max
HOST_DATA 0 port->iotype s32min-s32max
HOST_DATA 0 port->irq 0-u32max
HOST_DATA 0 port->irqflags 0-u64max
HOST_DATA 0 port->iso7816.clk 0-u32max
HOST_DATA 0 port->iso7816.flags 0-u32max
HOST_DATA 0 port->iso7816.sc_di 0-u32max
HOST_DATA 0 port->iso7816.sc_fi 0-u32max
HOST_DATA 0 port->iso7816.tg 0-u32max
HOST_DATA 0 port->line 0-u32max
HOST_DATA 0 port->mapbase 0-u64max
HOST_DATA 0 port->mapsize 0-u64max
HOST_DATA 0 port->mctrl 0-u32max
HOST_DATA 0 port->minor 0-u32max
HOST_DATA 0 port->port_id 0-u32max
HOST_DATA 0 port->quirks 0-255
HOST_DATA 0 port->read_status_mask 0-u32max
HOST_DATA 0 port->regshift 0-255
HOST_DATA 0 port->rs485.addr_dest 0-255
HOST_DATA 0 port->rs485.addr_recv 0-255
HOST_DATA 0 port->rs485.delay_rts_after_send 0-u32max
HOST_DATA 0 port->rs485.delay_rts_before_send 0-u32max
HOST_DATA 0 port->rs485.flags 0-u32max
HOST_DATA 0 port->rs485_supported.addr_dest 0-255
HOST_DATA 0 port->rs485_supported.addr_recv 0-255
HOST_DATA 0 port->rs485_supported.delay_rts_after_send 0-u32max
HOST_DATA 0 port->rs485_supported.delay_rts_before_send 0-u32max
HOST_DATA 0 port->rs485_supported.flags 0-u32max
HOST_DATA 0 port->status 0-u32max
HOST_DATA 0 port->suspended 0-255
HOST_DATA 0 port->sysrq 0-u64max
HOST_DATA 0 port->sysrq_ch 0-255
HOST_DATA 0 port->sysrq_seq 0-255
HOST_DATA 0 port->type 0-u32max
HOST_DATA 0 port->uartclk 0-u32max
HOST_DATA 0 port->x_char 1-255
HOST_DATA 1 val 1-255
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq
HALF_LOCKED2 0 &port->lock

drivers/tty/serial/mps2-uart.c mps2_uart_tx_chars() -> mps2_uart_write8()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
PARAM_VALUE 2 off 0
BUF_SIZE 0 port s32min-(-1),1-s32max
BUF_SIZE 0 port s32min-(-1),1-s32max
DATA_SOURCE 0 port $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 port->cons_flow 0-1
HOST_DATA 0 port->console_reinit 0-255
HOST_DATA 0 port->ctrl_id 0-u32max
HOST_DATA 0 port->custom_divisor 0-u32max
HOST_DATA 0 port->fifosize 0-u32max
HOST_DATA 0 port->flags 0-u64max
HOST_DATA 0 port->frame_time 0-u32max
HOST_DATA 0 port->has_sysrq 0-255
HOST_DATA 0 port->hub6 0-255
HOST_DATA 0 port->icount.brk 0-u32max
HOST_DATA 0 port->icount.buf_overrun 0-u32max
HOST_DATA 0 port->icount.cts 0-u32max
HOST_DATA 0 port->icount.dcd 0-u32max
HOST_DATA 0 port->icount.dsr 0-u32max
HOST_DATA 0 port->icount.frame 0-u32max
HOST_DATA 0 port->icount.overrun 0-u32max
HOST_DATA 0 port->icount.parity 0-u32max
HOST_DATA 0 port->icount.rng 0-u32max
HOST_DATA 0 port->icount.rx 0-u32max
HOST_DATA 0 port->icount.tx 0-u32max
HOST_DATA 0 port->ignore_status_mask 0-u32max
HOST_DATA 0 port->iobase 0-u64max
HOST_DATA 0 port->iotype s32min-s32max
HOST_DATA 0 port->irq 0-u32max
HOST_DATA 0 port->irqflags 0-u64max
HOST_DATA 0 port->iso7816.clk 0-u32max
HOST_DATA 0 port->iso7816.flags 0-u32max
HOST_DATA 0 port->iso7816.sc_di 0-u32max
HOST_DATA 0 port->iso7816.sc_fi 0-u32max
HOST_DATA 0 port->iso7816.tg 0-u32max
HOST_DATA 0 port->line 0-u32max
HOST_DATA 0 port->mapbase 0-u64max
HOST_DATA 0 port->mapsize 0-u64max
HOST_DATA 0 port->mctrl 0-u32max
HOST_DATA 0 port->minor 0-u32max
HOST_DATA 0 port->port_id 0-u32max
HOST_DATA 0 port->quirks 0-255
HOST_DATA 0 port->read_status_mask 0-u32max
HOST_DATA 0 port->regshift 0-255
HOST_DATA 0 port->rs485.addr_dest 0-255
HOST_DATA 0 port->rs485.addr_recv 0-255
HOST_DATA 0 port->rs485.delay_rts_after_send 0-u32max
HOST_DATA 0 port->rs485.delay_rts_before_send 0-u32max
HOST_DATA 0 port->rs485.flags 0-u32max
HOST_DATA 0 port->rs485_supported.addr_dest 0-255
HOST_DATA 0 port->rs485_supported.addr_recv 0-255
HOST_DATA 0 port->rs485_supported.delay_rts_after_send 0-u32max
HOST_DATA 0 port->rs485_supported.delay_rts_before_send 0-u32max
HOST_DATA 0 port->rs485_supported.flags 0-u32max
HOST_DATA 0 port->status 0-u32max
HOST_DATA 0 port->suspended 0-255
HOST_DATA 0 port->sysrq 0-u64max
HOST_DATA 0 port->sysrq_ch 0-255
HOST_DATA 0 port->sysrq_seq 0-255
HOST_DATA 0 port->type 0-u32max
HOST_DATA 0 port->uartclk 0-u32max
HOST_DATA 0 port->x_char 0
HOST_DATA 1 val 1-255
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq
HALF_LOCKED2 0 &port->lock

drivers/tty/serial/mps2-uart.c mps2_uart_txirq() -> mps2_uart_write8()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
PARAM_VALUE 1 val 1
PARAM_VALUE 2 off 12
DATA_SOURCE 0 port $1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 0 &port->lock
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 flags
TYPE_LOCK (struct uart_port)->lock