Exemplo n.º 1
0
static void __init meson_clocksource_init(void)
{
    CLEAR_CBUS_REG_MASK(ISA_TIMER_MUX, TIMER_E_INPUT_MASK);
    SET_CBUS_REG_MASK(ISA_TIMER_MUX, TIMERE_UNIT_1ms << TIMER_E_INPUT_BIT);
    WRITE_CBUS_REG(ISA_TIMERE, 0);

    clocksource_timer_e.shift = clocksource_hz2shift(24, 1000);
    clocksource_timer_e.mult =
    clocksource_khz2mult(1, clocksource_timer_e.shift);
    clocksource_register(&clocksource_timer_e);
}
static void __init meson_clocksource_init(void)
{
	CLEAR_CBUS_REG_MASK(ISA_TIMER_MUX, TIMER_E_INPUT_MASK);
	SET_CBUS_REG_MASK(ISA_TIMER_MUX, TIMERE_UNIT_1us << TIMER_E_INPUT_BIT);
	WRITE_CBUS_REG(ISA_TIMERE, 0);

	clocksource_timer_e.shift = clocksource_hz2shift(24, 1000000);
	clocksource_timer_e.mult  = clocksource_hz2mult(1000000, clocksource_timer_e.shift);
    
    clocksource_timer_f.shift = clocksource_timer_e.shift;
    //clocksource_timer_f.mult = ((clocksource_timer_e.mult)>>6)*64;
    clocksource_timer_f.mult = ((clocksource_timer_e.mult)>>6)*40;
    /*printk("Timer-E=%x,%x, Timer-F=%x,%x",
    clocksource_timer_e.shift,
    clocksource_timer_e.mult,
    clocksource_timer_f.shift,
    clocksource_timer_f.mult
     );*/
    clocksource_register(&clocksource_timer_e);
    clocksource_register(&clocksource_timer_f);
}