From: Phil Dennis-Jordan <lists@philjordan.eu>
To: edk2-devel-01 <edk2-devel@lists.01.org>
Subject: Re: [PATCH v2 0/3] OvmfPkg/QemuVideoDxe: Add VMWare SVGA2 framebuffer support
Date: Mon, 3 Apr 2017 10:48:39 +1200 [thread overview]
Message-ID: <CAGCz3vt-StwbUNA2K+zHL3M5PiBt8F_fOKmbJXRFA_vbw+Bqsg@mail.gmail.com> (raw)
In-Reply-To: <1491173097-37305-1-git-send-email-lists@philjordan.eu>
Looks like I missed off the branch link, sorry:
https://github.com/pmj/edk2/commits/ovmf_vmware_svga2_v2
On Mon, Apr 3, 2017 at 10:44 AM, Phil Dennis-Jordan <lists@philjordan.eu> wrote:
> This extends the QemuVideoDxe driver to support the VMWare SVGA2 display
> device implemented by Qemu. Drivers for this device exist for guest OSes
> which do not support Qemu's other display adapters, so supporting it in
> OVMF is useful in conjunction with those OSes.
>
> I've tried to follow the existing pattern for device-specific code in
> OVMF's QemuVideoDxe driver as much as possible, with a minimum of
> additional code.
>
> For the functionality this driver uses, 2 I/O ports are used with
> 32-bit wide reads and writes. Unfortunately, one of them is not 32-bit
> aligned. This is fine as far as x86/x86-64 is concerned, but neither
> EDK2's IoLib nor other platforms support such an access pattern.
> This issue was already encountered/discussed on the edk2-devel list 4
> years ago: http://edk2-devel.narkive.com/bwH3r0us/unaligned-i-o
> I've therefore added UnalignedIoWrite/Read32() helper functions for
> Ia32/X64, which I've based on IoLib's aligned ones.
>
> v2:
> - Unaligned I/O helpers are now in a separate commit. [Laszlo]
> - New header file with only essential device constants [Laszlo]
> - ArmVirtPkg build failures fixed [Laszlo]
> - Code formatting improvements in main driver code.
>
> Phil Dennis-Jordan (3):
> OvmfPkg: VMWare SVGA2 display device register definitions
> OvmfPkg/QemuVideoDxe: Helper functions for unaligned port I/O.
> OvmfPkg/QemuVideoDxe: VMWare SVGA II device support.
>
> OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf | 6 ++
> OvmfPkg/Include/IndustryStandard/VMWareSVGA2.h | 102 +++++++++++++++++++
> OvmfPkg/QemuVideoDxe/Qemu.h | 37 +++++++
> OvmfPkg/QemuVideoDxe/UnalignedIoInternal.h | 59 +++++++++++
> OvmfPkg/QemuVideoDxe/Driver.c | 76 ++++++++++++++
> OvmfPkg/QemuVideoDxe/Gop.c | 74 +++++++++++++-
> OvmfPkg/QemuVideoDxe/Initialize.c | 107 ++++++++++++++++++++
> OvmfPkg/QemuVideoDxe/UnalignedIoGcc.c | 69 +++++++++++++
> OvmfPkg/QemuVideoDxe/UnalignedIoIcc.c | 79 +++++++++++++++
> OvmfPkg/QemuVideoDxe/UnalignedIoMsc.c | 81 +++++++++++++++
> OvmfPkg/QemuVideoDxe/UnalignedIoUnsupported.c | 65 ++++++++++++
> 11 files changed, 754 insertions(+), 1 deletion(-)
> create mode 100644 OvmfPkg/Include/IndustryStandard/VMWareSVGA2.h
> create mode 100644 OvmfPkg/QemuVideoDxe/UnalignedIoInternal.h
> create mode 100644 OvmfPkg/QemuVideoDxe/UnalignedIoGcc.c
> create mode 100644 OvmfPkg/QemuVideoDxe/UnalignedIoIcc.c
> create mode 100644 OvmfPkg/QemuVideoDxe/UnalignedIoMsc.c
> create mode 100644 OvmfPkg/QemuVideoDxe/UnalignedIoUnsupported.c
>
> --
> 2.3.2 (Apple Git-55)
>
prev parent reply other threads:[~2017-04-02 22:49 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-04-02 22:44 [PATCH v2 0/3] OvmfPkg/QemuVideoDxe: Add VMWare SVGA2 framebuffer support Phil Dennis-Jordan
2017-04-02 22:44 ` [PATCH v2 1/3] OvmfPkg: VMWare SVGA2 display device register definitions Phil Dennis-Jordan
2017-04-03 23:17 ` Jordan Justen
2017-04-04 10:40 ` Laszlo Ersek
2017-04-04 7:54 ` Laszlo Ersek
2017-04-02 22:44 ` [PATCH v2 2/3] OvmfPkg/QemuVideoDxe: Helper functions for unaligned port I/O Phil Dennis-Jordan
2017-04-04 8:19 ` Laszlo Ersek
2017-04-05 9:16 ` Phil Dennis-Jordan
2017-04-05 9:37 ` Laszlo Ersek
2017-04-02 22:44 ` [PATCH v2 3/3] OvmfPkg/QemuVideoDxe: VMWare SVGA II device support Phil Dennis-Jordan
2017-04-04 10:13 ` Laszlo Ersek
2017-04-02 22:48 ` Phil Dennis-Jordan [this message]
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=CAGCz3vt-StwbUNA2K+zHL3M5PiBt8F_fOKmbJXRFA_vbw+Bqsg@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