a9gtimer.c (84a5a8014801a83d1b8d15fa7f0fde03db081530) a9gtimer.c (cb8d4c8f54b8271f642f02382eec29d468bb1c77)
1/*
2 * Global peripheral timer block for ARM A9MP
3 *
4 * (C) 2013 Xilinx Inc.
5 *
6 * Written by François LEGAL
7 * Written by Peter Crosthwaite <peter.crosthwaite@xilinx.com>
8 *

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

179
180 switch (addr) {
181 case R_COUNTER_HI:
182 shift = 32;
183 /* fallthrough */
184 case R_COUNTER_LO:
185 /*
186 * Keep it simple - ARM docco explicitly says to disable timer before
1/*
2 * Global peripheral timer block for ARM A9MP
3 *
4 * (C) 2013 Xilinx Inc.
5 *
6 * Written by François LEGAL
7 * Written by Peter Crosthwaite <peter.crosthwaite@xilinx.com>
8 *

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

179
180 switch (addr) {
181 case R_COUNTER_HI:
182 shift = 32;
183 /* fallthrough */
184 case R_COUNTER_LO:
185 /*
186 * Keep it simple - ARM docco explicitly says to disable timer before
187 * modding it, so dont bother trying to do all the difficult on the fly
187 * modding it, so don't bother trying to do all the difficult on the fly
188 * timer modifications - (if they even work in real hardware??).
189 */
190 if (s->control & R_CONTROL_TIMER_ENABLE) {
191 qemu_log_mask(LOG_GUEST_ERROR, "Cannot mod running ARM gtimer\n");
192 return;
193 }
194 s->counter = deposit64(s->counter, shift, 32, value);
195 return;

--- 177 unchanged lines hidden ---
188 * timer modifications - (if they even work in real hardware??).
189 */
190 if (s->control & R_CONTROL_TIMER_ENABLE) {
191 qemu_log_mask(LOG_GUEST_ERROR, "Cannot mod running ARM gtimer\n");
192 return;
193 }
194 s->counter = deposit64(s->counter, shift, 32, value);
195 return;

--- 177 unchanged lines hidden ---