예제 #1
0
파일: virt-cs.c 프로젝트: mirsys/xboot
static bool_t virt_cs_init(struct clocksource_t * cs)
{
	u64_t rate = arm64_timer_frequecy();
	cs->mult = clocksource_hz2mult(rate, cs->shift);
	arm64_timer_start();
	return TRUE;
}
예제 #2
0
파일: virt-ce.c 프로젝트: IngenicC/xboot
static bool_t ce_init(struct clockevent_t * ce)
{
	struct clockevent_pdata_t * pdat = (struct clockevent_pdata_t *)ce->priv;

	clockevent_calc_mult_shift(ce, arm64_timer_frequecy(), 10);
	ce->min_delta_ns = clockevent_delta2ns(ce, 0x1);
	ce->max_delta_ns = clockevent_delta2ns(ce, 0xffffffff);

	if(!request_irq(pdat->irq, ce_interrupt, IRQ_TYPE_NONE, ce))
		return FALSE;
	arm64_timer_interrupt_disable();
	return TRUE;
}