public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: Ard Biesheuvel <ard.biesheuvel@linaro.org>
To: Jordan Justen <jordan.l.justen@intel.com>
Cc: Laszlo Ersek <lersek@redhat.com>,
	edk2-devel-01 <edk2-devel@lists.01.org>
Subject: Re: [PATCH 00/11] OvmfPkg, ArmVirtPkg: GOP driver for the VirtIo GPU (virtio-gpu-pci)
Date: Thu, 1 Sep 2016 21:23:27 +0100	[thread overview]
Message-ID: <CAKv+Gu88k8-ny73XFcBHVD+J9h-Lx-uEqy5VoMnBL5=ZEnH0KA@mail.gmail.com> (raw)
In-Reply-To: <147275957055.21562.7750188759462698423@jljusten-ivb>

On 1 September 2016 at 20:52, Jordan Justen <jordan.l.justen@intel.com> wrote:
> On 2016-09-01 11:46:04, Laszlo Ersek wrote:
>> On 09/01/16 20:03, Jordan Justen wrote:
>>
>> > I think there would be value to have a non-VGA device that could still
>> > configure a simple framebuffer. VGA does bring a fair amount of other
>> > baggage.
>>
>> Ah, I see your point. You distinguish "VGA" from "non-VGA device with
>> framebuffer".
>>
>> For this discussion however, this distinction makes no difference. The
>> suggested "non-VGA device with framebuffer" would be broken exactly the
>> same way. In other words, it's not the "other baggage" that is broken,
>> it is the framebuffer.
>>
>
> This is only focusing on the current ARM issue. I'm just pointing out
> that I think virtio gpu without VGA, but with a framebuffer could be
> useful on IA32/X64 as well.
>
> 1. You don't have to deal with the PCI bus
>
> 2. The OS re-enumerating the PCI bus would not break the framebuffer
>

How does adding a framebuffer to virtio-gpu solve any of that?
virtio-gpu is a PCI device as well

> Is there no chance that ARM KVM might someday also be able to support
> a framebuffer?
>

There are workarounds imaginable, but none of them are feasible in
terms. A new revision of the architecture may address this, but that
will take years to turn up in real hardware.

> Obviously this is not too important for IA32/X64 OVMF, because we have
> reasonable alternatives. But, it seems like virtio gpu could be a
> significantly better option for IA32/X64 OVMF if an optional
> framebuffer was possible.
>

IIUC, not having a linear framebuffer was one of the design goals,
since it is essentially a layering violation in the virtio stack.
virtio-gpu is strictly ring based, like other virtio devices.

If you want a framebuffer, you should use virtio-vga. Adding a
framebuffer to virtio-gpu is a step back rather than a step forward.

Also, the loader->OS handover already suffers from the issues you
mention, since the PCI reconfiguration breaks GOP on almost every
platform. The reason that it is less of a concern on ARM is that most
systems use UART as the primary console.


  reply	other threads:[~2016-09-01 20:23 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-08-19 12:49 [PATCH 00/11] OvmfPkg, ArmVirtPkg: GOP driver for the VirtIo GPU (virtio-gpu-pci) Laszlo Ersek
2016-08-19 12:49 ` [PATCH 01/11] OvmfPkg/QemuVideoDxe: don't incorrectly bind virtio-gpu-pci Laszlo Ersek
2016-08-19 12:49 ` [PATCH 02/11] OvmfPkg/Virtio10Dxe: don't bind virtio-vga Laszlo Ersek
2016-08-19 12:49 ` [PATCH 03/11] OvmfPkg/PlatformBootManagerLib: relax device class requirement for ConOut Laszlo Ersek
2016-08-19 12:49 ` [PATCH 04/11] OvmfPkg/IndustryStandard: add type definitions for the virtio GPU device Laszlo Ersek
2016-08-19 12:49 ` [PATCH 05/11] OvmfPkg/VirtioGpuDxe: introduce with Component Name 2 and Driver Binding Laszlo Ersek
2016-08-19 12:49 ` [PATCH 06/11] OvmfPkg: include VirtioGpuDxe in the platform DSC/FDF files Laszlo Ersek
2016-08-19 12:49 ` [PATCH 07/11] ArmVirtPkg/ArmVirtQemu: " Laszlo Ersek
2016-08-19 13:14   ` Ard Biesheuvel
2016-08-19 12:49 ` [PATCH 08/11] OvmfPkg/VirtioGpuDxe: initialize and tear down VirtIo GPU device Laszlo Ersek
2016-08-19 12:49 ` [PATCH 09/11] OvmfPkg/VirtioGpuDxe: provide functions for sending VirtIo GPU commands Laszlo Ersek
2016-08-19 12:49 ` [PATCH 10/11] OvmfPkg/VirtioGpuDxe: implement EFI_GRAPHICS_OUTPUT_PROTOCOL Laszlo Ersek
2016-08-19 12:49 ` [PATCH 11/11] ArmVirtPkg: remove PcdKludgeMapPciMmioAsCached Laszlo Ersek
2016-08-19 13:16   ` Ard Biesheuvel
2016-08-19 13:06 ` [PATCH 00/11] OvmfPkg, ArmVirtPkg: GOP driver for the VirtIo GPU (virtio-gpu-pci) Ard Biesheuvel
2016-08-19 14:25   ` Laszlo Ersek
2016-08-31 20:43     ` Jordan Justen
2016-09-01  7:44       ` Ard Biesheuvel
2016-09-01 16:48         ` Laszlo Ersek
2016-09-01 16:29       ` Laszlo Ersek
2016-09-01 18:03         ` Jordan Justen
2016-09-01 18:46           ` Laszlo Ersek
2016-09-01 19:52             ` Jordan Justen
2016-09-01 20:23               ` Ard Biesheuvel [this message]
2016-09-01 20:26                 ` Ard Biesheuvel
2016-09-01 20:52                 ` Jordan Justen
2016-09-01 20:44               ` Laszlo Ersek
2016-09-05 14:17               ` Gerd Hoffmann
2016-08-30 15:07 ` Laszlo Ersek
2016-09-01 20:32 ` Jordan Justen
2016-09-01 21:07   ` Laszlo Ersek
2016-09-01 22:02 ` Laszlo Ersek
     [not found]   ` <57CD6463.90903@suse.de>
2016-09-05 12:56     ` Laszlo Ersek
     [not found]       ` <57CD6C25.7000406@suse.de>
2016-09-05 13:17         ` Laszlo Ersek

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-list 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='CAKv+Gu88k8-ny73XFcBHVD+J9h-Lx-uEqy5VoMnBL5=ZEnH0KA@mail.gmail.com' \
    --to=devel@edk2.groups.io \
    /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