Code Review
/
kvmfornfv.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
review
|
tree
raw
|
inline
| side by side
These changes are the raw update to qemu-2.6.
[kvmfornfv.git]
/
qemu
/
hw
/
openrisc
/
cputimer.c
diff --git
a/qemu/hw/openrisc/cputimer.c
b/qemu/hw/openrisc/cputimer.c
index
9c54945
..
a98c799
100644
(file)
--- a/
qemu/hw/openrisc/cputimer.c
+++ b/
qemu/hw/openrisc/cputimer.c
@@
-18,11
+18,12
@@
* License along with this library; if not, see <http://www.gnu.org/licenses/>.
*/
* License along with this library; if not, see <http://www.gnu.org/licenses/>.
*/
+#include "qemu/osdep.h"
#include "cpu.h"
#include "hw/hw.h"
#include "qemu/timer.h"
#include "cpu.h"
#include "hw/hw.h"
#include "qemu/timer.h"
-#define TIMER_
FREQ (20 * 1000 * 1000) /* 20MHz
*/
+#define TIMER_
PERIOD 50 /* 50 ns period for 20 MHz timer
*/
/* The time when TTCR changes */
static uint64_t last_clk;
/* The time when TTCR changes */
static uint64_t last_clk;
@@
-36,8
+37,7
@@
void cpu_openrisc_count_update(OpenRISCCPU *cpu)
return;
}
now = qemu_clock_get_ns(QEMU_CLOCK_VIRTUAL);
return;
}
now = qemu_clock_get_ns(QEMU_CLOCK_VIRTUAL);
- cpu->env.ttcr += (uint32_t)muldiv64(now - last_clk, TIMER_FREQ,
- get_ticks_per_sec());
+ cpu->env.ttcr += (uint32_t)((now - last_clk) / TIMER_PERIOD);
last_clk = now;
}
last_clk = now;
}
@@
-59,7
+59,7
@@
void cpu_openrisc_timer_update(OpenRISCCPU *cpu)
} else {
wait = (cpu->env.ttmr & TTMR_TP) - (cpu->env.ttcr & TTMR_TP);
}
} else {
wait = (cpu->env.ttmr & TTMR_TP) - (cpu->env.ttcr & TTMR_TP);
}
- next = now +
muldiv64(wait, get_ticks_per_sec(), TIMER_FREQ)
;
+ next = now +
(uint64_t)wait * TIMER_PERIOD
;
timer_mod(cpu->env.timer, next);
}
timer_mod(cpu->env.timer, next);
}