public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
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

  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