All of lore.kernel.org
 help / color / mirror / Atom feed
From: Eduardo Habkost <ehabkost@redhat.com>
To: Sebastian Bauer <mail@sebastianbauer.info>
Cc: Gerd Hoffmann <kraxel@redhat.com>,
	qemu-devel@nongnu.org, Paolo Bonzini <pbonzini@redhat.com>,
	Alexander Graf <agraf@suse.de>,
	Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
	Aleksandar Markovic <aleksandar.markovic@mips.com>,
	Aurelien Jarno <aurelien@aurel32.net>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	David Gibson <david@gibson.dropbear.id.au>,
	BALATON Zoltan <balaton@eik.bme.hu>,
	qemu-ppc@nongnu.org, Richard Henderson <rth@twiddle.net>
Subject: Re: [Qemu-devel] [PATCH] vga: make stdvga the global default
Date: Wed, 4 Jul 2018 18:04:59 -0300	[thread overview]
Message-ID: <20180704210459.GH7451@localhost.localdomain> (raw)
In-Reply-To: <20180704205206.GG7451@localhost.localdomain>

On Wed, Jul 04, 2018 at 05:52:06PM -0300, Eduardo Habkost wrote:
> On Wed, Jul 04, 2018 at 10:21:19PM +0200, Sebastian Bauer wrote:
> > Am 2018-07-04 20:53, schrieb Eduardo Habkost:
> > > >      mc->kvm_type = spapr_kvm_type;
> > > >      machine_class_allow_dynamic_sysbus_dev(mc,
> > > > TYPE_SPAPR_PCI_HOST_BRIDGE);
> > > >      mc->pci_allow_0_address = true;
> > > > diff --git a/vl.c b/vl.c
> > > > index 16b913f9d5..e60bf2d6cd 100644
> > > > --- a/vl.c
> > > > +++ b/vl.c
> > > > @@ -4475,10 +4475,10 @@ int main(int argc, char **argv, char **envp)
> > > >      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";
> > > > +        } else if (vga_interface_available(VGA_CIRRUS)) {
> > > > +            vga_model = "cirrus";
> > > 
> > > If we don't make the machines above have default_display=NULL, we
> > > won't need this hunk, right?  In either case, I suggest doing
> > > this change on a separate patch.
> > 
> > An alternative would be to define the default always to VGA_STD if the
> > machine does not override it. This is from the observation that the majority
> > would chose std. Obviously, having default values always has pro and cons. I
> > would not consider it harmful here.
> 
> That would be my preference: not having any machine with
> default_display==NULL.  I just don't want to make this a
> requirement for fixing the current bug.
> 
> > 
> > Is there any configuration that includes VGA_CIRRUS but not VGA_STD?
> 
> Not sure, I'll check.

I couldn't find any:

    [VGA_STD] = {
        .opt_name = "std",
        .name = "standard VGA",
        .class_names = { "VGA", "isa-vga" },
    },
    [VGA_CIRRUS] = {
        .opt_name = "cirrus",
        .name = "Cirrus VGA",
        .class_names = { "cirrus-vga", "isa-cirrus-vga" },
    },


"VGA" enabled by CONFIG_VGA_PCI:
hw/display/vga-pci.c:    .name          = "VGA",
hw/display/Makefile.objs:common-obj-$(CONFIG_VGA_PCI) += vga-pci.o

"isa-vga" enabled by CONFIG_VGA_ISA:
hw/display/vga-isa.c:#define TYPE_ISA_VGA "isa-vga"
hw/display/vga-isa.c:    .name          = TYPE_ISA_VGA,
hw/display/Makefile.objs:common-obj-$(CONFIG_VGA_ISA) += vga-isa.o

"cirrus-vga" enabled by CONFIG_VGA_CIRRUS:
hw/display/cirrus_vga.c:#define TYPE_PCI_CIRRUS_VGA "cirrus-vga"
hw/display/cirrus_vga.c:    .name          = TYPE_PCI_CIRRUS_VGA,
hw/display/Makefile.objs:common-obj-$(CONFIG_VGA_CIRRUS) += cirrus_vga.o

"isa-cirrus-vga" enabled by CONFIG_VGA_CIRRUS:
hw/display/cirrus_vga.c:#define TYPE_ISA_CIRRUS_VGA "isa-cirrus-vga"
hw/display/cirrus_vga.c:    .name          = TYPE_ISA_CIRRUS_VGA,
hw/display/Makefile.objs:common-obj-$(CONFIG_VGA_CIRRUS) += cirrus_vga.o

Build configs:

$ git grep -E 'CONFIG_VGA_(ISA|PCI|CIRRUS)|pci.mak'

default-configs/pci.mak:CONFIG_VGA_PCI=y

* 'include pci.mak' below means VGA_STD is available

default-configs/alpha-softmmu.mak:include pci.mak
default-configs/alpha-softmmu.mak:CONFIG_VGA_CIRRUS=y

* VGA_CIRRUS & VGA_STD.

default-configs/arm-softmmu.mak:include pci.mak

* VGA_STD only.

default-configs/hppa-softmmu.mak:include pci.mak

* VGA_STD only.

default-configs/i386-softmmu.mak:include pci.mak
default-configs/i386-softmmu.mak:CONFIG_VGA_ISA=y
default-configs/i386-softmmu.mak:CONFIG_VGA_CIRRUS=y

* VGA_CIRRUS & VGA_STD.

default-configs/mips-softmmu-common.mak:include pci.mak
default-configs/mips-softmmu-common.mak:CONFIG_VGA_ISA=y
default-configs/mips-softmmu-common.mak:CONFIG_VGA_ISA_MM=y
default-configs/mips-softmmu-common.mak:CONFIG_VGA_CIRRUS=y

* VGA_CIRRUS & VGA_STD.

default-configs/ppc-softmmu.mak:include pci.mak
default-configs/ppc-softmmu.mak:CONFIG_VGA_CIRRUS=y

* VGA_CIRRUS & VGA_STD.

default-configs/ppcemb-softmmu.mak:include pci.mak

* VGA_STD only.

default-configs/sh4-softmmu.mak:include pci.mak

* VGA_STD only.

default-configs/sh4eb-softmmu.mak:include pci.mak

* VGA_STD only.

default-configs/sparc64-softmmu.mak:include pci.mak

* VGA_STD only.

default-configs/x86_64-softmmu.mak:include pci.mak
default-configs/x86_64-softmmu.mak:CONFIG_VGA_ISA=y
default-configs/x86_64-softmmu.mak:CONFIG_VGA_CIRRUS=y

* VGA_CIRRUS & VGA_STD.

roms/config.vga-bochs-display:CONFIG_VGA_PCI=y
roms/config.vga-cirrus:CONFIG_VGA_CIRRUS=y
roms/config.vga-cirrus:CONFIG_VGA_PCI=y
roms/config.vga-isavga:CONFIG_VGA_PCI=n
roms/config.vga-qxl:CONFIG_VGA_PCI=y
roms/config.vga-ramfb:CONFIG_VGA_PCI=n
roms/config.vga-stdvga:CONFIG_VGA_PCI=y
roms/config.vga-virtio:CONFIG_VGA_PCI=y
roms/config.vga-vmware:CONFIG_VGA_PCI=y

* I have no idea what this is, I guess this is not related to the
  QEMU build system at all.  :)

-- 
Eduardo

  reply	other threads:[~2018-07-04 21:05 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-07-04 11:28 [Qemu-devel] [PATCH] vga: make stdvga the global default Gerd Hoffmann
2018-07-04 18:34 ` Sebastian Bauer
2018-07-04 18:53 ` Eduardo Habkost
2018-07-04 20:21   ` Sebastian Bauer
2018-07-04 20:52     ` Eduardo Habkost
2018-07-04 21:04       ` Eduardo Habkost [this message]
2018-07-05  3:43         ` Sebastian Bauer
2018-07-05 13:12           ` Eduardo Habkost
2018-07-05 16:24             ` [Qemu-devel] [Qemu-ppc] " Mark Cave-Ayland
2018-07-05 16:31               ` Eduardo Habkost
2018-07-06  7:14               ` Gerd Hoffmann
2018-07-06  7:54                 ` Mark Cave-Ayland
2018-07-05  6:31         ` [Qemu-devel] " Gerd Hoffmann
2018-07-05  6:30   ` Gerd Hoffmann

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=20180704210459.GH7451@localhost.localdomain \
    --to=ehabkost@redhat.com \
    --cc=agraf@suse.de \
    --cc=aleksandar.markovic@mips.com \
    --cc=aurelien@aurel32.net \
    --cc=balaton@eik.bme.hu \
    --cc=david@gibson.dropbear.id.au \
    --cc=kraxel@redhat.com \
    --cc=mail@sebastianbauer.info \
    --cc=marcel.apfelbaum@gmail.com \
    --cc=mst@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=qemu-ppc@nongnu.org \
    --cc=rth@twiddle.net \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.