Can you also clean up BaseLib to remove the support of INTEL tool chain? > -----Original Message----- > From: Zhang, Shenglei > Sent: Wednesday, April 3, 2019 4:30 PM > To: edk2-devel@lists.01.org > Cc: Kinney, Michael D <michael.d.kin...@intel.com>; Gao, Liming > <liming....@intel.com> > Subject: [PATCH 1/2] MdePkg/BaseIoLibIntrinsic: Remove IoLibIcc.c > > As ICC tool chain will be removed, IoLibIcc.c should > also be removed. > https://bugzilla.tianocore.org/show_bug.cgi?id=1666 > > Cc: Michael D Kinney <michael.d.kin...@intel.com> > Cc: Liming Gao <liming....@intel.com> > Contributed-under: TianoCore Contribution Agreement 1.1 > Signed-off-by: Shenglei Zhang <shenglei.zh...@intel.com> > --- > .../BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf | 2 - > .../BaseIoLibIntrinsicSev.inf | 2 - > MdePkg/Library/BaseIoLibIntrinsic/IoLibIcc.c | 214 ------------------ > 3 files changed, 218 deletions(-) > delete mode 100644 MdePkg/Library/BaseIoLibIntrinsic/IoLibIcc.c > > diff --git a/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf > b/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf > index eb81aab2d4..6020fe90da 100644 > --- a/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf > +++ b/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf > @@ -41,14 +41,12 @@ > [Sources.IA32] > IoLibGcc.c | GCC > IoLibMsc.c | MSFT > - IoLibIcc.c | INTEL > IoLib.c > Ia32/IoFifo.nasm > > [Sources.X64] > IoLibGcc.c | GCC > IoLibMsc.c | MSFT > - IoLibIcc.c | INTEL > IoLib.c > X64/IoFifo.nasm > > diff --git a/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsicSev.inf > b/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsicSev.inf > index da846704d5..e92b5ed94d 100644 > --- a/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsicSev.inf > +++ b/MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsicSev.inf > @@ -39,14 +39,12 @@ > [Sources.IA32] > IoLibGcc.c | GCC > IoLibMsc.c | MSFT > - IoLibIcc.c | INTEL > IoLib.c > Ia32/IoFifoSev.nasm > > [Sources.X64] > IoLibGcc.c | GCC > IoLibMsc.c | MSFT > - IoLibIcc.c | INTEL > IoLib.c > X64/IoFifoSev.nasm > > diff --git a/MdePkg/Library/BaseIoLibIntrinsic/IoLibIcc.c > b/MdePkg/Library/BaseIoLibIntrinsic/IoLibIcc.c > deleted file mode 100644 > index 3036084f0c..0000000000 > --- a/MdePkg/Library/BaseIoLibIntrinsic/IoLibIcc.c > +++ /dev/null > @@ -1,214 +0,0 @@ > -/** @file > - I/O Library. This file has compiler specifics for ICC as there > - is no ANSI C standard for doing IO. > - > - Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR> > - This program and the accompanying materials are > - licensed and made available under the terms and conditions of the BSD > License > - which accompanies this distribution. The full text of the license may be > found at > - http://opensource.org/licenses/bsd-license.php. > - > - THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, > - WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR > IMPLIED. > - > -**/ > - > -#include "BaseIoLibIntrinsicInternal.h" > - > -/** > - Reads an 8-bit I/O port. > - > - Reads the 8-bit I/O port specified by Port. The 8-bit read value is > returned. > - This function must guarantee that all I/O read and write operations are > - serialized. > - > - If 8-bit I/O port operations are not supported, then ASSERT(). > - > - @param Port The I/O port to read. > - > - @return The value read. > - > -**/ > -UINT8 > -EFIAPI > -IoRead8 ( > - IN UINTN Port > - ) > -{ > - UINT8 Data; > - > - __asm { > - mov dx, word ptr [Port] > - in al, dx > - > - mov Data, al > - } > - return Data; > -} > - > -/** > - Writes an 8-bit I/O port. > - > - Writes the 8-bit I/O port specified by Port with the value specified by > Value > - and returns Value. This function must guarantee that all I/O read and write > - operations are serialized. > - > - If 8-bit I/O port operations are not supported, then ASSERT(). > - > - @param Port The I/O port to write. > - @param Value The value to write to the I/O port. > - > - @return The value written the I/O port. > - > -**/ > -UINT8 > -EFIAPI > -IoWrite8 ( > - IN UINTN Port, > - IN UINT8 Value > - ) > -{ > - __asm { > - mov al, byte ptr [Value] > - mov dx, word ptr [Port] > - out dx, al > - } > - return Value; > -} > - > -/** > - Reads a 16-bit I/O port. > - > - Reads the 16-bit I/O port specified by Port. The 16-bit read value is > returned. > - This function must guarantee that all I/O read and write operations are > - serialized. > - > - If 16-bit I/O port operations are not supported, then ASSERT(). > - If Port is not aligned on a 16-bit boundary, then ASSERT(). > - > - @param Port The I/O port to read. > - > - @return The value read. > - > -**/ > -UINT16 > -EFIAPI > -IoRead16 ( > - IN UINTN Port > - ) > -{ > - UINT16 Data; > - > - ASSERT ((Port & 1) == 0); > - > - __asm { > - mov dx, word ptr [Port] > - in ax, dx > - mov word ptr [Data], ax > - } > - > - return Data; > -} > - > -/** > - Writes a 16-bit I/O port. > - > - Writes the 16-bit I/O port specified by Port with the value specified by > Value > - and returns Value. This function must guarantee that all I/O read and write > - operations are serialized. > - > - If 16-bit I/O port operations are not supported, then ASSERT(). > - If Port is not aligned on a 16-bit boundary, then ASSERT(). > - > - @param Port The I/O port to write. > - @param Value The value to write to the I/O port. > - > - @return The value written the I/O port. > - > -**/ > -UINT16 > -EFIAPI > -IoWrite16 ( > - IN UINTN Port, > - IN UINT16 Value > - ) > -{ > - ASSERT ((Port & 1) == 0); > - > - __asm { > - mov ax, word ptr [Value] > - mov dx, word ptr [Port] > - out dx, ax > - } > - > - return Value; > -} > - > -/** > - Reads a 32-bit I/O port. > - > - Reads the 32-bit I/O port specified by Port. The 32-bit read value is > returned. > - This function must guarantee that all I/O read and write operations are > - serialized. > - > - If 32-bit I/O port operations are not supported, then ASSERT(). > - If Port is not aligned on a 32-bit boundary, then ASSERT(). > - > - @param Port The I/O port to read. > - > - @return The value read. > - > -**/ > -UINT32 > -EFIAPI > -IoRead32 ( > - IN UINTN Port > - ) > -{ > - UINT32 Data; > - > - ASSERT ((Port & 3) == 0); > - > - __asm { > - mov dx, word ptr [Port] > - in eax, dx > - mov dword ptr [Data], eax > - } > - > - return Data; > -} > - > -/** > - Writes a 32-bit I/O port. > - > - Writes the 32-bit I/O port specified by Port with the value specified by > Value > - and returns Value. This function must guarantee that all I/O read and write > - operations are serialized. > - > - If 32-bit I/O port operations are not supported, then ASSERT(). > - If Port is not aligned on a 32-bit boundary, then ASSERT(). > - > - @param Port The I/O port to write. > - @param Value The value to write to the I/O port. > - > - @return The value written the I/O port. > - > -**/ > -UINT32 > -EFIAPI > -IoWrite32 ( > - IN UINTN Port, > - IN UINT32 Value > - ) > -{ > - ASSERT ((Port & 3) == 0); > - > - __asm { > - mov eax, dword ptr [Value] > - mov dx, word ptr [Port] > - out dx, eax > - } > - > - return Value; > -} > - > -- > 2.18.0.windows.1
_______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel