armv7m: Don't enforce use of kernel for qtest

Adopt error_report().

Signed-off-by: Andreas Färber <afaerber@suse.de>
This commit is contained in:
Andreas Färber 2013-07-29 18:36:59 +02:00
parent 4bd2f93ff9
commit 5633b90ad4

View File

@ -11,6 +11,8 @@
#include "hw/arm/arm.h" #include "hw/arm/arm.h"
#include "hw/loader.h" #include "hw/loader.h"
#include "elf.h" #include "elf.h"
#include "sysemu/qtest.h"
#include "qemu/error-report.h"
/* Bitbanded IO. Each word corresponds to a single bit. */ /* Bitbanded IO. Each word corresponds to a single bit. */
@ -232,11 +234,12 @@ qemu_irq *armv7m_init(MemoryRegion *address_space_mem,
big_endian = 0; big_endian = 0;
#endif #endif
if (!kernel_filename) { if (!kernel_filename && !qtest_enabled()) {
fprintf(stderr, "Guest image must be specified (using -kernel)\n"); fprintf(stderr, "Guest image must be specified (using -kernel)\n");
exit(1); exit(1);
} }
if (kernel_filename) {
image_size = load_elf(kernel_filename, NULL, NULL, &entry, &lowaddr, image_size = load_elf(kernel_filename, NULL, NULL, &entry, &lowaddr,
NULL, big_endian, ELF_MACHINE, 1); NULL, big_endian, ELF_MACHINE, 1);
if (image_size < 0) { if (image_size < 0) {
@ -244,10 +247,10 @@ qemu_irq *armv7m_init(MemoryRegion *address_space_mem,
lowaddr = 0; lowaddr = 0;
} }
if (image_size < 0) { if (image_size < 0) {
fprintf(stderr, "qemu: could not load kernel '%s'\n", error_report("Could not load kernel '%s'", kernel_filename);
kernel_filename);
exit(1); exit(1);
} }
}
/* Hack to map an additional page of ram at the top of the address /* Hack to map an additional page of ram at the top of the address
space. This stops qemu complaining about executing code outside RAM space. This stops qemu complaining about executing code outside RAM