Lines Matching +full:timebase +full:- +full:frequency
1 /*-
2 * SPDX-License-Identifier: BSD-2-Clause
53 if (node == -1) in vtimer_get_timebase()
56 len = OF_getproplen(node, "timebase-frequency"); in vtimer_get_timebase()
60 OF_getencprop(node, "timebase-frequency", freq, len); in vtimer_get_timebase()
72 vtimer = &hypctx->vtimer; in vtimer_cpuinit()
73 mtx_init(&vtimer->mtx, "vtimer callout mutex", NULL, MTX_DEF); in vtimer_cpuinit()
74 callout_init_mtx(&vtimer->callout, &vtimer->mtx, 0); in vtimer_cpuinit()
80 vtimer->freq = freq; in vtimer_cpuinit()
90 hyp = hypctx->hyp; in vtimer_inject_irq_callout()
92 atomic_set_32(&hypctx->interrupts_pending, HVIP_VSTIP); in vtimer_inject_irq_callout()
93 vcpu_notify_event(vm_vcpu(hyp->vm, hypctx->cpu_id)); in vtimer_inject_irq_callout()
104 vtimer = &hypctx->vtimer; in vtimer_set_timer()
108 delta = next_val - curtime; in vtimer_set_timer()
109 time = delta * SBT_1S / vtimer->freq; in vtimer_set_timer()
110 atomic_clear_32(&hypctx->interrupts_pending, HVIP_VSTIP); in vtimer_set_timer()
111 callout_reset_sbt(&vtimer->callout, time, 0, in vtimer_set_timer()
114 atomic_set_32(&hypctx->interrupts_pending, HVIP_VSTIP); in vtimer_set_timer()