Documented in 1 files:

Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/net/can/ctucanfd/ctucanfd_base.c ctucan_interrupt() -> ctucan_get_tx_status()

Type Parameter Key Value
PARAM_VALUE 0 priv 4096-ptr_max
PARAM_VALUE 0 priv->can.can_stats.arbitration_lost 0-4294967295
PARAM_VALUE 0 priv->can.can_stats.bus_error 0-4294967295
PARAM_VALUE 0 priv->can.can_stats.bus_off 0-4294967295
PARAM_VALUE 0 priv->can.can_stats.error_passive 0-4294967295
PARAM_VALUE 0 priv->can.can_stats.error_warning 0-4294967295
PARAM_VALUE 0 priv->can.state 0-4294967295
PARAM_VALUE 0 priv->ntxbufs 1-u32max
PARAM_VALUE 0 priv->read_reg 4096-ptr_max
PARAM_VALUE 0 priv->txb_prio 0-4294967295
PARAM_VALUE 0 priv->txb_tail 0-4294967295
CAPPED_DATA 1 buf 1
PARAM_COMPARE 1 buf < $0->ntxbufs
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 flags

drivers/net/can/ctucanfd/ctucanfd_base.c ctucan_is_txt_buf_writable() -> ctucan_get_tx_status()

Type Parameter Key Value
PARAM_VALUE 0 priv 4096-ptr_max
PARAM_VALUE 0 priv->ntxbufs 1-u32max
PARAM_VALUE 0 priv->read_reg 4096-ptr_max
CAPPED_DATA 1 buf 1
DATA_SOURCE 0 priv $0
DATA_SOURCE 1 buf $1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &txq->_xmit_lock
HALF_LOCKED2 bh
HALF_LOCKED2 flags
HALF_LOCKED2 rcu_read

drivers/net/can/ctucanfd/ctucanfd_base.c ctucan_tx_interrupt() -> ctucan_get_tx_status()

Type Parameter Key Value
PARAM_VALUE 0 priv 4096-ptr_max
PARAM_VALUE 0 priv->txb_prio 0-4294967295
CAPPED_DATA 1 buf 1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
UNITS 1 buf unit_array_size
LOCK2 flags
LOCK2 0 &priv->tx_lock
HALF_LOCKED2 &desc->request_mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct ctucan_priv)->tx_lock