From: "Duran, Leo" <leo.duran@amd.com>
To: Jordan Justen <jordan.l.justen@intel.com>,
"edk2-devel@lists.01.org" <edk2-devel@lists.01.org>
Cc: "Singh, Brijesh" <brijesh.singh@amd.com>,
"liming.gao@intel.com" <liming.gao@intel.com>,
"michael.d.kinney@intel.com" <michael.d.kinney@intel.com>,
"lersek@redhat.com" <lersek@redhat.com>,
"jeff.fan@intel.com" <jeff.fan@intel.com>
Subject: Re: [PATCH v3 00/10] IoLib class library
Date: Sun, 15 Jan 2017 16:52:33 +0000 [thread overview]
Message-ID: <CY4PR12MB12375EFCC680FD2010E581FDF97A0@CY4PR12MB1237.namprd12.prod.outlook.com> (raw)
In-Reply-To: <148443235123.17785.3055540711387734871@jljusten-ivb>
Thanks Jordan.
Please see my reply below.
Leo
> -----Original Message-----
> From: Jordan Justen [mailto:jordan.l.justen@intel.com]
> Sent: Saturday, January 14, 2017 4:19 PM
> To: Duran, Leo <leo.duran@amd.com>; edk2-devel@lists.01.org
> Cc: Singh, Brijesh <brijesh.singh@amd.com>; liming.gao@intel.com; Duran,
> Leo <leo.duran@amd.com>; michael.d.kinney@intel.com;
> lersek@redhat.com; jeff.fan@intel.com
> Subject: Re: [edk2] [PATCH v3 00/10] IoLib class library
>
> I haven't worked with ESAL enough to know if the EsalCall calls in patch 7 are
> correct.
[Duran, Leo]
Section 10.3.1 (Extended SAL Base I/O Services Class) in Volume 4 of the of the PI spec
describes ESAL I/O as a proxy for CPU I/O interfaces, which are taken care of on patches 2, 3 and 4.
> Patches 1-6 & 8-10:
> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
>
> On 2017-01-13 12:09:50, Leo Duran wrote:
> > The UefiCpuPkg/CpuIo2Dxe driver and the QemuCfgLib library have
> > duplicate implementations of I/O Fifo routines. The patch series moves
> > the I/O Fifo routines into the BaseIoLibIntrinsic library and expands
> > the IoLib class to include the ported I/O Fifo routines.
> >
> > The Fifo routines moved from the UefiCpuPkg/CpuIo2Dxe driver support
> > IA32 and X64 natively, and other architectures are supported by simply
> > looping through the basic IoRead/IoWrite routines as appropiate.
> >
> > The intent of this patch series is twofold:
> > 1) Integrate I/O Fifo routines into the IoLib class library.
> > 2) Allow override of IoLib as may be required to support specific
> > hardware implementations, such as AMD's Secure Encrypted Virtualization
> (SEV).
> >
> > Changes since v2:
> > - Rework DxeIoLibEsal to use FiFo routines via the CPU I/O interfaces.
> > Changes only to: [PATCH v2 07/10] MdePkg/DxeIoLibEsal
> >
> > Leo Duran (10):
> > MdePkg: Expand BaseIoLibIntrinsic (IoLib class) library
> > UefiCpuPkg: Modify CpuIo2Dxe to use new IoLib library
> > UefiCpuPkg: Modify CpuIoPei to support new IoLib library
> > IntelFrameworkModulePkg: Modify CpuIoDxe to support new IoLib library
> > MdePkg/DxeIoLibCpuIo2: Add new Fifo routines in IoLib class
> > MdePkg/PeiIoLibCpuIo: Add new Fifo routines in IoLib class
> > MdePkg/DxeIoLibEsal: Add new Fifo routines in IoLib class
> > MdePkg/SmmIoLibSmmCpuIo2: Add new Fifo routines in IoLib class
> > IntelFrameworkPkg/DxeIoLibCpuIo: Add new Fifo routines in IoLib class
> > OvmfPkg: Modify QemuFwCfgLib to use new IoLib class library
> >
> > IntelFrameworkModulePkg/Universal/CpuIoDxe/CpuIo.c | 52 ++++
> > .../Library/DxeIoLibCpuIo/DxeCpuIoLibInternal.h | 70 +++++-
> > IntelFrameworkPkg/Library/DxeIoLibCpuIo/IoLib.c | 248
> ++++++++++++++++++
> > MdePkg/Include/Library/IoLib.h | 152 +++++++++++
> > .../BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf | 6 +-
> > .../Library/BaseIoLibIntrinsic}/Ia32/IoFifo.asm | 19 +-
> > .../Library/BaseIoLibIntrinsic}/Ia32/IoFifo.nasm | 19 +-
> > MdePkg/Library/BaseIoLibIntrinsic/IoLibArm.c | 169 +++++++++++++
> > MdePkg/Library/BaseIoLibIntrinsic/IoLibEbc.c | 171 +++++++++++++
> > MdePkg/Library/BaseIoLibIntrinsic/IoLibIpf.c | 201 +++++++++++++++
> > .../Library/BaseIoLibIntrinsic}/X64/IoFifo.asm | 19 +-
> > .../Library/BaseIoLibIntrinsic}/X64/IoFifo.nasm | 19 +-
> > .../Library/DxeIoLibCpuIo2/DxeCpuIo2LibInternal.h | 71 +++++-
> > MdePkg/Library/DxeIoLibCpuIo2/IoLib.c | 260
> ++++++++++++++++++-
> > MdePkg/Library/DxeIoLibEsal/IoLib.c | 278
> ++++++++++++++++++++-
> > MdePkg/Library/PeiIoLibCpuIo/IoLib.c | 261
> +++++++++++++++++++
> > MdePkg/Library/SmmIoLibSmmCpuIo2/IoLib.c | 216
> ++++++++++++++++
> > OvmfPkg/Library/QemuFwCfgLib/Ia32/IoLibExAsm.nasm | 55 ----
> > OvmfPkg/Library/QemuFwCfgLib/QemuFwCfgLib.c | 54 +---
> > OvmfPkg/Library/QemuFwCfgLib/QemuFwCfgLib.inf | 7 +-
> > OvmfPkg/Library/QemuFwCfgLib/QemuFwCfgSecLib.inf | 7 +-
> > OvmfPkg/Library/QemuFwCfgLib/X64/IoLibExAsm.nasm | 52 ----
> > UefiCpuPkg/CpuIo2Dxe/CpuIo2Dxe.c | 13 +-
> > UefiCpuPkg/CpuIo2Dxe/CpuIo2Dxe.inf | 11 +-
> > UefiCpuPkg/CpuIo2Dxe/IoFifo.h | 176 -------------
> > UefiCpuPkg/CpuIoPei/CpuIoPei.c | 52 ++++
> > 26 files changed, 2239 insertions(+), 419 deletions(-) rename
> > {UefiCpuPkg/CpuIo2Dxe =>
> > MdePkg/Library/BaseIoLibIntrinsic}/Ia32/IoFifo.asm (85%) rename
> > {UefiCpuPkg/CpuIo2Dxe =>
> > MdePkg/Library/BaseIoLibIntrinsic}/Ia32/IoFifo.nasm (86%) rename
> > {UefiCpuPkg/CpuIo2Dxe =>
> > MdePkg/Library/BaseIoLibIntrinsic}/X64/IoFifo.asm (83%) rename
> > {UefiCpuPkg/CpuIo2Dxe =>
> > MdePkg/Library/BaseIoLibIntrinsic}/X64/IoFifo.nasm (84%) delete mode
> > 100644 OvmfPkg/Library/QemuFwCfgLib/Ia32/IoLibExAsm.nasm
> > delete mode 100644
> OvmfPkg/Library/QemuFwCfgLib/X64/IoLibExAsm.nasm
> > delete mode 100644 UefiCpuPkg/CpuIo2Dxe/IoFifo.h
> >
> > --
> > 1.9.1
> >
> > _______________________________________________
> > edk2-devel mailing list
> > edk2-devel@lists.01.org
> > https://lists.01.org/mailman/listinfo/edk2-devel
next prev parent reply other threads:[~2017-01-15 16:52 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-01-13 20:09 [PATCH v3 00/10] IoLib class library Leo Duran
2017-01-13 20:09 ` [PATCH v3 01/10] MdePkg: Expand BaseIoLibIntrinsic (IoLib class) library Leo Duran
2017-01-13 20:09 ` [PATCH v3 02/10] UefiCpuPkg: Modify CpuIo2Dxe to use new IoLib library Leo Duran
2017-01-16 0:49 ` Fan, Jeff
2017-01-13 20:09 ` [PATCH v3 03/10] UefiCpuPkg: Modify CpuIoPei to support " Leo Duran
2017-01-16 0:49 ` Fan, Jeff
2017-01-13 20:09 ` [PATCH v3 04/10] IntelFrameworkModulePkg: Modify CpuIoDxe " Leo Duran
2017-01-16 0:50 ` Fan, Jeff
2017-01-13 20:09 ` [PATCH v3 05/10] MdePkg/DxeIoLibCpuIo2: Add new Fifo routines in IoLib class Leo Duran
2017-01-13 20:09 ` [PATCH v3 06/10] MdePkg/PeiIoLibCpuIo: " Leo Duran
2017-01-13 20:09 ` [PATCH v3 07/10] MdePkg/DxeIoLibEsal: " Leo Duran
2017-01-13 20:09 ` [PATCH v3 08/10] MdePkg/SmmIoLibSmmCpuIo2: " Leo Duran
2017-01-13 20:09 ` [PATCH v3 09/10] IntelFrameworkPkg/DxeIoLibCpuIo: " Leo Duran
2017-01-16 0:54 ` Fan, Jeff
2017-01-13 20:10 ` [PATCH v3 10/10] OvmfPkg: Modify QemuFwCfgLib to use new IoLib class library Leo Duran
2017-01-14 13:00 ` [PATCH v3 00/10] " Gao, Liming
2017-01-14 22:19 ` Jordan Justen
2017-01-15 16:52 ` Duran, Leo [this message]
2017-01-17 3:07 ` Laszlo Ersek
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=CY4PR12MB12375EFCC680FD2010E581FDF97A0@CY4PR12MB1237.namprd12.prod.outlook.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