qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH 0/2] Add -vga help
@ 2019-04-12 15:27 Marc-André Lureau
  2019-04-12 15:27 ` Marc-André Lureau
                   ` (3 more replies)
  0 siblings, 4 replies; 11+ messages in thread
From: Marc-André Lureau @ 2019-04-12 15:27 UTC (permalink / raw)
  To: qemu-devel; +Cc: Paolo Bonzini, armbru, kraxel, Marc-André Lureau

Hi,

SSIA, see patches.

Marc-André Lureau (2):
  vl: constify VGAInterfaceInfo
  vl: add -vga help support

 vl.c | 46 ++++++++++++++++++++++++++++++++++------------
 1 file changed, 34 insertions(+), 12 deletions(-)

-- 
2.21.0.313.ge35b8cb8e2

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [Qemu-devel] [PATCH 0/2] Add -vga help
  2019-04-12 15:27 [Qemu-devel] [PATCH 0/2] Add -vga help Marc-André Lureau
@ 2019-04-12 15:27 ` Marc-André Lureau
  2019-04-12 15:27 ` [Qemu-devel] [PATCH 1/2] vl: constify VGAInterfaceInfo Marc-André Lureau
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 11+ messages in thread
From: Marc-André Lureau @ 2019-04-12 15:27 UTC (permalink / raw)
  To: qemu-devel; +Cc: Paolo Bonzini, armbru, Marc-André Lureau, kraxel

Hi,

SSIA, see patches.

Marc-André Lureau (2):
  vl: constify VGAInterfaceInfo
  vl: add -vga help support

 vl.c | 46 ++++++++++++++++++++++++++++++++++------------
 1 file changed, 34 insertions(+), 12 deletions(-)

-- 
2.21.0.313.ge35b8cb8e2



^ permalink raw reply	[flat|nested] 11+ messages in thread

* [Qemu-devel] [PATCH 1/2] vl: constify VGAInterfaceInfo
  2019-04-12 15:27 [Qemu-devel] [PATCH 0/2] Add -vga help Marc-André Lureau
  2019-04-12 15:27 ` Marc-André Lureau
@ 2019-04-12 15:27 ` Marc-André Lureau
  2019-04-12 15:27   ` Marc-André Lureau
  2019-04-12 16:14   ` Philippe Mathieu-Daudé
  2019-04-12 15:27 ` [Qemu-devel] [PATCH 2/2] vl: add -vga help support Marc-André Lureau
  2019-05-07  7:49 ` [Qemu-devel] [PATCH 0/2] Add -vga help Gerd Hoffmann
  3 siblings, 2 replies; 11+ messages in thread
From: Marc-André Lureau @ 2019-04-12 15:27 UTC (permalink / raw)
  To: qemu-devel; +Cc: Paolo Bonzini, armbru, kraxel, Marc-André Lureau

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
---
 vl.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/vl.c b/vl.c
index c696ad2a13..0a96232e95 100644
--- a/vl.c
+++ b/vl.c
@@ -2026,7 +2026,7 @@ typedef struct VGAInterfaceInfo {
     const char *class_names[2];
 } VGAInterfaceInfo;
 
-static VGAInterfaceInfo vga_interfaces[VGA_TYPE_MAX] = {
+static const VGAInterfaceInfo vga_interfaces[VGA_TYPE_MAX] = {
     [VGA_NONE] = {
         .opt_name = "none",
     },
@@ -2072,7 +2072,7 @@ static VGAInterfaceInfo vga_interfaces[VGA_TYPE_MAX] = {
 
 static bool vga_interface_available(VGAInterfaceType t)
 {
-    VGAInterfaceInfo *ti = &vga_interfaces[t];
+    const VGAInterfaceInfo *ti = &vga_interfaces[t];
 
     assert(t < VGA_TYPE_MAX);
     return !ti->class_names[0] ||
@@ -2087,7 +2087,7 @@ static void select_vgahw(const char *p)
 
     assert(vga_interface_type == VGA_NONE);
     for (t = 0; t < VGA_TYPE_MAX; t++) {
-        VGAInterfaceInfo *ti = &vga_interfaces[t];
+        const VGAInterfaceInfo *ti = &vga_interfaces[t];
         if (ti->opt_name && strstart(p, ti->opt_name, &opts)) {
             if (!vga_interface_available(t)) {
                 error_report("%s not available", ti->name);
-- 
2.21.0.313.ge35b8cb8e2

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [Qemu-devel] [PATCH 1/2] vl: constify VGAInterfaceInfo
  2019-04-12 15:27 ` [Qemu-devel] [PATCH 1/2] vl: constify VGAInterfaceInfo Marc-André Lureau
@ 2019-04-12 15:27   ` Marc-André Lureau
  2019-04-12 16:14   ` Philippe Mathieu-Daudé
  1 sibling, 0 replies; 11+ messages in thread
From: Marc-André Lureau @ 2019-04-12 15:27 UTC (permalink / raw)
  To: qemu-devel; +Cc: Paolo Bonzini, armbru, Marc-André Lureau, kraxel

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
---
 vl.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/vl.c b/vl.c
index c696ad2a13..0a96232e95 100644
--- a/vl.c
+++ b/vl.c
@@ -2026,7 +2026,7 @@ typedef struct VGAInterfaceInfo {
     const char *class_names[2];
 } VGAInterfaceInfo;
 
-static VGAInterfaceInfo vga_interfaces[VGA_TYPE_MAX] = {
+static const VGAInterfaceInfo vga_interfaces[VGA_TYPE_MAX] = {
     [VGA_NONE] = {
         .opt_name = "none",
     },
@@ -2072,7 +2072,7 @@ static VGAInterfaceInfo vga_interfaces[VGA_TYPE_MAX] = {
 
 static bool vga_interface_available(VGAInterfaceType t)
 {
-    VGAInterfaceInfo *ti = &vga_interfaces[t];
+    const VGAInterfaceInfo *ti = &vga_interfaces[t];
 
     assert(t < VGA_TYPE_MAX);
     return !ti->class_names[0] ||
@@ -2087,7 +2087,7 @@ static void select_vgahw(const char *p)
 
     assert(vga_interface_type == VGA_NONE);
     for (t = 0; t < VGA_TYPE_MAX; t++) {
-        VGAInterfaceInfo *ti = &vga_interfaces[t];
+        const VGAInterfaceInfo *ti = &vga_interfaces[t];
         if (ti->opt_name && strstart(p, ti->opt_name, &opts)) {
             if (!vga_interface_available(t)) {
                 error_report("%s not available", ti->name);
-- 
2.21.0.313.ge35b8cb8e2



^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [Qemu-devel] [PATCH 2/2] vl: add -vga help support
  2019-04-12 15:27 [Qemu-devel] [PATCH 0/2] Add -vga help Marc-André Lureau
  2019-04-12 15:27 ` Marc-André Lureau
  2019-04-12 15:27 ` [Qemu-devel] [PATCH 1/2] vl: constify VGAInterfaceInfo Marc-André Lureau
@ 2019-04-12 15:27 ` Marc-André Lureau
  2019-04-12 15:27   ` Marc-André Lureau
  2019-04-12 16:15   ` Philippe Mathieu-Daudé
  2019-05-07  7:49 ` [Qemu-devel] [PATCH 0/2] Add -vga help Gerd Hoffmann
  3 siblings, 2 replies; 11+ messages in thread
From: Marc-André Lureau @ 2019-04-12 15:27 UTC (permalink / raw)
  To: qemu-devel; +Cc: Paolo Bonzini, armbru, kraxel, Marc-André Lureau

Provide help output similar to other argument help handling:

$ qemu-system-x86_64 -vga help
none
std                  standard VGA (default)
cirrus               Cirrus VGA
vmware               VMWare SVGA
xenfb
qxl                  QXL VGA
virtio               Virtio VG

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
---
 vl.c | 40 +++++++++++++++++++++++++++++++---------
 1 file changed, 31 insertions(+), 9 deletions(-)

diff --git a/vl.c b/vl.c
index 0a96232e95..840c45c00f 100644
--- a/vl.c
+++ b/vl.c
@@ -2080,11 +2080,39 @@ static bool vga_interface_available(VGAInterfaceType t)
            object_class_by_name(ti->class_names[1]);
 }
 
-static void select_vgahw(const char *p)
+static const char *
+get_default_vga_model(const MachineClass *machine_class)
+{
+    if (machine_class->default_display) {
+        return machine_class->default_display;
+    } else if (vga_interface_available(VGA_CIRRUS)) {
+        return "cirrus";
+    } else if (vga_interface_available(VGA_STD)) {
+        return "std";
+    }
+
+    return NULL;
+}
+
+static void select_vgahw(const MachineClass *machine_class, const char *p)
 {
     const char *opts;
     int t;
 
+    if (g_str_equal(p, "help")) {
+        const char *def = get_default_vga_model(machine_class);
+
+        for (t = 0; t < VGA_TYPE_MAX; t++) {
+            const VGAInterfaceInfo *ti = &vga_interfaces[t];
+
+            if (vga_interface_available(t) && ti->opt_name) {
+                printf("%-20s %s%s\n", ti->opt_name, ti->name ?: "",
+                       g_str_equal(ti->opt_name, def) ? " (default)" : "");
+            }
+        }
+        exit(0);
+    }
+
     assert(vga_interface_type == VGA_NONE);
     for (t = 0; t < VGA_TYPE_MAX; t++) {
         const VGAInterfaceInfo *ti = &vga_interfaces[t];
@@ -4437,16 +4465,10 @@ int main(int argc, char **argv, char **envp)
 
     /* If no default VGA is requested, the default is "none".  */
     if (default_vga) {
-        if (machine_class->default_display) {
-            vga_model = machine_class->default_display;
-        } else if (vga_interface_available(VGA_CIRRUS)) {
-            vga_model = "cirrus";
-        } else if (vga_interface_available(VGA_STD)) {
-            vga_model = "std";
-        }
+        vga_model = get_default_vga_model(machine_class);
     }
     if (vga_model) {
-        select_vgahw(vga_model);
+        select_vgahw(machine_class, vga_model);
     }
 
     if (watchdog) {
-- 
2.21.0.313.ge35b8cb8e2

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [Qemu-devel] [PATCH 2/2] vl: add -vga help support
  2019-04-12 15:27 ` [Qemu-devel] [PATCH 2/2] vl: add -vga help support Marc-André Lureau
@ 2019-04-12 15:27   ` Marc-André Lureau
  2019-04-12 16:15   ` Philippe Mathieu-Daudé
  1 sibling, 0 replies; 11+ messages in thread
From: Marc-André Lureau @ 2019-04-12 15:27 UTC (permalink / raw)
  To: qemu-devel; +Cc: Paolo Bonzini, armbru, Marc-André Lureau, kraxel

Provide help output similar to other argument help handling:

$ qemu-system-x86_64 -vga help
none
std                  standard VGA (default)
cirrus               Cirrus VGA
vmware               VMWare SVGA
xenfb
qxl                  QXL VGA
virtio               Virtio VG

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
---
 vl.c | 40 +++++++++++++++++++++++++++++++---------
 1 file changed, 31 insertions(+), 9 deletions(-)

diff --git a/vl.c b/vl.c
index 0a96232e95..840c45c00f 100644
--- a/vl.c
+++ b/vl.c
@@ -2080,11 +2080,39 @@ static bool vga_interface_available(VGAInterfaceType t)
            object_class_by_name(ti->class_names[1]);
 }
 
-static void select_vgahw(const char *p)
+static const char *
+get_default_vga_model(const MachineClass *machine_class)
+{
+    if (machine_class->default_display) {
+        return machine_class->default_display;
+    } else if (vga_interface_available(VGA_CIRRUS)) {
+        return "cirrus";
+    } else if (vga_interface_available(VGA_STD)) {
+        return "std";
+    }
+
+    return NULL;
+}
+
+static void select_vgahw(const MachineClass *machine_class, const char *p)
 {
     const char *opts;
     int t;
 
+    if (g_str_equal(p, "help")) {
+        const char *def = get_default_vga_model(machine_class);
+
+        for (t = 0; t < VGA_TYPE_MAX; t++) {
+            const VGAInterfaceInfo *ti = &vga_interfaces[t];
+
+            if (vga_interface_available(t) && ti->opt_name) {
+                printf("%-20s %s%s\n", ti->opt_name, ti->name ?: "",
+                       g_str_equal(ti->opt_name, def) ? " (default)" : "");
+            }
+        }
+        exit(0);
+    }
+
     assert(vga_interface_type == VGA_NONE);
     for (t = 0; t < VGA_TYPE_MAX; t++) {
         const VGAInterfaceInfo *ti = &vga_interfaces[t];
@@ -4437,16 +4465,10 @@ int main(int argc, char **argv, char **envp)
 
     /* If no default VGA is requested, the default is "none".  */
     if (default_vga) {
-        if (machine_class->default_display) {
-            vga_model = machine_class->default_display;
-        } else if (vga_interface_available(VGA_CIRRUS)) {
-            vga_model = "cirrus";
-        } else if (vga_interface_available(VGA_STD)) {
-            vga_model = "std";
-        }
+        vga_model = get_default_vga_model(machine_class);
     }
     if (vga_model) {
-        select_vgahw(vga_model);
+        select_vgahw(machine_class, vga_model);
     }
 
     if (watchdog) {
-- 
2.21.0.313.ge35b8cb8e2



^ permalink raw reply related	[flat|nested] 11+ messages in thread

* Re: [Qemu-devel] [PATCH 1/2] vl: constify VGAInterfaceInfo
  2019-04-12 15:27 ` [Qemu-devel] [PATCH 1/2] vl: constify VGAInterfaceInfo Marc-André Lureau
  2019-04-12 15:27   ` Marc-André Lureau
@ 2019-04-12 16:14   ` Philippe Mathieu-Daudé
  2019-04-12 16:14     ` Philippe Mathieu-Daudé
  1 sibling, 1 reply; 11+ messages in thread
From: Philippe Mathieu-Daudé @ 2019-04-12 16:14 UTC (permalink / raw)
  To: Marc-André Lureau, qemu-devel; +Cc: Paolo Bonzini, armbru, kraxel

On 4/12/19 5:27 PM, Marc-André Lureau wrote:
> Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>

Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>

> ---
>  vl.c | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/vl.c b/vl.c
> index c696ad2a13..0a96232e95 100644
> --- a/vl.c
> +++ b/vl.c
> @@ -2026,7 +2026,7 @@ typedef struct VGAInterfaceInfo {
>      const char *class_names[2];
>  } VGAInterfaceInfo;
>  
> -static VGAInterfaceInfo vga_interfaces[VGA_TYPE_MAX] = {
> +static const VGAInterfaceInfo vga_interfaces[VGA_TYPE_MAX] = {
>      [VGA_NONE] = {
>          .opt_name = "none",
>      },
> @@ -2072,7 +2072,7 @@ static VGAInterfaceInfo vga_interfaces[VGA_TYPE_MAX] = {
>  
>  static bool vga_interface_available(VGAInterfaceType t)
>  {
> -    VGAInterfaceInfo *ti = &vga_interfaces[t];
> +    const VGAInterfaceInfo *ti = &vga_interfaces[t];
>  
>      assert(t < VGA_TYPE_MAX);
>      return !ti->class_names[0] ||
> @@ -2087,7 +2087,7 @@ static void select_vgahw(const char *p)
>  
>      assert(vga_interface_type == VGA_NONE);
>      for (t = 0; t < VGA_TYPE_MAX; t++) {
> -        VGAInterfaceInfo *ti = &vga_interfaces[t];
> +        const VGAInterfaceInfo *ti = &vga_interfaces[t];
>          if (ti->opt_name && strstart(p, ti->opt_name, &opts)) {
>              if (!vga_interface_available(t)) {
>                  error_report("%s not available", ti->name);
> 

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [Qemu-devel] [PATCH 1/2] vl: constify VGAInterfaceInfo
  2019-04-12 16:14   ` Philippe Mathieu-Daudé
@ 2019-04-12 16:14     ` Philippe Mathieu-Daudé
  0 siblings, 0 replies; 11+ messages in thread
From: Philippe Mathieu-Daudé @ 2019-04-12 16:14 UTC (permalink / raw)
  To: Marc-André Lureau, qemu-devel; +Cc: Paolo Bonzini, armbru, kraxel

On 4/12/19 5:27 PM, Marc-André Lureau wrote:
> Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>

Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>

> ---
>  vl.c | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/vl.c b/vl.c
> index c696ad2a13..0a96232e95 100644
> --- a/vl.c
> +++ b/vl.c
> @@ -2026,7 +2026,7 @@ typedef struct VGAInterfaceInfo {
>      const char *class_names[2];
>  } VGAInterfaceInfo;
>  
> -static VGAInterfaceInfo vga_interfaces[VGA_TYPE_MAX] = {
> +static const VGAInterfaceInfo vga_interfaces[VGA_TYPE_MAX] = {
>      [VGA_NONE] = {
>          .opt_name = "none",
>      },
> @@ -2072,7 +2072,7 @@ static VGAInterfaceInfo vga_interfaces[VGA_TYPE_MAX] = {
>  
>  static bool vga_interface_available(VGAInterfaceType t)
>  {
> -    VGAInterfaceInfo *ti = &vga_interfaces[t];
> +    const VGAInterfaceInfo *ti = &vga_interfaces[t];
>  
>      assert(t < VGA_TYPE_MAX);
>      return !ti->class_names[0] ||
> @@ -2087,7 +2087,7 @@ static void select_vgahw(const char *p)
>  
>      assert(vga_interface_type == VGA_NONE);
>      for (t = 0; t < VGA_TYPE_MAX; t++) {
> -        VGAInterfaceInfo *ti = &vga_interfaces[t];
> +        const VGAInterfaceInfo *ti = &vga_interfaces[t];
>          if (ti->opt_name && strstart(p, ti->opt_name, &opts)) {
>              if (!vga_interface_available(t)) {
>                  error_report("%s not available", ti->name);
> 


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [Qemu-devel] [PATCH 2/2] vl: add -vga help support
  2019-04-12 15:27 ` [Qemu-devel] [PATCH 2/2] vl: add -vga help support Marc-André Lureau
  2019-04-12 15:27   ` Marc-André Lureau
@ 2019-04-12 16:15   ` Philippe Mathieu-Daudé
  2019-04-12 16:15     ` Philippe Mathieu-Daudé
  1 sibling, 1 reply; 11+ messages in thread
From: Philippe Mathieu-Daudé @ 2019-04-12 16:15 UTC (permalink / raw)
  To: Marc-André Lureau, qemu-devel; +Cc: Paolo Bonzini, armbru, kraxel

On 4/12/19 5:27 PM, Marc-André Lureau wrote:
> Provide help output similar to other argument help handling:
> 
> $ qemu-system-x86_64 -vga help
> none
> std                  standard VGA (default)
> cirrus               Cirrus VGA
> vmware               VMWare SVGA
> xenfb
> qxl                  QXL VGA
> virtio               Virtio VG

Maybe you can show the previous behavior:

$ qemu-system-x86_64 -vga help
qemu-system-x86_64: unknown vga type: help

> 
> Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>

Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>

> ---
>  vl.c | 40 +++++++++++++++++++++++++++++++---------
>  1 file changed, 31 insertions(+), 9 deletions(-)
> 
> diff --git a/vl.c b/vl.c
> index 0a96232e95..840c45c00f 100644
> --- a/vl.c
> +++ b/vl.c
> @@ -2080,11 +2080,39 @@ static bool vga_interface_available(VGAInterfaceType t)
>             object_class_by_name(ti->class_names[1]);
>  }
>  
> -static void select_vgahw(const char *p)
> +static const char *
> +get_default_vga_model(const MachineClass *machine_class)
> +{
> +    if (machine_class->default_display) {
> +        return machine_class->default_display;
> +    } else if (vga_interface_available(VGA_CIRRUS)) {
> +        return "cirrus";
> +    } else if (vga_interface_available(VGA_STD)) {
> +        return "std";
> +    }
> +
> +    return NULL;
> +}
> +
> +static void select_vgahw(const MachineClass *machine_class, const char *p)
>  {
>      const char *opts;
>      int t;
>  
> +    if (g_str_equal(p, "help")) {
> +        const char *def = get_default_vga_model(machine_class);
> +
> +        for (t = 0; t < VGA_TYPE_MAX; t++) {
> +            const VGAInterfaceInfo *ti = &vga_interfaces[t];
> +
> +            if (vga_interface_available(t) && ti->opt_name) {
> +                printf("%-20s %s%s\n", ti->opt_name, ti->name ?: "",
> +                       g_str_equal(ti->opt_name, def) ? " (default)" : "");
> +            }
> +        }
> +        exit(0);
> +    }
> +
>      assert(vga_interface_type == VGA_NONE);
>      for (t = 0; t < VGA_TYPE_MAX; t++) {
>          const VGAInterfaceInfo *ti = &vga_interfaces[t];
> @@ -4437,16 +4465,10 @@ int main(int argc, char **argv, char **envp)
>  
>      /* If no default VGA is requested, the default is "none".  */
>      if (default_vga) {
> -        if (machine_class->default_display) {
> -            vga_model = machine_class->default_display;
> -        } else if (vga_interface_available(VGA_CIRRUS)) {
> -            vga_model = "cirrus";
> -        } else if (vga_interface_available(VGA_STD)) {
> -            vga_model = "std";
> -        }
> +        vga_model = get_default_vga_model(machine_class);
>      }
>      if (vga_model) {
> -        select_vgahw(vga_model);
> +        select_vgahw(machine_class, vga_model);
>      }
>  
>      if (watchdog) {
> 

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [Qemu-devel] [PATCH 2/2] vl: add -vga help support
  2019-04-12 16:15   ` Philippe Mathieu-Daudé
@ 2019-04-12 16:15     ` Philippe Mathieu-Daudé
  0 siblings, 0 replies; 11+ messages in thread
From: Philippe Mathieu-Daudé @ 2019-04-12 16:15 UTC (permalink / raw)
  To: Marc-André Lureau, qemu-devel; +Cc: Paolo Bonzini, armbru, kraxel

On 4/12/19 5:27 PM, Marc-André Lureau wrote:
> Provide help output similar to other argument help handling:
> 
> $ qemu-system-x86_64 -vga help
> none
> std                  standard VGA (default)
> cirrus               Cirrus VGA
> vmware               VMWare SVGA
> xenfb
> qxl                  QXL VGA
> virtio               Virtio VG

Maybe you can show the previous behavior:

$ qemu-system-x86_64 -vga help
qemu-system-x86_64: unknown vga type: help

> 
> Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>

Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>

> ---
>  vl.c | 40 +++++++++++++++++++++++++++++++---------
>  1 file changed, 31 insertions(+), 9 deletions(-)
> 
> diff --git a/vl.c b/vl.c
> index 0a96232e95..840c45c00f 100644
> --- a/vl.c
> +++ b/vl.c
> @@ -2080,11 +2080,39 @@ static bool vga_interface_available(VGAInterfaceType t)
>             object_class_by_name(ti->class_names[1]);
>  }
>  
> -static void select_vgahw(const char *p)
> +static const char *
> +get_default_vga_model(const MachineClass *machine_class)
> +{
> +    if (machine_class->default_display) {
> +        return machine_class->default_display;
> +    } else if (vga_interface_available(VGA_CIRRUS)) {
> +        return "cirrus";
> +    } else if (vga_interface_available(VGA_STD)) {
> +        return "std";
> +    }
> +
> +    return NULL;
> +}
> +
> +static void select_vgahw(const MachineClass *machine_class, const char *p)
>  {
>      const char *opts;
>      int t;
>  
> +    if (g_str_equal(p, "help")) {
> +        const char *def = get_default_vga_model(machine_class);
> +
> +        for (t = 0; t < VGA_TYPE_MAX; t++) {
> +            const VGAInterfaceInfo *ti = &vga_interfaces[t];
> +
> +            if (vga_interface_available(t) && ti->opt_name) {
> +                printf("%-20s %s%s\n", ti->opt_name, ti->name ?: "",
> +                       g_str_equal(ti->opt_name, def) ? " (default)" : "");
> +            }
> +        }
> +        exit(0);
> +    }
> +
>      assert(vga_interface_type == VGA_NONE);
>      for (t = 0; t < VGA_TYPE_MAX; t++) {
>          const VGAInterfaceInfo *ti = &vga_interfaces[t];
> @@ -4437,16 +4465,10 @@ int main(int argc, char **argv, char **envp)
>  
>      /* If no default VGA is requested, the default is "none".  */
>      if (default_vga) {
> -        if (machine_class->default_display) {
> -            vga_model = machine_class->default_display;
> -        } else if (vga_interface_available(VGA_CIRRUS)) {
> -            vga_model = "cirrus";
> -        } else if (vga_interface_available(VGA_STD)) {
> -            vga_model = "std";
> -        }
> +        vga_model = get_default_vga_model(machine_class);
>      }
>      if (vga_model) {
> -        select_vgahw(vga_model);
> +        select_vgahw(machine_class, vga_model);
>      }
>  
>      if (watchdog) {
> 


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [Qemu-devel] [PATCH 0/2] Add -vga help
  2019-04-12 15:27 [Qemu-devel] [PATCH 0/2] Add -vga help Marc-André Lureau
                   ` (2 preceding siblings ...)
  2019-04-12 15:27 ` [Qemu-devel] [PATCH 2/2] vl: add -vga help support Marc-André Lureau
@ 2019-05-07  7:49 ` Gerd Hoffmann
  3 siblings, 0 replies; 11+ messages in thread
From: Gerd Hoffmann @ 2019-05-07  7:49 UTC (permalink / raw)
  To: Marc-André Lureau; +Cc: Paolo Bonzini, qemu-devel, armbru

On Fri, Apr 12, 2019 at 05:27:11PM +0200, Marc-André Lureau wrote:
> Hi,
> 
> SSIA, see patches.

Series added to vga queue.

thanks,
  Gerd



^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2019-05-07  7:50 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-04-12 15:27 [Qemu-devel] [PATCH 0/2] Add -vga help Marc-André Lureau
2019-04-12 15:27 ` Marc-André Lureau
2019-04-12 15:27 ` [Qemu-devel] [PATCH 1/2] vl: constify VGAInterfaceInfo Marc-André Lureau
2019-04-12 15:27   ` Marc-André Lureau
2019-04-12 16:14   ` Philippe Mathieu-Daudé
2019-04-12 16:14     ` Philippe Mathieu-Daudé
2019-04-12 15:27 ` [Qemu-devel] [PATCH 2/2] vl: add -vga help support Marc-André Lureau
2019-04-12 15:27   ` Marc-André Lureau
2019-04-12 16:15   ` Philippe Mathieu-Daudé
2019-04-12 16:15     ` Philippe Mathieu-Daudé
2019-05-07  7:49 ` [Qemu-devel] [PATCH 0/2] Add -vga help Gerd Hoffmann

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).