hw/arm/boot: Make user not specifying a kernel not an error

Typically ARM boards will have some kind of flash which might contain
a boot ROM; it's therefore a valid use case to provide only an
image for the boot ROM and not require QEMU's internal boot loader
at all. Remove the fatal error if -kernel isn't specified.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Andreas Färber <afaerber@suse.de>
hw/arm: Tidy up conditional calls to arm_load_kernel()

Now that arm_load_kernel() doesn't insist on a kernel filename
being present, we can remove some unnecessary conditionals
in board models.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Andreas Färber <afaerber@suse.de>
mips_mipssim: Silence BIOS loading warning for qtest

Reviewed-by: Aurelien Jarno <aurelien@aurel32.net>
Signed-off-by: Andreas Färber <afaerber@suse.de>
puv3: Turn puv3_load_kernel() into a no-op for qtest without -kernel

Replacing the assert() with more user-friendly error handling is left
for a follow-up.

Signed-off-by: Andreas Färber <afaerber@suse.de>
mainstone: Don't enforce use of -pflash for qtest

Simply skip flash setup for now.

Also drop useless debug output.

Signed-off-by: Andreas Färber <afaerber@suse.de>
gumstix: Don't enforce use of -pflash for qtest

Signed-off-by: Andreas Färber <afaerber@suse.de>
z2: Don't enforce use of -pflash for qtest

Signed-off-by: Andreas Färber <afaerber@suse.de>
palm: Don't enforce loading ROM or kernel for qtest

Signed-off-by: Andreas Färber <afaerber@suse.de>
omap_sx1: Don't enforce use of kernel or flash for qtest

Signed-off-by: Andreas Färber <afaerber@suse.de>
exynos4_boards: Silence lack of -smp 2 warning for qtest

Signed-off-by: Andreas Färber <afaerber@suse.de>
armv7m: Don't enforce use of kernel for qtest

Adopt error_report().

Signed-off-by: Andreas Färber <afaerber@suse.de>
axis_dev88: Don't enforce use of kernel for qtest

Reviewed-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
Signed-off-by: Andreas Färber <afaerber@suse.de>
mcf5208: Don't enforce use of kernel for qtest

Signed-off-by: Andreas Färber <afaerber@suse.de>
an5206: Don't enforce use of kernel for qtest

Signed-off-by: Andreas Färber <afaerber@suse.de>
milkymist: Suppress -kernel/-bios/-drive error for qtest

Acked-by: Michael Walle <michael@walle.cc>
Signed-off-by: Andreas Färber <afaerber@suse.de>
shix: Drop debug output

Reviewed-by: Aurelien Jarno <aurelien@aurel32.net>
Signed-off-by: Andreas Färber <afaerber@suse.de>
shix: Don't require firmware presence for qtest

Adopt error_report() while at it.

Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Reviewed-by: Aurelien Jarno <aurelien@aurel32.net>
Signed-off-by: Andreas Färber <afaerber@suse.de>
leon3: Don't enforce use of -bios with qtest

Signed-off-by: Andreas Färber <afaerber@suse.de>
qtest: Prepare QOM machine tests

Instantiate all [*] machines per target, so that they get a bit of test
coverage at all. This has proven helpful during QOM refactorings.

[*] ppcemb target contains some non-working non-embedded machines, and
ppc405 CPUs are not available there either.
i386 and x86_64 do not cover pc*-x.y or xenfv.

Signed-off-by: Andreas Färber <afaerber@suse.de>
milkymist-uart: Use Device::realize instead of SysBusDevice::init

Use of SysBusDevice::init is deprecated. Use Device::realize instead.

Also introduce TypeInfo::instance_init milkymist_uart_init().

Reported-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com>
Signed-off-by: Antony Pavlov <antonynpavlov@gmail.com>
Signed-off-by: Andreas Färber <afaerber@suse.de>