qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Gerd Hoffmann <kraxel@redhat.com>
To: qemu-devel@nongnu.org
Cc: Gerd Hoffmann <kraxel@redhat.com>, agraf@suse.de, lcapitulino@redhat.com
Subject: [Qemu-devel] [FOR 0.12 PATCH v4 22/22] Set default console to virtio on S390x
Date: Tue,  8 Dec 2009 13:11:54 +0100	[thread overview]
Message-ID: <1260274314-2906-23-git-send-email-kraxel@redhat.com> (raw)
In-Reply-To: <1260274314-2906-1-git-send-email-kraxel@redhat.com>

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.

Add flags to QEMUMachine to indicate which kind of default devices make
sense for the machine in question.  Use it for S390x: enable virtcon,
disable serial, parallel and vga.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
---
 hw/boards.h      |    4 ++++
 hw/s390-virtio.c |    4 ++++
 vl.c             |   19 ++++++++++++++++++-
 3 files changed, 26 insertions(+), 1 deletions(-)

diff --git a/hw/boards.h b/hw/boards.h
index 7a0f20f..8fe0fbc 100644
--- a/hw/boards.h
+++ b/hw/boards.h
@@ -19,6 +19,10 @@ typedef struct QEMUMachine {
     QEMUMachineInitFunc *init;
     int use_scsi;
     int max_cpus;
+    int no_serial:1,
+        no_parallel:1,
+        use_virtcon:1,
+        no_vga:1;
     int is_default;
     GlobalProperty *compat_props;
     struct QEMUMachine *next;
diff --git a/hw/s390-virtio.c b/hw/s390-virtio.c
index cc21ee6..51c032a 100644
--- a/hw/s390-virtio.c
+++ b/hw/s390-virtio.c
@@ -243,6 +243,10 @@ static QEMUMachine s390_machine = {
     .alias = "s390",
     .desc = "VirtIO based S390 machine",
     .init = s390_init,
+    .no_serial = 1,
+    .no_parallel = 1,
+    .use_virtcon = 1.
+    .no_vga = 1,
     .max_cpus = 255,
     .is_default = 1,
 };
diff --git a/vl.c b/vl.c
index b4138be..d028931 100644
--- a/vl.c
+++ b/vl.c
@@ -270,7 +270,7 @@ static void *boot_set_opaque;
 
 static int default_serial = 1;
 static int default_parallel = 1;
-static int default_virtcon = 0;
+static int default_virtcon = 1;
 static int default_monitor = 1;
 static int default_vga = 1;
 static int default_drive = 1;
@@ -5629,14 +5629,31 @@ int main(int argc, char **argv, char **envp)
 
     qemu_opts_foreach(&qemu_device_opts, default_driver_check, NULL, 0);
 
+    if (machine->no_serial) {
+        default_serial = 0;
+    }
+    if (machine->no_parallel) {
+        default_parallel = 0;
+    }
+    if (!machine->use_virtcon) {
+        default_virtcon = 0;
+    }
+    if (machine->no_vga) {
+        default_vga = 0;
+    }
+
     if (display_type == DT_NOGRAPHIC) {
         if (default_parallel)
             add_device_config(DEV_PARALLEL, "null");
         if (default_serial && default_monitor) {
             add_device_config(DEV_SERIAL, "mon:stdio");
+        } else if (default_virtcon && default_monitor) {
+            add_device_config(DEV_VIRTCON, "mon:stdio");
         } else {
             if (default_serial)
                 add_device_config(DEV_SERIAL, "stdio");
+            if (default_virtcon)
+                add_device_config(DEV_VIRTCON, "stdio");
             if (default_monitor)
                 monitor_parse("stdio", "readline");
         }
-- 
1.6.5.2

  parent reply	other threads:[~2009-12-08 12:12 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-12-08 12:11 [Qemu-devel] [FOR 0.12 PATCH v4 01/22] default devices: qdev integration Gerd Hoffmann
2009-12-08 12:11 ` [Qemu-devel] [FOR 0.12 PATCH v4 01/22] qdev: make compat stuff more generic Gerd Hoffmann
2009-12-08 12:11 ` [Qemu-devel] [FOR 0.12 PATCH v4 02/22] qdev: add command line option to set global defaults for properties Gerd Hoffmann
2009-12-08 12:11 ` [Qemu-devel] [FOR 0.12 PATCH v4 03/22] qdev: also match bus name for global properties Gerd Hoffmann
2009-12-09 16:14   ` [Qemu-devel] " Michael S. Tsirkin
2009-12-08 12:11 ` [Qemu-devel] [FOR 0.12 PATCH v4 04/22] chardev: make chardevs specified in config file work Gerd Hoffmann
2009-12-08 12:11 ` [Qemu-devel] [FOR 0.12 PATCH v4 05/22] Revert "monitor: Command-line flag to enable control mode" Gerd Hoffmann
2009-12-10  7:59   ` Markus Armbruster
2009-12-10  9:26     ` Gerd Hoffmann
2009-12-08 12:11 ` [Qemu-devel] [FOR 0.12 PATCH v4 06/22] Revert "Set default console to virtio on S390x" Gerd Hoffmann
2009-12-10  8:00   ` Markus Armbruster
2009-12-08 12:11 ` [Qemu-devel] [FOR 0.12 PATCH v4 07/22] chardev: move greeting into vc backend Gerd Hoffmann
2009-12-08 12:11 ` [Qemu-devel] [FOR 0.12 PATCH v4 08/22] vc: colorize chardev title line with blue background Gerd Hoffmann
2009-12-08 12:11 ` [Qemu-devel] [FOR 0.12 PATCH v4 09/22] default devices: core code & serial lines Gerd Hoffmann
2009-12-08 12:11 ` [Qemu-devel] [FOR 0.12 PATCH v4 10/22] default devices: parallel port Gerd Hoffmann
2009-12-08 12:11 ` [Qemu-devel] [FOR 0.12 PATCH v4 11/22] default devices: qemu monitor Gerd Hoffmann
2009-12-08 12:11 ` [Qemu-devel] [FOR 0.12 PATCH v4 12/22] zap serial_monitor_mux Gerd Hoffmann
2009-12-08 12:11 ` [Qemu-devel] [FOR 0.12 PATCH v4 13/22] default devices: vga adapter Gerd Hoffmann
2009-12-08 12:11 ` [Qemu-devel] [FOR 0.12 PATCH v4 14/22] default devices: add global cmd line option Gerd Hoffmann
2009-12-08 12:11 ` [Qemu-devel] [FOR 0.12 PATCH v4 15/22] default devices: network Gerd Hoffmann
2009-12-08 12:11 ` [Qemu-devel] [FOR 0.12 PATCH v4 16/22] default devices: drives Gerd Hoffmann
2009-12-08 12:11 ` [Qemu-devel] [FOR 0.12 PATCH v4 17/22] un-static qemu_chr_parse_compat() Gerd Hoffmann
2009-12-08 12:11 ` [Qemu-devel] [FOR 0.12 PATCH v4 18/22] rework -monitor handling, switch to QemuOpts Gerd Hoffmann
2009-12-08 12:11 ` [Qemu-devel] [FOR 0.12 PATCH v4 19/22] add new -mon switch Gerd Hoffmann
2009-12-08 12:11 ` [Qemu-devel] [FOR 0.12 PATCH v4 20/22] add -qmp convinience switch Gerd Hoffmann
2009-12-08 12:11 ` [Qemu-devel] [FOR 0.12 PATCH v4 21/22] default devices: virtio consoles Gerd Hoffmann
2009-12-10  8:37   ` Markus Armbruster
2009-12-08 12:11 ` Gerd Hoffmann [this message]
2009-12-10  8:36   ` [Qemu-devel] [FOR 0.12 PATCH v4 22/22] Set default console to virtio on S390x Markus Armbruster
2009-12-10  9:34     ` Gerd Hoffmann
2009-12-10  9:44       ` Markus Armbruster
2009-12-08 18:21 ` [Qemu-devel] Re: [FOR 0.12 PATCH v4 01/22] default devices: qdev integration Luiz Capitulino
2009-12-10  8:39 ` [Qemu-devel] " Markus Armbruster

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1260274314-2906-23-git-send-email-kraxel@redhat.com \
    --to=kraxel@redhat.com \
    --cc=agraf@suse.de \
    --cc=lcapitulino@redhat.com \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).