From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=59.124.61.242; helo=synology.com; envelope-from=yuchenlin@synology.com; receiver=edk2-devel@lists.01.org Received: from synology.com (synology.com [59.124.61.242]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 8102221189FBF for ; Thu, 1 Nov 2018 20:24:18 -0700 (PDT) From: yuchenlin@synology.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=synology.com; s=123; t=1541129055; bh=V6HAVK4HQ5PUdmZSYjWZ3qFjsWxxuf/4MT98Tcq0q9c=; h=From:To:Cc:Subject:Date; b=K5rOdfmub6HrXBUl6+nzzdHPo7MIMXNLhR+jvEDvOy3W5g/rIsAEDVI51DDNXBLNf TSVa3yYJES+ydzaal+IkwE4TrgG2DHI1N5Ize6pxFKc0mFMUdW6y2s+C+9JB0LCsJx JMmn67JhsnPvrBJVssIq0K2YwRZNARjrXuctolPQ= To: edk2-devel@lists.01.org Cc: jordan.l.justen@intel.com, lersek@redhat.com, ard.biesheuvel@linaro.org, anthony.perard@citrix.com, julien.grall@linaro.org, phil@philjordan.eu, kraxel@redhat.com, philmd@redhat.com, yuchenlin Date: Fri, 2 Nov 2018 11:23:57 +0800 Message-Id: <20181102032402.19686-1-yuchenlin@synology.com> X-Synology-MCP-Status: no X-Synology-Spam-Flag: no X-Synology-Spam-Status: score=0, required 6, WHITELIST_FROM_ADDRESS 0 X-Synology-Virus-Status: no Subject: [PATCH v2 0/5] OvmfPkg: simply use the Bochs interface for vmsvga X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Nov 2018 03:24:18 -0000 From: yuchenlin In this series, replace the original vmsvga driver to Bochs interface. Simply revert vmsvga driver implementation. After it, use Bochs interface for initializing vmsvga. Because of the PCI BARs difference between std vga and vmsvga. We can not simply recognize the "QEMU VMWare SVGA" as the QEMU_VIDEO_BOCHS_MMIO variant. BAR | std vga | vmsvga --------------------------------- 0 | Framebuffer | I/O space 1 | Reserved | Framebuffer 2 | MMIO | FIFO To overcome this problem, we remain variant QEMU_VIDEO_VMWARE_SVGA, and use it for: (1) Get framebuffer from correct PCI BAR (2) Prevent using BAR2 for MMIO We have tested on qemu before and after commit 104bd1dc70 and all worked. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: yuchenlin Changelog: v1 -> v2 * use 'else' clause (Thanks Philippe). * add more comment in revert patches (Thanks Philippe). * reorder the revert patches, we should revert the last commit first. * use correct framebuffer to ClearScreen. * revert VMWare svga definitions. yuchenlin (5): Revert "OvmfPkg/QemuVideoDxe: list "UnalignedIoInternal.h" in the INF file" Revert "OvmfPkg/QemuVideoDxe: VMWare SVGA device support" Revert "OvmfPkg/QemuVideoDxe: Helper functions for unaligned port I/O." Revert "OvmfPkg: VMWare SVGA display device register definitions" OvmfPkg: simply use the Bochs interface for vmsvga OvmfPkg/Include/IndustryStandard/VmwareSvga.h | 104 ------------ OvmfPkg/QemuVideoDxe/Driver.c | 141 ++-------------- OvmfPkg/QemuVideoDxe/Gop.c | 68 +------- OvmfPkg/QemuVideoDxe/Initialize.c | 157 ------------------ OvmfPkg/QemuVideoDxe/Qemu.h | 27 --- OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf | 7 - OvmfPkg/QemuVideoDxe/UnalignedIoGcc.c | 70 -------- OvmfPkg/QemuVideoDxe/UnalignedIoIcc.c | 80 --------- OvmfPkg/QemuVideoDxe/UnalignedIoInternal.h | 59 ------- OvmfPkg/QemuVideoDxe/UnalignedIoMsc.c | 78 --------- OvmfPkg/QemuVideoDxe/UnalignedIoUnsupported.c | 66 -------- 11 files changed, 19 insertions(+), 838 deletions(-) delete mode 100644 OvmfPkg/Include/IndustryStandard/VmwareSvga.h delete mode 100644 OvmfPkg/QemuVideoDxe/UnalignedIoGcc.c delete mode 100644 OvmfPkg/QemuVideoDxe/UnalignedIoIcc.c delete mode 100644 OvmfPkg/QemuVideoDxe/UnalignedIoInternal.h delete mode 100644 OvmfPkg/QemuVideoDxe/UnalignedIoMsc.c delete mode 100644 OvmfPkg/QemuVideoDxe/UnalignedIoUnsupported.c -- 2.18.0