Lines Matching refs:timer

42 	hpet_timer* timer;
97 hpet_set_hardware_timer(bigtime_t relativeTimeout, hpet_timer *timer)
105 //dprintf("comparator: %lld, new value: %lld\n", timer->u0.comparator64, timerValue);
108 timer->u0.comparator64 = timerValue;
110 timer->u0.comparator32 = timerValue;
113 // enable timer interrupt
114 timer->config |= HPET_CONF_TIMER_INT_ENABLE;
121 hpet_clear_hardware_timer(hpet_timer *timer)
123 // Disable timer interrupt
124 timer->config &= ~HPET_CONF_TIMER_INT_ENABLE;
134 hpet_timer* timer = &sHPETRegs->timer[hpetCookie->number];
137 if (!HPET_GET_CONF_TIMER_INT_IS_LEVEL(timer)
141 hpet_clear_hardware_timer(timer);
181 hpet_dump_timer(volatile struct hpet_timer *timer)
183 dprintf("HPET Timer %ld:\n", (timer - sHPETRegs->timer));
184 dprintf("CAP/CONFIG register: 0x%llx\n", timer->config);
187 uint32 interrupts = (uint32)HPET_GET_CAP_TIMER_ROUTE(timer);
194 timer->config & HPET_CAP_TIMER_FSB_INT_DEL ? "Yes" : "No");
198 timer->config & HPET_CONF_TIMER_FSB_ENABLE ? "Yes" : "No");
200 timer->config & HPET_CONF_TIMER_INT_ENABLE ? "Yes" : "No");
202 timer->config & HPET_CONF_TIMER_TYPE ? "Periodic" : "OneShot");
204 HPET_GET_CONF_TIMER_INT_IS_LEVEL(timer) ? "Level" : "Edge");
207 HPET_GET_CONF_TIMER_INT_ROUTE(timer));
209 if (timer->config & HPET_CONF_TIMER_FSB_ENABLE) {
210 dprintf("\tfsb_route[0]: 0x%llx\n", timer->fsb_route[0]);
211 dprintf("\tfsb_route[1]: 0x%llx\n", timer->fsb_route[1]);
220 struct hpet_timer *timer = cookie->timer;
222 uint32 interrupts = (uint32)HPET_GET_CAP_TIMER_ROUTE(timer);
234 dprintf("hpet_init_timer(): timer can't be routed to any interrupt!");
238 timer->config &= ~HPET_CONF_TIMER_TYPE;
241 timer->config |= HPET_CONF_TIMER_INT_TYPE;
244 timer->config &= ~HPET_CONF_TIMER_FSB_ENABLE;
248 timer->config &= ~HPET_CONF_TIMER_32MODE;
251 timer->config |= HPET_CONF_TIMER_32MODE;
254 timer->config |= (interrupt << HPET_CONF_TIMER_INT_ROUTE_SHIFT)
257 cookie->irq = interrupt = HPET_GET_CONF_TIMER_INT_ROUTE(timer);
264 hpet_dump_timer(timer);
325 hpet_dump_timer(&sHPETRegs->timer[c]);
456 hpetCookie->timer = &sHPETRegs->timer[timerNumber];
464 dprintf("hpet_open: initializing timer failed: %s\n", strerror(status));
490 hpet_clear_hardware_timer(&sHPETRegs->timer[hpetCookie->number]);
523 dprintf("hpet: wait timer (%d) for %lld...\n", hpetCookie->number, value);
524 hpet_set_hardware_timer(value, &sHPETRegs->timer[hpetCookie->number]);