From mboxrd@z Thu Jan 1 00:00:00 1970 Authentication-Results: mx.groups.io; dkim=missing; spf=pass (domain: redhat.com, ip: 209.132.183.28, mailfrom: lersek@redhat.com) Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by groups.io with SMTP; Wed, 10 Apr 2019 09:25:42 -0700 Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.phx2.redhat.com [10.5.11.15]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 3B84A306CA33; Wed, 10 Apr 2019 16:25:42 +0000 (UTC) Received: from lacos-laptop-7.usersys.redhat.com (ovpn-121-133.rdu2.redhat.com [10.10.121.133]) by smtp.corp.redhat.com (Postfix) with ESMTP id 9FDF65D719; Wed, 10 Apr 2019 16:25:40 +0000 (UTC) Subject: Re: [PATCH v2 0/8] Duplicate 8259/8254 components in OvmfPkg To: Hao Wu , devel@edk2.groups.io Cc: Jordan Justen , Ard Biesheuvel , David Woodhouse , Ray Ni References: <20190410010628.19708-1-hao.a.wu@intel.com> From: "Laszlo Ersek" Message-ID: Date: Wed, 10 Apr 2019 18:25:39 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.9.1 MIME-Version: 1.0 In-Reply-To: <20190410010628.19708-1-hao.a.wu@intel.com> X-Scanned-By: MIMEDefang 2.79 on 10.5.11.15 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.43]); Wed, 10 Apr 2019 16:25:42 +0000 (UTC) Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit On 04/10/19 03:06, Hao Wu wrote: > This series is also available at: > https://github.com/hwu25/edk2/tree/ovmf_8259_8254_v2 > > > V2 changes: > > Due to the file license change, rebase the whole series onto the tip of > the master branch. The 'Contributed-under' tag is removed from the log > messages as well. > > The V2 series keeps all the 'Reviewed-by' tags from Laszlo from the > previous version of the series. I skimmed this version briefly, with an eye towards my v1 requests. The v2 series looks fine to me, ready for pushing. Thanks! Laszlo > > > V1 history: > > As a sub-task to remove the IntelFrameworkPkg (BZ-1604), > > 8259InterruptControllerDxe driver (PcAtChipsetPkg) > Legacy8259 protocol (IntelFrameworkPkg) > 8254TimerDxe driver (PcAtChipsetPkg) > > will be removed in the near future. Meanwhile, OVMF will still require > those components (due to CSM support & HPET emulation stability concern). > > Thus, the series will copy the below 8259/8254 components: > > A. 8259InterruptControllerDxe driver (PcAtChipsetPkg) > B. Two 8259 related PCDs (PcAtChipsetPkg) > C. Legacy8259 protocol (IntelFrameworkPkg) > D. 8254TimerDxe driver (PcAtChipsetPkg) > > in the OvmfPkg to address the above-mentioned issue. > > > Tests done for the proposed series: > > A. OvmfPkg build pass for VS2015 & GCC5 tool chains; > B. Boot to Shell with commands: > qemu-system-x86_64.exe -pflash \OVMF.fd -debugcon file:boot.log -global isa-debugcon.iobase=0x402 > qemu-system-x86_64.exe -machine q35 -pflash \OVMF.fd -debugcon file:boot.log -global isa-debugcon.iobase=0x402 > C. 'stall X' command under Shell to verify the timer is working properly. > > > (Please note that there will be a subsequent patch to remove the 8259/8254 > components after platforms dropping the dependencies on them.) > > Cc: Jordan Justen > Cc: Laszlo Ersek > Cc: Ard Biesheuvel > Cc: David Woodhouse > Cc: Ray Ni > > > Hao Wu (8): > OvmfPkg: Copy 8259InterruptControllerDxe driver from PcAtChipsetPkg > OvmfPkg: Copy Legacy8259 protocol definitions from IntelFrameworkPkg > OvmfPkg/OvmfPkg.dec: Add 8259-related PCDs in OVMF DEC file > OvmfPkg/8259InterruptControllerDxe: Update to make it build for OVMF > OvmfPkg/AcpiPlatformDxe: Consume the 8259 PCD defined in OvmfPkg > OvmfPkg: Copy 8254TimerDxe driver from PcAtChipsetPkg > OvmfPkg/8254TimerDxe: Update to make it build for OVMF > OvmfPkg: Update DSC/FDF files to consume 8259/8254 drivers in OvmfPkg > > OvmfPkg/OvmfPkg.dec | 29 +- > OvmfPkg/OvmfPkgIa32.dsc | 6 +- > OvmfPkg/OvmfPkgIa32X64.dsc | 6 +- > OvmfPkg/OvmfPkgX64.dsc | 6 +- > OvmfPkg/OvmfPkgIa32.fdf | 4 +- > OvmfPkg/OvmfPkgIa32X64.fdf | 4 +- > OvmfPkg/OvmfPkgX64.fdf | 4 +- > OvmfPkg/8254TimerDxe/8254Timer.inf | 42 ++ > OvmfPkg/8259InterruptControllerDxe/8259.inf | 45 ++ > OvmfPkg/AcpiPlatformDxe/AcpiPlatformDxe.inf | 5 +- > OvmfPkg/8254TimerDxe/Timer.h | 185 ++++++ > OvmfPkg/8259InterruptControllerDxe/8259.h | 218 +++++++ > OvmfPkg/Include/Protocol/Legacy8259.h | 291 +++++++++ > OvmfPkg/8254TimerDxe/Timer.c | 401 +++++++++++++ > OvmfPkg/8259InterruptControllerDxe/8259.c | 622 ++++++++++++++++++++ > OvmfPkg/8254TimerDxe/Timer.uni | 16 + > OvmfPkg/8254TimerDxe/TimerExtra.uni | 14 + > OvmfPkg/8259InterruptControllerDxe/Legacy8259.uni | 16 + > OvmfPkg/8259InterruptControllerDxe/Legacy8259Extra.uni | 14 + > 19 files changed, 1909 insertions(+), 19 deletions(-) > create mode 100644 OvmfPkg/8254TimerDxe/8254Timer.inf > create mode 100644 OvmfPkg/8259InterruptControllerDxe/8259.inf > create mode 100644 OvmfPkg/8254TimerDxe/Timer.h > create mode 100644 OvmfPkg/8259InterruptControllerDxe/8259.h > create mode 100644 OvmfPkg/Include/Protocol/Legacy8259.h > create mode 100644 OvmfPkg/8254TimerDxe/Timer.c > create mode 100644 OvmfPkg/8259InterruptControllerDxe/8259.c > create mode 100644 OvmfPkg/8254TimerDxe/Timer.uni > create mode 100644 OvmfPkg/8254TimerDxe/TimerExtra.uni > create mode 100644 OvmfPkg/8259InterruptControllerDxe/Legacy8259.uni > create mode 100644 OvmfPkg/8259InterruptControllerDxe/Legacy8259Extra.uni >