//#define DEBUG_TIMER
#ifdef DEBUG_TIMER
-#define DPRINTF(fmt, args...) \
-do { printf("TIMER: " fmt , ##args); } while (0)
+#define DPRINTF(fmt, ...) \
+ do { printf("TIMER: " fmt , ## __VA_ARGS__); } while (0)
#else
-#define DPRINTF(fmt, args...) do {} while (0)
+#define DPRINTF(fmt, ...) do {} while (0)
#endif
/*
uint32_t slave_mode;
} SLAVIO_TIMERState;
-#define TIMER_MAXADDR 0x1f
#define SYS_TIMER_SIZE 0x14
#define CPU_TIMER_SIZE 0x10
SLAVIO_TIMERState *s = opaque;
uint32_t saddr, ret;
- saddr = (addr & TIMER_MAXADDR) >> 2;
+ saddr = addr >> 2;
switch (saddr) {
case TIMER_LIMIT:
// read limit (system counter mode) or read most signifying
uint32_t saddr;
DPRINTF("write " TARGET_FMT_plx " %08x\n", addr, val);
- saddr = (addr & TIMER_MAXADDR) >> 2;
+ saddr = addr >> 2;
switch (saddr) {
case TIMER_LIMIT:
if (slavio_timer_is_user(s)) {
QEMUBH *bh;
s = qemu_mallocz(sizeof(SLAVIO_TIMERState));
- if (!s)
- return s;
s->irq = irq;
s->master = master;
s->slave_index = slave_index;
slavio_timer_io_memory);
register_savevm("slavio_timer", addr, 3, slavio_timer_save,
slavio_timer_load, s);
- qemu_register_reset(slavio_timer_reset, s);
+ qemu_register_reset(slavio_timer_reset, 0, s);
slavio_timer_reset(s);
return s;