diff options
author | Philippe Mathieu-Daudé | 2020-10-12 11:58:04 +0200 |
---|---|---|
committer | Philippe Mathieu-Daudé | 2020-10-17 13:59:40 +0200 |
commit | 8a6359f937632d4b47bfaf0640c5acbf73736521 (patch) | |
tree | 584694b6294e8bf04c1c6112e0badfd9422d4048 /target/mips | |
parent | hw/mips/cps: Do not allow use without input clock (diff) | |
download | qemu-8a6359f937632d4b47bfaf0640c5acbf73736521.tar.gz qemu-8a6359f937632d4b47bfaf0640c5acbf73736521.tar.xz qemu-8a6359f937632d4b47bfaf0640c5acbf73736521.zip |
target/mips/cpu: Display warning when CPU is used without input clock
All our QOM users provides an input clock. In order to avoid
avoid future machines added without clock, display a warning.
User-mode emulation use the CP0 timer with the RDHWR instruction
(see commit cdfcad788394) so keep using the fixed 200 MHz clock
without diplaying any warning. Only display it in system-mode
emulation.
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Message-Id: <20201012095804.3335117-22-f4bug@amsat.org>
Diffstat (limited to 'target/mips')
-rw-r--r-- | target/mips/cpu.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/target/mips/cpu.c b/target/mips/cpu.c index 33a9ed5c24..76d50b00b4 100644 --- a/target/mips/cpu.c +++ b/target/mips/cpu.c @@ -19,12 +19,14 @@ */ #include "qemu/osdep.h" +#include "qemu/cutils.h" #include "qapi/error.h" #include "cpu.h" #include "internal.h" #include "kvm_mips.h" #include "qemu/module.h" #include "sysemu/kvm.h" +#include "sysemu/qtest.h" #include "exec/exec-all.h" #include "hw/qdev-properties.h" #include "hw/qdev-clock.h" @@ -158,6 +160,14 @@ static void mips_cpu_realizefn(DeviceState *dev, Error **errp) Error *local_err = NULL; if (!clock_get(cpu->clock)) { +#ifndef CONFIG_USER_ONLY + if (!qtest_enabled()) { + g_autofree char *cpu_freq_str = freq_to_str(CPU_FREQ_HZ_DEFAULT); + + warn_report("CPU input clock is not connected to any output clock, " + "using default frequency of %s.", cpu_freq_str); + } +#endif /* Initialize the frequency in case the clock remains unconnected. */ clock_set_hz(cpu->clock, CPU_FREQ_HZ_DEFAULT); } |