Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 6 files:

Smatch caller information:

drivers/tty/serial/8250/8250_omap.c omap_8250_dma_handle_irq() -> serial8250_modem_status()

Type Parameter Key Value
PARAM_VALUE 0 up 4096-ptr_max
DATA_SOURCE 0 up r up_to_u8250p
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 0 up->port.sysrq_ch 1-255
LOCK2 &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/8250/8250_fsl.c fsl8250_handle_irq() -> serial8250_modem_status()

Type Parameter Key Value
PARAM_VALUE 0 up 4096-ptr_max
PARAM_VALUE 0 up->port.cons 0,4096-ptr_max
DATA_SOURCE 0 up r up_to_u8250p
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 0 up->acr 0-255
HOST_DATA 0 up->bugs 0-u16max
HOST_DATA 0 up->canary 0-255
HOST_DATA 0 up->capabilities 0-u32max
HOST_DATA 0 up->console_line_ended 0-1
HOST_DATA 0 up->console_msr_work.node.a_flags.counter s32min-s32max
HOST_DATA 0 up->console_msr_work.node.dst 0-u16max
HOST_DATA 0 up->console_msr_work.node.src 0-u16max
HOST_DATA 0 up->console_msr_work.node.u_flags 0-u32max
HOST_DATA 0 up->console_msr_work_allow 0-1
HOST_DATA 0 up->cur_iotype 0-255
HOST_DATA 0 up->fcr 0-255
HOST_DATA 0 up->ier 0-255
HOST_DATA 0 up->lcr 0-255
HOST_DATA 0 up->lsr_save_mask 0-u16max
HOST_DATA 0 up->lsr_saved_flags 0-u16max
HOST_DATA 0 up->mcr 0-255
HOST_DATA 0 up->msr_saved_flags 0-255
HOST_DATA 0 up->overrun_backoff.cpu s32min-s32max
HOST_DATA 0 up->overrun_backoff_time_ms 1-u32max
HOST_DATA 0 up->port.cons_flow 0-1
HOST_DATA 0 up->port.console_reinit 0-255
HOST_DATA 0 up->port.ctrl_id 0-u32max
HOST_DATA 0 up->port.custom_divisor 0-u32max
HOST_DATA 0 up->port.fifosize 0-u32max
HOST_DATA 0 up->port.flags 0-u64max
HOST_DATA 0 up->port.frame_time 0-u32max
HOST_DATA 0 up->port.has_sysrq 0-255
HOST_DATA 0 up->port.hub6 0-255
HOST_DATA 0 up->port.hw_stopped 0-1
HOST_DATA 0 up->port.icount.brk 0-u32max
HOST_DATA 0 up->port.icount.buf_overrun 0-u32max
HOST_DATA 0 up->port.icount.cts 0-u32max
HOST_DATA 0 up->port.icount.dcd 0-u32max
HOST_DATA 0 up->port.icount.dsr 0-u32max
HOST_DATA 0 up->port.icount.frame 0-u32max
HOST_DATA 0 up->port.icount.overrun 0-u32max
HOST_DATA 0 up->port.icount.parity 0-u32max
HOST_DATA 0 up->port.icount.rng 0-u32max
HOST_DATA 0 up->port.icount.rx 0-u32max
HOST_DATA 0 up->port.icount.tx 0-u32max
HOST_DATA 0 up->port.ignore_status_mask 0-u32max
HOST_DATA 0 up->port.iobase 0-u64max
HOST_DATA 0 up->port.iotype s32min-s32max
HOST_DATA 0 up->port.irq 0-u32max
HOST_DATA 0 up->port.irqflags 0-u64max
HOST_DATA 0 up->port.iso7816.clk 0-u32max
HOST_DATA 0 up->port.iso7816.flags 0-u32max
HOST_DATA 0 up->port.iso7816.sc_di 0-u32max
HOST_DATA 0 up->port.iso7816.sc_fi 0-u32max
HOST_DATA 0 up->port.iso7816.tg 0-u32max
HOST_DATA 0 up->port.line 0-u32max
HOST_DATA 0 up->port.mapbase 0-u64max
HOST_DATA 0 up->port.mapsize 0-u64max
HOST_DATA 0 up->port.mctrl 0-u32max
HOST_DATA 0 up->port.minor 0-u32max
HOST_DATA 0 up->port.port_id 0-u32max
HOST_DATA 0 up->port.quirks 0-255
HOST_DATA 0 up->port.read_status_mask 0-u32max
HOST_DATA 0 up->port.regshift 0-255
HOST_DATA 0 up->port.rs485.addr_dest 0-255
HOST_DATA 0 up->port.rs485.addr_recv 0-255
HOST_DATA 0 up->port.rs485.delay_rts_after_send 0-u32max
HOST_DATA 0 up->port.rs485.delay_rts_before_send 0-u32max
HOST_DATA 0 up->port.rs485.flags 0-u32max
HOST_DATA 0 up->port.rs485_supported.addr_dest 0-255
HOST_DATA 0 up->port.rs485_supported.addr_recv 0-255
HOST_DATA 0 up->port.rs485_supported.delay_rts_after_send 0-u32max
HOST_DATA 0 up->port.rs485_supported.delay_rts_before_send 0-u32max
HOST_DATA 0 up->port.rs485_supported.flags 0-u32max
HOST_DATA 0 up->port.status 0-u32max
HOST_DATA 0 up->port.suspended 0-255
HOST_DATA 0 up->port.sysrq 0-u64max
HOST_DATA 0 up->port.sysrq_ch 0-255
HOST_DATA 0 up->port.sysrq_seq 0-255
HOST_DATA 0 up->port.type 0-u32max
HOST_DATA 0 up->port.uartclk 0-u32max
HOST_DATA 0 up->port.x_char 0-255
HOST_DATA 0 up->probe 0-255
HOST_DATA 0 up->rpm_tx_active 0-u32max
HOST_DATA 0 up->timer.expires 0-u64max
HOST_DATA 0 up->timer.flags 0-u32max
HOST_DATA 0 up->tx_loadsz 0-u32max
HOST_DATA 0 *up 0-u64max
LOCK2 flags
LOCK2 0 &up->port.lock
HALF_LOCKED2 &i->lock
TYPE_LOCK (struct uart_port)->lock

drivers/tty/serial/8250/8250_mxpcie.c mxpcie8250_handle_irq() -> serial8250_modem_status()

Type Parameter Key Value
PARAM_VALUE 0 up 4096-ptr_max
PARAM_VALUE 0 up->port.serial_in 4096-ptr_max
DATA_SOURCE 0 up r up_to_u8250p
BIT_INFO 0 up 0x56ca104d7de3c000,0xffffffffffffffff
BIT_INFO 0 up 0x56ca104d7de3c000,0xffffffffffffffff
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &_T->lock->lock
LOCK2 _T->flags
HALF_LOCKED2 &i->lock

drivers/tty/serial/8250/8250_port.c console_msr_handler() -> serial8250_modem_status()

Type Parameter Key Value
PARAM_VALUE 0 up 4096-ptr_max
NOCHECK_CALL
LOCK2 &port->lock
TYPE_LOCK (struct uart_port)->lock

drivers/tty/serial/8250/8250_port.c serial8250_console_write() -> serial8250_modem_status()

Type Parameter Key Value
PARAM_VALUE 0 up 4096-ptr_max
PARAM_VALUE 0 up->em485 0,4096-ptr_max
PARAM_VALUE 0 up->fcr 1-255
PARAM_VALUE 0 up->msr_saved_flags 1-255
PARAM_VALUE 0 up->port.cons 0,4096-ptr_max
PARAM_VALUE 0 up->port.cons_flow 1
PARAM_VALUE 0 up->port.line 0-s16max,4294934528-u32max
PARAM_VALUE 0 up->port.private_data->lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 up->port.serial_in 4096-ptr_max
PARAM_VALUE 0 up->port.serial_out 4096-ptr_max
CAPPED_DATA 0 up->canary 1
CAPPED_DATA 0 up->port.line 1
DATA_SOURCE 0 up $0
BIT_INFO 0 up->capabilities 0x0,0xffffffff
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 0 up->msr_saved_flags 1-255[c]
HOST_DATA 0 up->port.cons_flow 1
HOST_DATA 0 up->port.console_reinit 0-255
HOST_DATA 0 up->port.ctrl_id 0-u32max
HOST_DATA 0 up->port.custom_divisor 0-u32max
HOST_DATA 0 up->port.fifosize 0-u32max
HOST_DATA 0 up->port.flags 0-u64max
HOST_DATA 0 up->port.frame_time 0-u32max
HOST_DATA 0 up->port.has_sysrq 0-255
HOST_DATA 0 up->port.hub6 0-255
HOST_DATA 0 up->port.hw_stopped 0-1
HOST_DATA 0 up->port.icount.brk 0-u32max
HOST_DATA 0 up->port.icount.buf_overrun 0-u32max
HOST_DATA 0 up->port.icount.cts 0-u32max
HOST_DATA 0 up->port.icount.dcd 0-u32max
HOST_DATA 0 up->port.icount.dsr 0-u32max
HOST_DATA 0 up->port.icount.frame 0-u32max
HOST_DATA 0 up->port.icount.overrun 0-u32max
HOST_DATA 0 up->port.icount.parity 0-u32max
HOST_DATA 0 up->port.icount.rng 0-u32max
HOST_DATA 0 up->port.icount.rx 0-u32max
HOST_DATA 0 up->port.icount.tx 0-u32max
HOST_DATA 0 up->port.ignore_status_mask 0-u32max
HOST_DATA 0 up->port.iobase 0-u64max
HOST_DATA 0 up->port.iotype s32min-s32max
HOST_DATA 0 up->port.irq 0-u32max
HOST_DATA 0 up->port.irqflags 0-u64max
HOST_DATA 0 up->port.iso7816.clk 0-u32max
HOST_DATA 0 up->port.iso7816.flags 0-u32max
HOST_DATA 0 up->port.iso7816.sc_di 0-u32max
HOST_DATA 0 up->port.iso7816.sc_fi 0-u32max
HOST_DATA 0 up->port.iso7816.tg 0-u32max
HOST_DATA 0 up->port.line 0-s16max,4294934528-u32max[c]
HOST_DATA 0 up->port.mapbase 0-u64max
HOST_DATA 0 up->port.mapsize 0-u64max
HOST_DATA 0 up->port.mctrl 0-u32max
HOST_DATA 0 up->port.minor 0-u32max
HOST_DATA 0 up->port.port_id 0-u32max
HOST_DATA 0 up->port.quirks 0-255
HOST_DATA 0 up->port.read_status_mask 0-u32max
HOST_DATA 0 up->port.regshift 0-255
HOST_DATA 0 up->port.rs485.addr_dest 0-255
HOST_DATA 0 up->port.rs485.addr_recv 0-255
HOST_DATA 0 up->port.rs485.delay_rts_after_send 0-u32max
HOST_DATA 0 up->port.rs485.delay_rts_before_send 0-u32max
HOST_DATA 0 up->port.rs485.flags 0-u32max
HOST_DATA 0 up->port.rs485_supported.addr_dest 0-255
HOST_DATA 0 up->port.rs485_supported.addr_recv 0-255
HOST_DATA 0 up->port.rs485_supported.delay_rts_after_send 0-u32max
HOST_DATA 0 up->port.rs485_supported.delay_rts_before_send 0-u32max
HOST_DATA 0 up->port.rs485_supported.flags 0-u32max
HOST_DATA 0 up->port.status 0-u32max
HOST_DATA 0 up->port.suspended 0-255
HOST_DATA 0 up->port.sysrq 0-u64max
HOST_DATA 0 up->port.sysrq_ch 0-255
HOST_DATA 0 up->port.sysrq_seq 0-255
HOST_DATA 0 up->port.type 0-u32max
HOST_DATA 0 up->port.uartclk 0-u32max
HOST_DATA 0 up->port.x_char 0-255
HALF_LOCKED2 flags

drivers/tty/serial/8250/8250_port.c serial8250_do_get_mctrl() -> serial8250_modem_status()

Type Parameter Key Value
PARAM_VALUE 0 up 4096-ptr_max
PARAM_VALUE 0 up->port.dev->power.request 0-4
PARAM_VALUE 0 up->port.dev->power.runtime_error s32min-(-17),(-15)-(-14),(-12),(-10)-s32max
PARAM_VALUE 0 up->port.dev->power.wakeirq->status 0-4294967295
DATA_SOURCE 0 up r up_to_u8250p
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &m->lock
HALF_LOCKED2 &port->lock
HALF_LOCKED2 &state->uart_port->lock
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct uart_port)->lock

drivers/tty/serial/8250/8250_port.c serial8250_handle_irq_locked() -> serial8250_modem_status()

Type Parameter Key Value
PARAM_VALUE 0 up 4096-ptr_max
PARAM_VALUE 0 up->port.serial_in 4096-ptr_max
DATA_SOURCE 0 up r up_to_u8250p
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &_T->lock->lock
LOCK2 _T->flags

drivers/tty/serial/8250/8250_aspeed_vuart.c aspeed_vuart_handle_irq() -> serial8250_modem_status()

Type Parameter Key Value
PARAM_VALUE 0 up 4096-ptr_max
DATA_SOURCE 0 up r up_to_u8250p
BIT_INFO 0 up 0x1c974bbd01e8000,0xffffffffffffffff
BIT_INFO 0 up 0x1c974bbd01e8000,0xffffffffffffffff
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 0 up->port.sysrq_ch 1-255
LOCK2 &port->lock
LOCK2 flags
HALF_LOCKED2 &i->lock
TYPE_LOCK (struct uart_port)->lock

drivers/tty/serial/8250/8250_core.c serial8250_resume_port() -> serial8250_modem_status()

Type Parameter Key Value
PARAM_VALUE 0 up 4096-ptr_max
PARAM_VALUE 0 up->canary 0
PARAM_VALUE 0 up->console_msr_work_allow 1
PARAM_VALUE 0 up->msr_saved_flags 1-255
PARAM_VALUE 0 up->port.cons 4096-ptr_max
PARAM_VALUE 0 up->port.line 0-s16max,4294934528-u32max
PARAM_VALUE 0 up->port.suspended 0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &port->lock
LOCK2 irq
TYPE_LOCK (struct uart_port)->lock