Revision 4ff927cc

b/hw/pxa2xx_timer.c
94 94
    uint32_t reset3;
95 95
    uint32_t snapshot;
96 96

  
97
    qemu_irq irq4;
97 98
    PXA2xxTimer4 tm4[8];
98 99
};
99 100

  
......
289 290
                if (s->tm4[i].tm.level && (value & 1))
290 291
                    s->tm4[i].tm.level = 0;
291 292
            if (!(s->events & 0xff0))
292
                qemu_irq_lower(s->tm4->tm.irq);
293
                qemu_irq_lower(s->irq4);
293 294
        }
294 295
        break;
295 296
    case OWER:	/* XXX: Reset on OSMR3 match? */
......
372 373
        t->clock = 0;
373 374
    if (t->control & (1 << 6))
374 375
        pxa2xx_timer_update4(i, qemu_get_clock(vm_clock), t->tm.num - 4);
376
    if (i->events & 0xff0)
377
        qemu_irq_raise(i->irq4);
375 378
}
376 379

  
377 380
static int pxa25x_timer_post_load(void *opaque, int version_id)
......
395 398
    int i;
396 399
    int iomemtype;
397 400
    PXA2xxTimerInfo *s;
398
    qemu_irq irq4;
399 401

  
400 402
    s = FROM_SYSBUS(PXA2xxTimerInfo, dev);
401 403
    s->irq_enabled = 0;
......
414 416
                        pxa2xx_timer_tick, &s->timer[i]);
415 417
    }
416 418
    if (s->flags & (1 << PXA2XX_TIMER_HAVE_TM4)) {
417
        sysbus_init_irq(dev, &irq4);
419
        sysbus_init_irq(dev, &s->irq4);
418 420

  
419 421
        for (i = 0; i < 8; i ++) {
420 422
            s->tm4[i].tm.value = 0;
......
425 427
            s->tm4[i].control = 0x0;
426 428
            s->tm4[i].tm.qtimer = qemu_new_timer(vm_clock,
427 429
                        pxa2xx_timer_tick4, &s->tm4[i]);
428
            s->tm4[i].tm.irq = irq4;
429 430
        }
430 431
    }
431 432

  

Also available in: Unified diff