From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=66.187.233.73; helo=mx1.redhat.com; envelope-from=lersek@redhat.com; receiver=edk2-devel@lists.01.org Received: from mx1.redhat.com (mx3-rdu2.redhat.com [66.187.233.73]) (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 EFB02226612B9 for ; Wed, 25 Apr 2018 06:59:04 -0700 (PDT) Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.rdu2.redhat.com [10.11.54.4]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 176EF4023155 for ; Wed, 25 Apr 2018 13:59:04 +0000 (UTC) Received: from lacos-laptop-7.usersys.redhat.com (ovpn-121-20.rdu2.redhat.com [10.10.121.20]) by smtp.corp.redhat.com (Postfix) with ESMTP id 9F042202698A; Wed, 25 Apr 2018 13:59:03 +0000 (UTC) To: Gerd Hoffmann , edk2-devel@lists.01.org References: <20180425121312.26424-1-kraxel@redhat.com> From: Laszlo Ersek Message-ID: <4c9cf49a-4f24-c443-1bba-cdabc204aea6@redhat.com> Date: Wed, 25 Apr 2018 15:59:02 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.7.0 MIME-Version: 1.0 In-Reply-To: <20180425121312.26424-1-kraxel@redhat.com> X-Scanned-By: MIMEDefang 2.78 on 10.11.54.4 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.11.55.6]); Wed, 25 Apr 2018 13:59:04 +0000 (UTC) X-Greylist: inspected by milter-greylist-4.5.16 (mx1.redhat.com [10.11.55.6]); Wed, 25 Apr 2018 13:59:04 +0000 (UTC) for IP:'10.11.54.4' DOMAIN:'int-mx04.intmail.prod.int.rdu2.redhat.com' HELO:'smtp.corp.redhat.com' FROM:'lersek@redhat.com' RCPT:'' Subject: Re: [PATCH] Add QemuIGDHelperDxe X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.26 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 25 Apr 2018 13:59:06 -0000 Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit Hi Gerd, On 04/25/18 14:13, Gerd Hoffmann wrote: > Little driver to setup the OpRegion for Intel vgpu devices. > > Contributed-under: TianoCore Contribution Agreement 1.1 > Signed-off-by: Gerd Hoffmann > --- > OvmfPkg/QemuIGDHelperDxe/QemuIGDHelper.c | 262 ++++++++++++++++++++++++++ > OvmfPkg/OvmfPkgIa32.dsc | 1 + > OvmfPkg/OvmfPkgIa32.fdf | 1 + > OvmfPkg/OvmfPkgIa32X64.dsc | 1 + > OvmfPkg/OvmfPkgIa32X64.fdf | 1 + > OvmfPkg/OvmfPkgX64.dsc | 1 + > OvmfPkg/OvmfPkgX64.fdf | 1 + > OvmfPkg/QemuIGDHelperDxe/QemuIGDHelperDxe.inf | 32 ++++ > 8 files changed, 300 insertions(+) > create mode 100644 OvmfPkg/QemuIGDHelperDxe/QemuIGDHelper.c > create mode 100644 OvmfPkg/QemuIGDHelperDxe/QemuIGDHelperDxe.inf I wrote the exact same driver last week, functionally speaking, and indeed it "works" (reportedly). But, it's not the right thing to do. Please see: https://bugzilla.tianocore.org/show_bug.cgi?id=935 As I wrote there, the right thing to do is one of the following two options: (a) OS-level drivers for the GVT-g VGPU should be liberated of ACPI and other firmware-level dependencies, and become pure PCI(e) drivers. (b) alternatively, Intel should provide a standalone, complete UEFI driver for the GVT-g VGPU, that sets up all the artifacts for the OS-level driver as well, without relying on fw_cfg or other platform hacks. This driver should exist as a file on the EFI system partition, or (better) in the ROM BAR of the assigned device. Changbin Du's comment at seems to imply that (b) could happen in practice. Thanks! Laszlo