static void pm_update_sci(PIIX4PMState *s)

{

    int sci_level, pmsts;

    int64_t expire_time;



    pmsts = get_pmsts(s);

    sci_level = (((pmsts & s->pmen) &

                  (RTC_EN | PWRBTN_EN | GBL_EN | TMROF_EN)) != 0);

    qemu_set_irq(s->irq, sci_level);

    /* schedule a timer interruption if needed */

    if ((s->pmen & TMROF_EN) && !(pmsts & TMROF_EN)) {

        expire_time = muldiv64(s->tmr_overflow_time, ticks_per_sec, PM_FREQ);

        qemu_mod_timer(s->tmr_timer, expire_time);

        s->tmr_overflow_time += 0x800000;

    } else {

        qemu_del_timer(s->tmr_timer);

    }

}

static void pm_update_sci(PIIX4PMState *s)

{

    int sci_level, pmsts;

    int64_t expire_time;



    pmsts = get_pmsts(s);

    sci_level = (((pmsts & s->pmen) &

                  (RTC_EN | PWRBTN_EN | GBL_EN | TMROF_EN)) != 0);

    qemu_set_irq(s->irq, sci_level);

    

    if ((s->pmen & TMROF_EN) && !(pmsts & TMROF_EN)) {

        expire_time = muldiv64(s->tmr_overflow_time, ticks_per_sec, PM_FREQ);

        qemu_mod_timer(s->tmr_timer, expire_time);

        s->tmr_overflow_time += 0x800000;

    } else {

        qemu_del_timer(s->tmr_timer);

    }

}

        s->tmr_overflow_time += 0x800000;
static void FUNC_0(PIIX4PMState *VAR_0)

{

    int VAR_1, VAR_2;

    int64_t expire_time;



    VAR_2 = get_pmsts(VAR_0);

    VAR_1 = (((VAR_2 & VAR_0->pmen) &

                  (RTC_EN | PWRBTN_EN | GBL_EN | TMROF_EN)) != 0);

    qemu_set_irq(VAR_0->irq, VAR_1);

    

    if ((VAR_0->pmen & TMROF_EN) && !(VAR_2 & TMROF_EN)) {

        expire_time = muldiv64(VAR_0->tmr_overflow_time, ticks_per_sec, PM_FREQ);

        qemu_mod_timer(VAR_0->tmr_timer, expire_time);

        VAR_0->tmr_overflow_time += 0x800000;

    } else {

        qemu_del_timer(VAR_0->tmr_timer);

    }

}

static void FUNC_0(PIIX4PMState *VAR_0)
{ int VAR_1, VAR_2; int64_t expire_time; VAR_2 = get_pmsts(VAR_0); VAR_1 = (((VAR_2 & VAR_0->pmen) &
(RTC_EN | PWRBTN_EN | GBL_EN | TMROF_EN)) != 0); qemu_set_irq(VAR_0->irq, VAR_1); if ((VAR_0->pmen & TMROF_EN) && !(VAR_2 & TMROF_EN)) { expire_time = muldiv64(VAR_0->tmr_overflow_time, ticks_per_sec, PM_FREQ); qemu_mod_timer(VAR_0->tmr_timer, expire_time); VAR_0->tmr_overflow_time += 0x800000; } else { qemu_del_timer(VAR_0->tmr_timer); } }