Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 4 files:

Smatch caller information:

drivers/gpu/drm/nouveau/nvkm/engine/gr/g84.c g84_gr_tlb_flush() -> nvkm_timer_read()

Type Parameter Key Value
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &gr->lock
LOCK2 &vmm->mmu->mutex
LOCK2 flags
TYPE_LOCK (struct nv50_gr)->lock
TYPE_LOCK (struct nvkm_mmu)->mutex

drivers/gpu/drm/nouveau/nvkm/engine/gr/g84.c g84_gr_tlb_flush() -> nvkm_timer_read()

Type Parameter Key Value
PARAM_VALUE 0 tmr 4096-ptr_max
PARAM_VALUE 0 tmr->func 4096-ptr_max
PARAM_VALUE 0 tmr->func->read 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &gr->lock
LOCK2 &vmm->mmu->mutex
LOCK2 flags
TYPE_LOCK (struct nv50_gr)->lock
TYPE_LOCK (struct nvkm_mmu)->mutex

drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c nvkm_therm_fan_sense() -> nvkm_timer_read()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 _T->lock

drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c nvkm_therm_fan_sense() -> nvkm_timer_read()

Type Parameter Key Value
PARAM_VALUE 0 tmr 4096-ptr_max
PARAM_VALUE 0 tmr->func 4096-ptr_max
PARAM_VALUE 0 tmr->func->read 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 _T->lock

drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c nvkm_therm_fan_sense() -> nvkm_timer_read()

Type Parameter Key Value
PARAM_VALUE 0 tmr 4096-ptr_max
PARAM_VALUE 0 tmr->func 4096-ptr_max
PARAM_VALUE 0 tmr->func->read 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 _T->lock

drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c nvkm_therm_fan_sense() -> nvkm_timer_read()

Type Parameter Key Value
PARAM_VALUE 0 tmr 4096-ptr_max
PARAM_VALUE 0 tmr->func 4096-ptr_max
PARAM_VALUE 0 tmr->func->read 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 _T->lock

drivers/gpu/drm/nouveau/nvkm/engine/device/user.c nvkm_udevice_time() -> nvkm_timer_read()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING

drivers/gpu/drm/nouveau/nvkm/subdev/timer/base.c nvkm_timer_alarm() -> nvkm_timer_read()

Type Parameter Key Value
DATA_SOURCE 0 tmr $0
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 flags
LOCK2 0 &tmr->lock
HALF_LOCKED2 &therm->lock
HALF_LOCKED2 flags
TYPE_LOCK (struct nvkm_timer)->lock

drivers/gpu/drm/nouveau/nvkm/subdev/timer/base.c nvkm_timer_alarm() -> nvkm_timer_read()

Type Parameter Key Value
PARAM_VALUE 0 tmr 4096-ptr_max
PARAM_VALUE 0 tmr->func 4096-ptr_max
PARAM_VALUE 0 tmr->func->read 4096-ptr_max
CAPPED_DATA 0 &tmr->alarms 1
DATA_SOURCE 0 tmr $0
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 flags
LOCK2 0 &tmr->lock
HALF_LOCKED2 &therm->lock
HALF_LOCKED2 flags
TYPE_LOCK (struct nvkm_timer)->lock

drivers/gpu/drm/nouveau/nvkm/subdev/timer/base.c nvkm_timer_alarm_trigger() -> nvkm_timer_read()

Type Parameter Key Value
PARAM_VALUE 0 tmr 2534673693116039160,6051183191866367992
PARAM_VALUE 0 tmr->func 4096-ptr_max
PARAM_VALUE 0 tmr->func->init 0,4779028717040869376,5001957841984249856,5143036309309329408
PARAM_VALUE 0 tmr->func->read 4096-ptr_max
CAPPED_DATA 0 &tmr->alarms 1
DATA_SOURCE 0 tmr $0
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 flags
LOCK2 0 &tmr->lock
TYPE_LOCK (struct nvkm_timer)->lock

drivers/gpu/drm/nouveau/nvkm/subdev/timer/base.c nvkm_timer_alarm_trigger() -> nvkm_timer_read()

Type Parameter Key Value
PARAM_VALUE 0 tmr 2534673693116039160,6051183191866367992
PARAM_VALUE 0 tmr->func 4096-ptr_max
PARAM_VALUE 0 tmr->func->init 0,4779028717040869376,5001957841984249856,5143036309309329408
PARAM_VALUE 0 tmr->func->read 4096-ptr_max
CAPPED_DATA 0 &tmr->alarms 1
DATA_SOURCE 0 tmr $0
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 flags
LOCK2 0 &tmr->lock
TYPE_LOCK (struct nvkm_timer)->lock

drivers/gpu/drm/nouveau/nvkm/subdev/timer/base.c nvkm_timer_wait_test() -> nvkm_timer_read()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &bar->base.lock
HALF_LOCKED2 &bar->lock
HALF_LOCKED2 &cgrp->mutex
HALF_LOCKED2 &chan->cgrp->mutex
HALF_LOCKED2 &device->mutex
HALF_LOCKED2 &disp->super.mutex
HALF_LOCKED2 &fb->tags.mutex
HALF_LOCKED2 &fifo->lock
HALF_LOCKED2 &gr->fecs.mutex
HALF_LOCKED2 &gr->lock
HALF_LOCKED2 &gsp->cmdq.mutex
HALF_LOCKED2 &ltc->mutex
HALF_LOCKED2 &outp->dp.mutex
HALF_LOCKED2 &pmu->send.mutex
HALF_LOCKED2 &vmm->mmu->mutex
HALF_LOCKED2 flags