Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/tty/serial/sh-sci.c sci_dma_tx_work_fn() -> sci_start_tx()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
PARAM_VALUE 0 port->cons 0,4096-ptr_max
PARAM_VALUE 0 port->dev 0,4096-ptr_max
PARAM_VALUE 0 port->dev->bus 0,4096-ptr_max
PARAM_VALUE 0 port->dev->class 0,4096-ptr_max
PARAM_VALUE 0 port->dev->driver 0,4096-ptr_max
PARAM_VALUE 0 port->lock.rlock.dep_map->name 0-255
BUF_SIZE 0 port 616
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 flags
LOCK2 0 &port->lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct uart_port)->lock

drivers/tty/serial/serial_core.c __uart_start() -> (struct uart_ops)->start_tx()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
PARAM_VALUE 0 port->dev 4096-ptr_max
PARAM_VALUE 0 port->hw_stopped 0
PARAM_VALUE 0 port->ops 4096-ptr_max
PARAM_VALUE 0 port->port_dev 4096-ptr_max
PARAM_VALUE 0 port->port_dev->dev.bus 0,4096-ptr_max
PARAM_VALUE 0 port->port_dev->dev.class 0,4096-ptr_max
PARAM_VALUE 0 port->port_dev->dev.power.request 0-4
PARAM_VALUE 0 port->port_dev->dev.power.runtime_error s32min-(-17),(-15)-(-14),(-12),(-10)-s32max
PARAM_VALUE 0 port->port_dev->dev.power.wakeirq 0,4096-ptr_max
PARAM_VALUE 0 port->port_dev->dev.power.wakeirq->status 0-4294967295
PARAM_VALUE 0 port->port_dev->dev.type 0,4096-ptr_max
PARAM_VALUE 0 port->state 4096-ptr_max
PARAM_VALUE 0 port->state->port.tty 0,4096-ptr_max
PARAM_VALUE 0 port->state->port.tty->flow.stopped 0
CONTAINER 0 -32-392+0 $(-1)
BIT_INFO 0 port->flags 0x0,0xffffffffbfffffff
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &tty->termios_rwsem
HALF_LOCKED2 _T->lock
HALF_LOCKED2 irq

drivers/tty/serial/serial_core.c uart_handle_cts_change() -> (struct uart_ops)->start_tx()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
PARAM_VALUE 0 port->hw_stopped 0
PARAM_VALUE 0 port->ops 4096-ptr_max
BUF_SIZE 0 port s32min-(-1),1-s32max
BUF_SIZE 0 port s32min-(-1),1-s32max
DATA_SOURCE 0 port $0
CONTAINER 0 -32-392+0 $(-1)
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
HALF_LOCKED2 &atmel_port->lock_suspended
HALF_LOCKED2 &icom_port->uart_port.lock
HALF_LOCKED2 &port->lock
HALF_LOCKED2 &s->port.lock
HALF_LOCKED2 &sport->port.lock
HALF_LOCKED2 &u->lock
HALF_LOCKED2 &uart->port.lock
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
HALF_LOCKED2 lock_flags
HALF_LOCKED2 0 &port->lock

drivers/tty/serial/serial_core.c uart_resume_port() -> (struct uart_ops)->start_tx()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
PARAM_VALUE 0 port->cons 0,4096-ptr_max
PARAM_VALUE 0 port->lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 port->ops->start_rx 0,4096-ptr_max
PARAM_VALUE 0 port->suspended 0
BUF_SIZE 0 port s32min-(-1),1-s32max
BUF_SIZE 0 port s32min-(-1),1-s32max
CAPPED_DATA 0 port->cons 1
DATA_SOURCE 0 port $1
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 _T->lock
LOCK2 irq
LOCK2 0 &port->lock
TYPE_LOCK (struct uart_port)->lock

drivers/tty/serial/serial_core.c uart_send_xchar() -> (struct uart_ops)->start_tx()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
PARAM_VALUE 0 port->cons 0,4096-ptr_max
PARAM_VALUE 0 port->ops 4096-ptr_max
PARAM_VALUE 0 port->ops->send_xchar 0
PARAM_VALUE 0 port->x_char 1-255
CONTAINER 0 -32-392+0 $(-1)
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &_T->lock->lock
LOCK2 _T->flags
HALF_LOCKED2 &tty->ldisc_sem
HALF_LOCKED2 &tty->termios_rwsem
HALF_LOCKED2 _T->lock
HALF_LOCKED2 global &spk_mutex

drivers/tty/serial/serial_port.c serial_port_runtime_resume() -> (struct uart_ops)->start_tx()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
PARAM_VALUE 0 port->cons 0,4096-ptr_max
PARAM_VALUE 0 port->hw_stopped 0
PARAM_VALUE 0 port->ops 4096-ptr_max
PARAM_VALUE 0 port->state 4096-ptr_max
PARAM_VALUE 0 port->state->port.tty 0,4096-ptr_max
PARAM_VALUE 0 port->state->port.tty->flow.stopped 0
CONTAINER 0 -32-392+0 $(-1)
PARAM_COMPARE 0 port->state->port.xmit_fifo.kfifo.in != $0->state->port.xmit_fifo.kfifo.out
BIT_INFO 0 port->flags 0x0,0xffffffffbfffffff
NOCHECK_CALL
LOCK2 flags
LOCK2 0 &port->lock
TYPE_LOCK (struct uart_port)->lock

drivers/tty/serial/serial_port.c serial_port_runtime_suspend() -> (struct uart_ops)->start_tx()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
PARAM_VALUE 0 port->cons 0,4096-ptr_max
PARAM_VALUE 0 port->hw_stopped 0
PARAM_VALUE 0 port->ops 4096-ptr_max
PARAM_VALUE 0 port->state 4096-ptr_max
PARAM_VALUE 0 port->state->port.tty 0,4096-ptr_max
PARAM_VALUE 0 port->state->port.tty->flow.stopped 0
CONTAINER 0 -32-392+0 $(-1)
PARAM_COMPARE 0 port->state->port.xmit_fifo.kfifo.in != $0->state->port.xmit_fifo.kfifo.out
BIT_INFO 0 port->flags 0x0,0xffffffffbfffffff
NOCHECK_CALL
LOCK2 flags
LOCK2 0 &port->lock
TYPE_LOCK (struct uart_port)->lock