public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: Hao Wu <hao.a.wu@intel.com>
To: edk2-devel@lists.01.org
Cc: Hao Wu <hao.a.wu@intel.com>,
	Jordan Justen <jordan.l.justen@intel.com>,
	Laszlo Ersek <lersek@redhat.com>,
	Ard Biesheuvel <ard.biesheuvel@linaro.org>,
	David Woodhouse <dwmw2@infradead.org>, Ray Ni <ray.ni@intel.com>
Subject: [RFC PATCH v1 0/8] Duplicate 8259/8254 components in OvmfPkg
Date: Wed,  3 Apr 2019 15:00:28 +0800	[thread overview]
Message-ID: <20190403070036.1404-1-hao.a.wu@intel.com> (raw)

This series is also available at:
https://github.com/hwu25/edk2/tree/ovmf_8259_8254_rfcv1


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 <SOME_PATH>\OVMF.fd -debugcon file:boot.log -global isa-debugcon.iobase=0x402
  qemu-system-x86_64.exe -machine q35 -pflash <SOME_PATH>\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 <jordan.l.justen@intel.com>
Cc: Laszlo Ersek <lersek@redhat.com>
Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: David Woodhouse <dwmw2@infradead.org>
Cc: Ray Ni <ray.ni@intel.com>


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                     |  48 ++
 OvmfPkg/8259InterruptControllerDxe/8259.inf            |  51 ++
 OvmfPkg/AcpiPlatformDxe/AcpiPlatformDxe.inf            |   5 +-
 OvmfPkg/8254TimerDxe/Timer.h                           | 191 ++++++
 OvmfPkg/8259InterruptControllerDxe/8259.h              | 224 +++++++
 OvmfPkg/Include/Protocol/Legacy8259.h                  | 297 +++++++++
 OvmfPkg/8254TimerDxe/Timer.c                           | 407 +++++++++++++
 OvmfPkg/8259InterruptControllerDxe/8259.c              | 628 ++++++++++++++++++++
 OvmfPkg/8254TimerDxe/Timer.uni                         |  22 +
 OvmfPkg/8254TimerDxe/TimerExtra.uni                    |  20 +
 OvmfPkg/8259InterruptControllerDxe/Legacy8259.uni      |  22 +
 OvmfPkg/8259InterruptControllerDxe/Legacy8259Extra.uni |  20 +
 19 files changed, 1975 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

-- 
2.12.0.windows.1



             reply	other threads:[~2019-04-03  7:00 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-04-03  7:00 Hao Wu [this message]
2019-04-03  7:00 ` [RFC PATCH v1 1/8] OvmfPkg: Copy 8259InterruptControllerDxe driver from PcAtChipsetPkg Hao Wu
2019-04-03 12:05   ` Laszlo Ersek
2019-04-03  7:00 ` [RFC PATCH v1 2/8] OvmfPkg: Copy Legacy8259 protocol definitions from IntelFrameworkPkg Hao Wu
     [not found]   ` <945615d3-5d8f-659a-a8c4-7320f108ab88@redhat.com>
2019-04-04  2:44     ` [edk2] " hao.a.wu
2019-04-03  7:00 ` [RFC PATCH v1 3/8] OvmfPkg/OvmfPkg.dec: Add 8259-related PCDs in OVMF DEC file Hao Wu
2019-04-03 12:39   ` Laszlo Ersek
2019-04-04  2:56     ` [edk2] " Wu, Hao A
2019-04-03  7:00 ` [RFC PATCH v1 4/8] OvmfPkg/8259InterruptControllerDxe: Update to make it build for OVMF Hao Wu
2019-04-03 12:46   ` Laszlo Ersek
2019-04-04  3:02     ` [edk2] " Wu, Hao A
2019-04-03  7:00 ` [RFC PATCH v1 5/8] OvmfPkg/AcpiPlatformDxe: Consume the 8259 PCD defined in OvmfPkg Hao Wu
2019-04-03 12:48   ` Laszlo Ersek
2019-04-03  7:00 ` [RFC PATCH v1 6/8] OvmfPkg: Copy 8254TimerDxe driver from PcAtChipsetPkg Hao Wu
2019-04-03 12:50   ` Laszlo Ersek
2019-04-03  7:00 ` [RFC PATCH v1 7/8] OvmfPkg/8254TimerDxe: Update to make it build for OVMF Hao Wu
2019-04-03 12:52   ` Laszlo Ersek
2019-04-03  7:00 ` [RFC PATCH v1 8/8] OvmfPkg: Update DSC/FDF files to consume 8259/8254 drivers in OvmfPkg Hao Wu
2019-04-03 12:57   ` Laszlo Ersek
2019-04-03 12:10 ` [RFC PATCH v1 0/8] Duplicate 8259/8254 components " Laszlo Ersek
2019-04-03 12:13   ` Laszlo Ersek
     [not found]     ` <563a0d19-fcc9-3a40-c782-1b04704e3b95@redhat.com>
2019-04-04  4:05       ` [edk2] " Wu, Hao A

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=20190403070036.1404-1-hao.a.wu@intel.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