Documented in 1 files:

Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/tty/serial/sifive.c __ssp_transmit_chars() -> __ssp_transmit_char()

Type Parameter Key Value
PARAM_VALUE 0 ssp 4096-ptr_max
PARAM_VALUE 1 ch 1-255
DATA_SOURCE 0 ssp $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 0 &ssp->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/sifive.c __ssp_transmit_chars() -> __ssp_transmit_char()

Type Parameter Key Value
PARAM_VALUE 0 ssp 4096-ptr_max
DATA_SOURCE 0 ssp $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 0 &ssp->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/sifive.c sifive_serial_console_putchar() -> __ssp_transmit_char()

Type Parameter Key Value
PARAM_VALUE 0 ssp 4096-ptr_max
DATA_SOURCE 1 ch $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &port->lock
HALF_LOCKED2 &s->lock

drivers/tty/serial/sifive.c sifive_serial_poll_put_char() -> __ssp_transmit_char()

Type Parameter Key Value
PARAM_VALUE 0 ssp 4096-ptr_max
DATA_SOURCE 1 ch $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 flags
HALF_LOCKED2 rcu_read