digic-timer.c (95a9457fd44ad97c518858a4e1586a5498f9773c) digic-timer.c (b01422622b7c7293196fdaf1dbb4f495af44ecf9)
1/*
2 * QEMU model of the Canon DIGIC timer block.
3 *
4 * Copyright (C) 2013 Antony Pavlov <antonynpavlov@gmail.com>
5 *
6 * This model is based on reverse engineering efforts
7 * made by CHDK (http://chdk.wikia.com) and
8 * Magic Lantern (http://www.magiclantern.fm) projects

--- 115 unchanged lines hidden (view full) ---

124 },
125 .endianness = DEVICE_NATIVE_ENDIAN,
126};
127
128static void digic_timer_init(Object *obj)
129{
130 DigicTimerState *s = DIGIC_TIMER(obj);
131
1/*
2 * QEMU model of the Canon DIGIC timer block.
3 *
4 * Copyright (C) 2013 Antony Pavlov <antonynpavlov@gmail.com>
5 *
6 * This model is based on reverse engineering efforts
7 * made by CHDK (http://chdk.wikia.com) and
8 * Magic Lantern (http://www.magiclantern.fm) projects

--- 115 unchanged lines hidden (view full) ---

124 },
125 .endianness = DEVICE_NATIVE_ENDIAN,
126};
127
128static void digic_timer_init(Object *obj)
129{
130 DigicTimerState *s = DIGIC_TIMER(obj);
131
132 s->ptimer = ptimer_init(NULL, PTIMER_POLICY_DEFAULT);
132 s->ptimer = ptimer_init_with_bh(NULL, PTIMER_POLICY_DEFAULT);
133
134 /*
135 * FIXME: there is no documentation on Digic timer
136 * frequency setup so let it always run at 1 MHz
137 */
138 ptimer_set_freq(s->ptimer, 1 * 1000 * 1000);
139
140 memory_region_init_io(&s->iomem, OBJECT(s), &digic_timer_ops, s,

--- 26 unchanged lines hidden ---
133
134 /*
135 * FIXME: there is no documentation on Digic timer
136 * frequency setup so let it always run at 1 MHz
137 */
138 ptimer_set_freq(s->ptimer, 1 * 1000 * 1000);
139
140 memory_region_init_io(&s->iomem, OBJECT(s), &digic_timer_ops, s,

--- 26 unchanged lines hidden ---