Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 24 files:

Smatch caller information:

drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c bnx2x_ptp_gettime() -> timecounter_read()

Type Parameter Key Value
PARAM_VALUE 0 tc 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &priv->est_lock
HALF_LOCKED2 &priv->lock
HALF_LOCKED2 flags

drivers/net/can/spi/mcp251xfd/mcp251xfd-ring.c mcp251xfd_ring_init_rx() -> timecounter_read()

Type Parameter Key Value
PARAM_VALUE 0 tc 4096-ptr_max
PARAM_VALUE 0 tc->cc 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 tc->cycle_last 0-u64max

drivers/net/ethernet/mellanox/mlxsw/spectrum_ptp.c mlxsw_sp1_ptp_adjfine() -> timecounter_read()

Type Parameter Key Value
PARAM_VALUE 0 tc 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &clock->lock
LOCK2 bh
TYPE_LOCK (struct mlxsw_sp1_ptp_clock)->lock

drivers/net/ethernet/mellanox/mlxsw/spectrum_ptp.c mlxsw_sp1_ptp_adjtime() -> timecounter_read()

Type Parameter Key Value
PARAM_VALUE 0 tc 4096-ptr_max
PREEMPT_ADD <- disables preempt
LOCK2 &clock->lock
LOCK2 bh
TYPE_LOCK (struct mlxsw_sp1_ptp_clock)->lock

drivers/net/ethernet/mellanox/mlxsw/spectrum_ptp.c mlxsw_sp1_ptp_clock_overflow() -> timecounter_read()

Type Parameter Key Value
PARAM_VALUE 0 tc 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 &clock->lock
LOCK2 bh
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct mlxsw_sp1_ptp_clock)->lock

drivers/net/ethernet/mellanox/mlxsw/spectrum_ptp.c mlxsw_sp1_ptp_settime() -> timecounter_read()

Type Parameter Key Value
PARAM_VALUE 0 tc 4096-ptr_max
PARAM_VALUE 0 tc->cc 4096-ptr_max
PARAM_VALUE 0 tc->frac 0
PREEMPT_ADD <- disables preempt
HOST_DATA 0 tc->cycle_last 0-u64max
USER_DATA 0 tc->nsec 0-8277292035999999999[c]
LOCK2 &clock->lock
LOCK2 bh
TYPE_LOCK (struct mlxsw_sp1_ptp_clock)->lock

drivers/net/dsa/mv88e6xxx/ptp.c mv88e6xxx_ptp_adjfine() -> timecounter_read()

Type Parameter Key Value
PARAM_VALUE 0 tc 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &chip->reg_lock
TYPE_LOCK (struct mv88e6xxx_chip)->reg_lock

drivers/net/dsa/mv88e6xxx/ptp.c mv88e6xxx_ptp_gettime() -> timecounter_read()

Type Parameter Key Value
PARAM_VALUE 0 tc 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 &chip->reg_lock
HALF_LOCKED2 &priv->est_lock
HALF_LOCKED2 &priv->lock
HALF_LOCKED2 flags
TYPE_LOCK (struct mv88e6xxx_chip)->reg_lock

drivers/net/ethernet/mellanox/mlx5/core/lib/clock.c mlx5_ptp_adjfine() -> timecounter_read()

Type Parameter Key Value
PARAM_VALUE 0 tc 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &clock->lock.lock
TYPE_LOCK (struct seqlock)->lock

drivers/net/ethernet/mellanox/mlx5/core/lib/clock.c mlx5_timestamp_overflow() -> timecounter_read()

Type Parameter Key Value
PARAM_VALUE 0 tc 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 &clock->lock.lock
TYPE_LOCK (struct seqlock)->lock

drivers/net/ethernet/mellanox/mlx4/en_clock.c mlx4_en_phc_adjfine() -> timecounter_read()

Type Parameter Key Value
PARAM_VALUE 0 tc 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &mdev->clock_lock.lock
TYPE_LOCK (struct seqlock)->lock

drivers/net/ethernet/mellanox/mlx4/en_clock.c mlx4_en_phc_gettime() -> timecounter_read()

Type Parameter Key Value
PARAM_VALUE 0 tc 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &mdev->clock_lock.lock
HALF_LOCKED2 &priv->est_lock
HALF_LOCKED2 &priv->lock
HALF_LOCKED2 flags
TYPE_LOCK (struct seqlock)->lock

drivers/net/ethernet/mellanox/mlx4/en_clock.c mlx4_en_ptp_overflow_check() -> timecounter_read()

Type Parameter Key Value
PARAM_VALUE 0 tc 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 &mdev->clock_lock.lock
LOCK2 &mdev->state_lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct mlx4_en_dev)->state_lock
TYPE_LOCK (struct seqlock)->lock

drivers/net/can/rockchip/rockchip_canfd-timestamp.c rkcanfd_timestamp_work() -> timecounter_read()

Type Parameter Key Value
PARAM_VALUE 0 tc 4096-ptr_max
NOCHECK_CALL
HALF_LOCKED2 &pool->lock

drivers/net/ethernet/intel/igb/igb_ptp.c igb_ptp_overflow_check() -> timecounter_read()

Type Parameter Key Value
PARAM_VALUE 0 tc 4096-ptr_max
HALF_LOCKED2 &pool->lock

drivers/ptp/ptp_vclock.c ptp_vclock_adjfine() -> timecounter_read()

Type Parameter Key Value
PARAM_VALUE 0 tc 3847897229709136128
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &vclock->lock
TYPE_LOCK (struct ptp_vclock)->lock

drivers/ptp/ptp_vclock.c ptp_vclock_gettime() -> timecounter_read()

Type Parameter Key Value
PARAM_VALUE 0 tc 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 &vclock->lock
HALF_LOCKED2 &priv->est_lock
HALF_LOCKED2 &priv->lock
HALF_LOCKED2 flags
TYPE_LOCK (struct ptp_vclock)->lock

drivers/net/ethernet/ti/cpts.c cpts_fifo_read() -> timecounter_read()

Type Parameter Key Value
PARAM_VALUE 0 tc 4096-ptr_max
PARAM_VALUE 0 tc->cc 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 0 tc->cycle_last 0-u64max
LOCK2 &cpts->lock
LOCK2 flags
HALF_LOCKED2 &cpts->ptp_clk_mutex
TYPE_LOCK (struct cpts)->lock

drivers/net/ethernet/ti/cpts.c cpts_overflow_check() -> timecounter_read()

Type Parameter Key Value
PARAM_VALUE 0 tc 4096-ptr_max
HOST_DATA 0 tc->cycle_last 0-u64max
LOCK2 &cpts->ptp_clk_mutex
TYPE_LOCK (struct cpts)->ptp_clk_mutex

drivers/net/ethernet/ti/cpts.c cpts_ptp_gettimeex() -> timecounter_read()

Type Parameter Key Value
PARAM_VALUE 0 tc 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 tc->cycle_last 0-u64max
LOCK2 &cpts->ptp_clk_mutex
TYPE_LOCK (struct cpts)->ptp_clk_mutex

drivers/net/ethernet/pensando/ionic/ionic_phc.c ionic_phc_adjfine() -> timecounter_read()

Type Parameter Key Value
PARAM_VALUE 0 tc 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &phc->lock
LOCK2 irqflags
TYPE_LOCK (struct ionic_phc)->lock

drivers/net/ethernet/pensando/ionic/ionic_phc.c ionic_phc_aux_work() -> timecounter_read()

Type Parameter Key Value
PARAM_VALUE 0 tc 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 &phc->lock
LOCK2 irqflags
TYPE_LOCK (struct ionic_phc)->lock

drivers/net/ethernet/freescale/fec_ptp.c fec_ptp_adjfine() -> timecounter_read()

Type Parameter Key Value
PARAM_VALUE 0 tc 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &fep->tmreg_lock
LOCK2 flags
TYPE_LOCK (struct fec_enet_private)->tmreg_lock

drivers/net/ethernet/freescale/fec_ptp.c fec_ptp_enable() -> timecounter_read()

Type Parameter Key Value
PARAM_VALUE 0 tc 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &fep->ptp_clk_mutex
LOCK2 &fep->tmreg_lock
LOCK2 flags
HALF_LOCKED2 &of->mutex
TYPE_LOCK (struct fec_enet_private)->ptp_clk_mutex
TYPE_LOCK (struct fec_enet_private)->tmreg_lock

drivers/net/ethernet/freescale/fec_ptp.c fec_ptp_enable_pps() -> timecounter_read()

Type Parameter Key Value
PARAM_VALUE 0 tc 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 0 tc->cycle_last 0-u64max
HOST_DATA 0 tc->nsec 0-u64max
LOCK2 &fep->tmreg_lock
LOCK2 flags
TYPE_LOCK (struct fec_enet_private)->tmreg_lock

drivers/net/ethernet/freescale/fec_ptp.c fec_ptp_gettime() -> timecounter_read()

Type Parameter Key Value
PARAM_VALUE 0 tc 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &fep->ptp_clk_mutex
LOCK2 &fep->tmreg_lock
LOCK2 flags
HALF_LOCKED2 &priv->est_lock
HALF_LOCKED2 &priv->lock
HALF_LOCKED2 flags
TYPE_LOCK (struct fec_enet_private)->ptp_clk_mutex
TYPE_LOCK (struct fec_enet_private)->tmreg_lock

drivers/net/ethernet/freescale/fec_ptp.c fec_ptp_pps_perout() -> timecounter_read()

Type Parameter Key Value
PARAM_VALUE 0 tc 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 0 tc->cycle_last 0-u64max
LOCK2 &fep->tmreg_lock
LOCK2 flags
TYPE_LOCK (struct fec_enet_private)->tmreg_lock

drivers/net/ethernet/freescale/fec_ptp.c fec_ptp_save_state() -> timecounter_read()

Type Parameter Key Value
PARAM_VALUE 0 tc 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &fep->tmreg_lock
LOCK2 flags
HALF_LOCKED2 &ndev->tx_global_lock
HALF_LOCKED2 &phydev->lock
HALF_LOCKED2 bh
HALF_LOCKED2 global &rtnl_mutex
TYPE_LOCK (struct fec_enet_private)->tmreg_lock

drivers/net/ethernet/freescale/fec_ptp.c fec_time_keep() -> timecounter_read()

Type Parameter Key Value
PARAM_VALUE 0 tc 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 &fep->ptp_clk_mutex
LOCK2 &fep->tmreg_lock
LOCK2 flags
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct fec_enet_private)->ptp_clk_mutex
TYPE_LOCK (struct fec_enet_private)->tmreg_lock

drivers/net/can/spi/mcp251xfd/mcp251xfd-timestamp.c mcp251xfd_timestamp_work() -> timecounter_read()

Type Parameter Key Value
PARAM_VALUE 0 tc 4096-ptr_max
NOCHECK_CALL
HALF_LOCKED2 &pool->lock

drivers/net/ethernet/intel/ixgbe/ixgbe_ptp.c ixgbe_ptp_overflow_check() -> timecounter_read()

Type Parameter Key Value
PARAM_VALUE 0 tc 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 &adapter->tmreg_lock
LOCK2 flags
TYPE_LOCK (struct ixgbe_adapter)->tmreg_lock

drivers/net/ethernet/intel/ixgbe/ixgbe_ptp.c ixgbe_ptp_setup_sdp_X540() -> timecounter_read()

Type Parameter Key Value
PARAM_VALUE 0 tc 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 tc->cycle_last 0-u64max
HOST_DATA 0 tc->nsec 0-u64max
USER_DATA 0 tc->nsec 0-8277292035999999999[c]
LOCK2 &adapter->tmreg_lock
LOCK2 flags
TYPE_LOCK (struct ixgbe_adapter)->tmreg_lock

drivers/net/ethernet/intel/ixgbe/ixgbe_ptp.c ixgbe_ptp_setup_sdp_X550() -> timecounter_read()

Type Parameter Key Value
PARAM_VALUE 0 tc 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 tc->cycle_last 0-u64max
HOST_DATA 0 tc->nsec 0-u64max
USER_DATA 0 tc->nsec 0-8277292035999999999[c]
LOCK2 &adapter->tmreg_lock
LOCK2 flags
TYPE_LOCK (struct ixgbe_adapter)->tmreg_lock

drivers/net/ethernet/wangxun/libwx/wx_ptp.c wx_ptp_overflow_check() -> timecounter_read()

Type Parameter Key Value
PARAM_VALUE 0 tc 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 &wx->hw_tc_lock.lock
TYPE_LOCK (struct seqlock)->lock

drivers/net/ethernet/wangxun/libwx/wx_ptp.c wx_ptp_trigger_calc() -> timecounter_read()

Type Parameter Key Value
PARAM_VALUE 0 tc 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 tc->cycle_last 0-u64max
HOST_DATA 0 tc->nsec 0-u64max
USER_DATA 0 tc->nsec 0-8277292035999999999[c]
LOCK2 &wx->hw_tc_lock.lock
TYPE_LOCK (struct seqlock)->lock

drivers/net/ethernet/marvell/octeontx2/nic/otx2_ptp.c otx2_ptp_tc_gettime() -> timecounter_read()

Type Parameter Key Value
PARAM_VALUE 0 tc 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 &ptp->nic->mbox.lock
HALF_LOCKED2 &priv->est_lock
HALF_LOCKED2 &priv->lock
HALF_LOCKED2 flags
TYPE_LOCK (struct mbox)->lock

drivers/net/ethernet/cavium/common/cavium_ptp.c cavium_ptp_gettime() -> timecounter_read()

Type Parameter Key Value
PARAM_VALUE 0 tc 4096-ptr_max
PREEMPT_ADD <- disables preempt
LOCK2 &clock->spin_lock
LOCK2 flags
TYPE_LOCK (struct cavium_ptp)->spin_lock

drivers/net/ethernet/qlogic/qede/qede_ptp.c qede_ptp_gettime() -> timecounter_read()

Type Parameter Key Value
PARAM_VALUE 0 tc 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &ptp->lock
LOCK2 bh
HALF_LOCKED2 &priv->est_lock
HALF_LOCKED2 &priv->lock
HALF_LOCKED2 flags
TYPE_LOCK (struct qede_ptp)->lock

drivers/net/can/usb/gs_usb.c gs_usb_timestamp_work() -> timecounter_read()

Type Parameter Key Value
PARAM_VALUE 0 tc 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 &parent->tc_lock
LOCK2 bh
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct gs_usb)->tc_lock

drivers/net/ethernet/broadcom/bnxt/bnxt_ptp.c bnxt_ptp_adjfine() -> timecounter_read()

Type Parameter Key Value
PARAM_VALUE 0 tc 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &ptp->ptp_lock.lock
TYPE_LOCK (struct seqlock)->lock

drivers/net/ethernet/broadcom/bnxt/bnxt_ptp.c bnxt_ptp_ts_aux_work() -> timecounter_read()

Type Parameter Key Value
PARAM_VALUE 0 tc 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 &ptp->ptp_lock.lock
TYPE_LOCK (struct seqlock)->lock

drivers/ptp/ptp_mock.c mock_phc_adjfine() -> timecounter_read()

Type Parameter Key Value
PARAM_VALUE 0 tc 4096-ptr_max
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 &phc->lock
TYPE_LOCK (struct mock_phc)->lock

drivers/ptp/ptp_mock.c mock_phc_gettime64() -> timecounter_read()

Type Parameter Key Value
PARAM_VALUE 0 tc 4096-ptr_max
PREEMPT_ADD <- disables preempt
LOCK2 &phc->lock
TYPE_LOCK (struct mock_phc)->lock

drivers/net/ethernet/intel/e1000e/ptp.c e1000e_systim_overflow_work() -> timecounter_read()

Type Parameter Key Value
PARAM_VALUE 0 tc 4096-ptr_max
HALF_LOCKED2 &pool->lock

sound/hda/common/controller.c azx_get_time_info() -> timecounter_read()

Type Parameter Key Value
PARAM_VALUE 0 tc 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &substream->runtime->buffer_mutex
HALF_LOCKED2 &substream->self_group.lock
HALF_LOCKED2 &substream->self_group.mutex