Revision 2e70f6ef hw/mips_timer.c

b/hw/mips_timer.c
91 91
    if (env->CP0_Cause & (1 << CP0Ca_DC))
92 92
        return;
93 93

  
94
    /* ??? This callback should occur when the counter is exactly equal to
95
       the comparator value.  Offset the count by one to avoid immediately
96
       retriggering the callback before any virtual time has passed.  */
97
    env->CP0_Count++;
94 98
    cpu_mips_timer_update(env);
99
    env->CP0_Count--;
95 100
    if (env->insn_flags & ISA_MIPS32R2)
96 101
        env->CP0_Cause |= 1 << CP0Ca_TI;
97 102
    qemu_irq_raise(env->irq[(env->CP0_IntCtl >> CP0IntCtl_IPTI) & 0x7]);

Also available in: Unified diff