From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1NGt49-0004Ag-07 for qemu-devel@nongnu.org; Sat, 05 Dec 2009 06:44:45 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1NGt41-00045j-2c for qemu-devel@nongnu.org; Sat, 05 Dec 2009 06:44:42 -0500 Received: from [199.232.76.173] (port=49822 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NGt3z-000458-BF for qemu-devel@nongnu.org; Sat, 05 Dec 2009 06:44:36 -0500 Received: from cantor.suse.de ([195.135.220.2]:59405 helo=mx1.suse.de) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1NGt3y-0008GI-Ba for qemu-devel@nongnu.org; Sat, 05 Dec 2009 06:44:34 -0500 From: Alexander Graf Date: Sat, 5 Dec 2009 12:44:30 +0100 Message-Id: <1260013471-18691-11-git-send-email-agraf@suse.de> In-Reply-To: <1260013471-18691-1-git-send-email-agraf@suse.de> References: <1260013471-18691-1-git-send-email-agraf@suse.de> Subject: [Qemu-devel] [PATCH 10/11] Set default console to virtio on S390x List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: Carsten Otte , Aurelien Jarno All "normal" system emulation targets in qemu I'm aware of display output on either VGA or serial output. Our S390x virtio machine doesn't have such kind of legacy hardware. So instead we need to default to a virtio console. I'm not particularly proud of this patch. It would be a lot better to have something in the machine description that tells us about the default terminal. Signed-off-by: Alexander Graf --- vl.c | 26 ++++++++++++++++++++++++++ 1 files changed, 26 insertions(+), 0 deletions(-) diff --git a/vl.c b/vl.c index 1981e6e..09a0ec5 100644 --- a/vl.c +++ b/vl.c @@ -4711,6 +4711,20 @@ int main(int argc, char **argv, char **envp) cyls = heads = secs = 0; translation = BIOS_ATA_TRANSLATION_AUTO; +#ifdef TARGET_S390X + for(i = 0; i < MAX_SERIAL_PORTS; i++) + serial_devices[i] = NULL; + serial_device_index = 0; + + for(i = 0; i < MAX_PARALLEL_PORTS; i++) + parallel_devices[i] = NULL; + parallel_device_index = 0; + + virtio_consoles[0] = "mon:stdio"; + for(i = 1; i < MAX_VIRTIO_CONSOLES; i++) + virtio_consoles[i] = NULL; + virtio_console_index = 0; +#else serial_devices[0] = "vc:80Cx24C"; for(i = 1; i < MAX_SERIAL_PORTS; i++) serial_devices[i] = NULL; @@ -4724,6 +4738,7 @@ int main(int argc, char **argv, char **envp) for(i = 0; i < MAX_VIRTIO_CONSOLES; i++) virtio_consoles[i] = NULL; virtio_console_index = 0; +#endif monitor_devices[0] = "vc:80Cx24C"; monitor_flags[0] = MONITOR_IS_DEFAULT | MONITOR_USE_READLINE; @@ -5640,6 +5655,17 @@ int main(int argc, char **argv, char **envp) break; } } + for (i = 0; i < MAX_VIRTIO_CONSOLES; i++) { + const char *devname = virtio_consoles[i]; + if (devname && !strcmp(devname,"mon:stdio")) { + monitor_devices[0] = NULL; + break; + } else if (devname && !strcmp(devname,"stdio")) { + monitor_devices[0] = NULL; + virtio_consoles[i] = "mon:stdio"; + break; + } + } } if (nb_numa_nodes > 0) { -- 1.6.0.2