]> git.proxmox.com Git - mirror_edk2.git/commitdiff
MdeModulePkg/Library: Remove BaseUefiTianoCustomDecompressLib
authorDandan Bi <dandan.bi@intel.com>
Fri, 10 May 2019 14:17:56 +0000 (22:17 +0800)
committerLiming Gao <liming.gao@intel.com>
Wed, 15 May 2019 13:02:59 +0000 (21:02 +0800)
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1722

Since we have merged this one into MdePkg,
remove it now.

Cc: Liming Gao <liming.gao@intel.com>
Cc: Jian J Wang <jian.j.wang@intel.com>
Cc: Hao A Wu <hao.a.wu@intel.com>
Signed-off-by: Dandan Bi <dandan.bi@intel.com>
Reviewed-by: Hao A Wu <hao.a.wu@intel.com>
MdeModulePkg/Include/Guid/TianoDecompress.h [deleted file]
MdeModulePkg/Library/BaseUefiTianoCustomDecompressLib/BaseUefiTianoCustomDecompressLib.c [deleted file]
MdeModulePkg/Library/BaseUefiTianoCustomDecompressLib/BaseUefiTianoCustomDecompressLib.inf [deleted file]
MdeModulePkg/Library/BaseUefiTianoCustomDecompressLib/BaseUefiTianoCustomDecompressLibInternals.h [deleted file]
MdeModulePkg/Library/BaseUefiTianoCustomDecompressLib/BaseUefiTianoDecompressLib.uni [deleted file]
MdeModulePkg/MdeModulePkg.dec
MdeModulePkg/MdeModulePkg.dsc

diff --git a/MdeModulePkg/Include/Guid/TianoDecompress.h b/MdeModulePkg/Include/Guid/TianoDecompress.h
deleted file mode 100644 (file)
index 40f74f8..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-/** @file\r
-  Tiano Custom decompress Guid definition.\r
-\r
-Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>\r
-SPDX-License-Identifier: BSD-2-Clause-Patent\r
-\r
-**/\r
-\r
-#ifndef __TIANO_CUSTOM_DECOMPRESS_GUID_H__\r
-#define __TIANO_CUSTOM_DECOMPRESS_GUID_H__\r
-\r
-///\r
-/// The Global ID used to identify a section of an FFS file of type\r
-/// EFI_SECTION_GUID_DEFINED, whose contents have been compressed using\r
-/// Tiano Custom compression.\r
-///\r
-#define TIANO_CUSTOM_DECOMPRESS_GUID  \\r
-  { 0xA31280AD, 0x481E, 0x41B6, { 0x95, 0xE8, 0x12, 0x7F, 0x4C, 0x98, 0x47, 0x79 } }\r
-\r
-extern GUID gTianoCustomDecompressGuid;\r
-\r
-#endif\r
diff --git a/MdeModulePkg/Library/BaseUefiTianoCustomDecompressLib/BaseUefiTianoCustomDecompressLib.c b/MdeModulePkg/Library/BaseUefiTianoCustomDecompressLib/BaseUefiTianoCustomDecompressLib.c
deleted file mode 100644 (file)
index 38b66b1..0000000
+++ /dev/null
@@ -1,1063 +0,0 @@
-/** @file\r
-  UEFI and Tiano Custom Decompress Library\r
-  It will do Tiano or UEFI decompress with different verison parameter.\r
-\r
-Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>\r
-SPDX-License-Identifier: BSD-2-Clause-Patent\r
-\r
-**/\r
-\r
-#include "BaseUefiTianoCustomDecompressLibInternals.h"\r
-\r
-/**\r
-  Shift mBitBuf NumOfBits left. Read in NumOfBits of bits from source.\r
-\r
-  @param Sd         The global scratch data\r
-  @param NumOfBits  The number of bits to shift and read.\r
-**/\r
-VOID\r
-FillBuf (\r
-  IN  SCRATCH_DATA  *Sd,\r
-  IN  UINT16        NumOfBits\r
-  )\r
-{\r
-  //\r
-  // Left shift NumOfBits of bits in advance\r
-  //\r
-  Sd->mBitBuf = (UINT32) LShiftU64 (((UINT64)Sd->mBitBuf), NumOfBits);\r
-\r
-  //\r
-  // Copy data needed in bytes into mSbuBitBuf\r
-  //\r
-  while (NumOfBits > Sd->mBitCount) {\r
-    NumOfBits = (UINT16) (NumOfBits - Sd->mBitCount);\r
-    Sd->mBitBuf |= (UINT32) LShiftU64 (((UINT64)Sd->mSubBitBuf), NumOfBits);\r
-\r
-    if (Sd->mCompSize > 0) {\r
-      //\r
-      // Get 1 byte into SubBitBuf\r
-      //\r
-      Sd->mCompSize--;\r
-      Sd->mSubBitBuf  = 0;\r
-      Sd->mSubBitBuf  = Sd->mSrcBase[Sd->mInBuf++];\r
-      Sd->mBitCount   = 8;\r
-\r
-    } else {\r
-      //\r
-      // No more bits from the source, just pad zero bit.\r
-      //\r
-      Sd->mSubBitBuf  = 0;\r
-      Sd->mBitCount   = 8;\r
-\r
-    }\r
-  }\r
-\r
-  //\r
-  // Calculate additional bit count read to update mBitCount\r
-  //\r
-  Sd->mBitCount = (UINT16) (Sd->mBitCount - NumOfBits);\r
-\r
-  //\r
-  // Copy NumOfBits of bits from mSubBitBuf into mBitBuf\r
-  //\r
-  Sd->mBitBuf |= Sd->mSubBitBuf >> Sd->mBitCount;\r
-}\r
-\r
-/**\r
-  Get NumOfBits of bits out from mBitBuf\r
-\r
-  Get NumOfBits of bits out from mBitBuf. Fill mBitBuf with subsequent\r
-  NumOfBits of bits from source. Returns NumOfBits of bits that are\r
-  popped out.\r
-\r
-  @param  Sd        The global scratch data.\r
-  @param  NumOfBits The number of bits to pop and read.\r
-\r
-  @return The bits that are popped out.\r
-\r
-**/\r
-UINT32\r
-GetBits (\r
-  IN  SCRATCH_DATA  *Sd,\r
-  IN  UINT16        NumOfBits\r
-  )\r
-{\r
-  UINT32  OutBits;\r
-\r
-  //\r
-  // Pop NumOfBits of Bits from Left\r
-  //\r
-  OutBits = (UINT32) (Sd->mBitBuf >> (BITBUFSIZ - NumOfBits));\r
-\r
-  //\r
-  // Fill up mBitBuf from source\r
-  //\r
-  FillBuf (Sd, NumOfBits);\r
-\r
-  return OutBits;\r
-}\r
-\r
-/**\r
-  Creates Huffman Code mapping table according to code length array.\r
-\r
-  Creates Huffman Code mapping table for Extra Set, Char&Len Set\r
-  and Position Set according to code length array.\r
-  If TableBits > 16, then ASSERT ().\r
-\r
-  @param  Sd        The global scratch data\r
-  @param  NumOfChar Number of symbols in the symbol set\r
-  @param  BitLen    Code length array\r
-  @param  TableBits The width of the mapping table\r
-  @param  Table     The table to be created.\r
-\r
-  @retval  0 OK.\r
-  @retval  BAD_TABLE The table is corrupted.\r
-\r
-**/\r
-UINT16\r
-MakeTable (\r
-  IN  SCRATCH_DATA  *Sd,\r
-  IN  UINT16        NumOfChar,\r
-  IN  UINT8         *BitLen,\r
-  IN  UINT16        TableBits,\r
-  OUT UINT16        *Table\r
-  )\r
-{\r
-  UINT16  Count[17];\r
-  UINT16  Weight[17];\r
-  UINT16  Start[18];\r
-  UINT16  *Pointer;\r
-  UINT16  Index3;\r
-  UINT16  Index;\r
-  UINT16  Len;\r
-  UINT16  Char;\r
-  UINT16  JuBits;\r
-  UINT16  Avail;\r
-  UINT16  NextCode;\r
-  UINT16  Mask;\r
-  UINT16  WordOfStart;\r
-  UINT16  WordOfCount;\r
-  UINT16  MaxTableLength;\r
-\r
-  //\r
-  // The maximum mapping table width supported by this internal\r
-  // working function is 16.\r
-  //\r
-  ASSERT (TableBits <= 16);\r
-\r
-  for (Index = 0; Index <= 16; Index++) {\r
-    Count[Index] = 0;\r
-  }\r
-\r
-  for (Index = 0; Index < NumOfChar; Index++) {\r
-    if (BitLen[Index] > 16) {\r
-      return (UINT16) BAD_TABLE;\r
-    }\r
-    Count[BitLen[Index]]++;\r
-  }\r
-\r
-  Start[0] = 0;\r
-  Start[1] = 0;\r
-\r
-  for (Index = 1; Index <= 16; Index++) {\r
-    WordOfStart = Start[Index];\r
-    WordOfCount = Count[Index];\r
-    Start[Index + 1] = (UINT16) (WordOfStart + (WordOfCount << (16 - Index)));\r
-  }\r
-\r
-  if (Start[17] != 0) {\r
-    /*(1U << 16)*/\r
-    return (UINT16) BAD_TABLE;\r
-  }\r
-\r
-  JuBits = (UINT16) (16 - TableBits);\r
-\r
-  Weight[0] = 0;\r
-  for (Index = 1; Index <= TableBits; Index++) {\r
-    Start[Index] >>= JuBits;\r
-    Weight[Index] = (UINT16) (1U << (TableBits - Index));\r
-  }\r
-\r
-  while (Index <= 16) {\r
-    Weight[Index] = (UINT16) (1U << (16 - Index));\r
-    Index++;\r
-  }\r
-\r
-  Index = (UINT16) (Start[TableBits + 1] >> JuBits);\r
-\r
-  if (Index != 0) {\r
-    Index3 = (UINT16) (1U << TableBits);\r
-    if (Index < Index3) {\r
-      SetMem16 (Table + Index, (Index3 - Index) * sizeof (*Table), 0);\r
-    }\r
-  }\r
-\r
-  Avail = NumOfChar;\r
-  Mask  = (UINT16) (1U << (15 - TableBits));\r
-  MaxTableLength = (UINT16) (1U << TableBits);\r
-\r
-  for (Char = 0; Char < NumOfChar; Char++) {\r
-\r
-    Len = BitLen[Char];\r
-    if (Len == 0 || Len >= 17) {\r
-      continue;\r
-    }\r
-\r
-    NextCode = (UINT16) (Start[Len] + Weight[Len]);\r
-\r
-    if (Len <= TableBits) {\r
-\r
-      for (Index = Start[Len]; Index < NextCode; Index++) {\r
-        if (Index >= MaxTableLength) {\r
-          return (UINT16) BAD_TABLE;\r
-        }\r
-        Table[Index] = Char;\r
-      }\r
-\r
-    } else {\r
-\r
-      Index3  = Start[Len];\r
-      Pointer = &Table[Index3 >> JuBits];\r
-      Index   = (UINT16) (Len - TableBits);\r
-\r
-      while (Index != 0) {\r
-        if (*Pointer == 0 && Avail < (2 * NC - 1)) {\r
-          Sd->mRight[Avail] = Sd->mLeft[Avail] = 0;\r
-          *Pointer = Avail++;\r
-        }\r
-\r
-        if (*Pointer < (2 * NC - 1)) {\r
-          if ((Index3 & Mask) != 0) {\r
-            Pointer = &Sd->mRight[*Pointer];\r
-          } else {\r
-            Pointer = &Sd->mLeft[*Pointer];\r
-          }\r
-        }\r
-\r
-        Index3 <<= 1;\r
-        Index--;\r
-      }\r
-\r
-      *Pointer = Char;\r
-\r
-    }\r
-\r
-    Start[Len] = NextCode;\r
-  }\r
-  //\r
-  // Succeeds\r
-  //\r
-  return 0;\r
-}\r
-\r
-/**\r
-  Decodes a position value.\r
-\r
-  Get a position value according to Position Huffman Table.\r
-\r
-  @param Sd      the global scratch data\r
-\r
-  @return The position value decoded.\r
-**/\r
-UINT32\r
-DecodeP (\r
-  IN  SCRATCH_DATA  *Sd\r
-  )\r
-{\r
-  UINT16  Val;\r
-  UINT32  Mask;\r
-  UINT32  Pos;\r
-\r
-  Val = Sd->mPTTable[Sd->mBitBuf >> (BITBUFSIZ - 8)];\r
-\r
-  if (Val >= MAXNP) {\r
-    Mask = 1U << (BITBUFSIZ - 1 - 8);\r
-\r
-    do {\r
-\r
-      if ((Sd->mBitBuf & Mask) != 0) {\r
-        Val = Sd->mRight[Val];\r
-      } else {\r
-        Val = Sd->mLeft[Val];\r
-      }\r
-\r
-      Mask >>= 1;\r
-    } while (Val >= MAXNP);\r
-  }\r
-  //\r
-  // Advance what we have read\r
-  //\r
-  FillBuf (Sd, Sd->mPTLen[Val]);\r
-\r
-  Pos = Val;\r
-  if (Val > 1) {\r
-    Pos = (UINT32) ((1U << (Val - 1)) + GetBits (Sd, (UINT16) (Val - 1)));\r
-  }\r
-\r
-  return Pos;\r
-}\r
-\r
-/**\r
-  Reads code lengths for the Extra Set or the Position Set.\r
-\r
-  Read in the Extra Set or Position Set Length Array, then\r
-  generate the Huffman code mapping for them.\r
-\r
-  @param  Sd      The global scratch data.\r
-  @param  nn      Number of symbols.\r
-  @param  nbit    Number of bits needed to represent nn.\r
-  @param  Special The special symbol that needs to be taken care of.\r
-\r
-  @retval  0 OK.\r
-  @retval  BAD_TABLE Table is corrupted.\r
-\r
-**/\r
-UINT16\r
-ReadPTLen (\r
-  IN  SCRATCH_DATA  *Sd,\r
-  IN  UINT16        nn,\r
-  IN  UINT16        nbit,\r
-  IN  UINT16        Special\r
-  )\r
-{\r
-  UINT16  Number;\r
-  UINT16  CharC;\r
-  UINT16  Index;\r
-  UINT32  Mask;\r
-\r
-  ASSERT (nn <= NPT);\r
-  //\r
-  // Read Extra Set Code Length Array size\r
-  //\r
-  Number = (UINT16) GetBits (Sd, nbit);\r
-\r
-  if (Number == 0) {\r
-    //\r
-    // This represents only Huffman code used\r
-    //\r
-    CharC = (UINT16) GetBits (Sd, nbit);\r
-\r
-    for (Index = 0; Index < 256; Index++) {\r
-      Sd->mPTTable[Index] = CharC;\r
-    }\r
-\r
-    SetMem (Sd->mPTLen, nn, 0);\r
-\r
-    return 0;\r
-  }\r
-\r
-  Index = 0;\r
-\r
-  while (Index < Number && Index < NPT) {\r
-\r
-    CharC = (UINT16) (Sd->mBitBuf >> (BITBUFSIZ - 3));\r
-\r
-    //\r
-    // If a code length is less than 7, then it is encoded as a 3-bit\r
-    // value. Or it is encoded as a series of "1"s followed by a\r
-    // terminating "0". The number of "1"s = Code length - 4.\r
-    //\r
-    if (CharC == 7) {\r
-      Mask = 1U << (BITBUFSIZ - 1 - 3);\r
-      while (Mask & Sd->mBitBuf) {\r
-        Mask >>= 1;\r
-        CharC += 1;\r
-      }\r
-    }\r
-\r
-    FillBuf (Sd, (UINT16) ((CharC < 7) ? 3 : CharC - 3));\r
-\r
-    Sd->mPTLen[Index++] = (UINT8) CharC;\r
-\r
-    //\r
-    // For Code&Len Set,\r
-    // After the third length of the code length concatenation,\r
-    // a 2-bit value is used to indicated the number of consecutive\r
-    // zero lengths after the third length.\r
-    //\r
-    if (Index == Special) {\r
-      CharC = (UINT16) GetBits (Sd, 2);\r
-      while ((INT16) (--CharC) >= 0 && Index < NPT) {\r
-        Sd->mPTLen[Index++] = 0;\r
-      }\r
-    }\r
-  }\r
-\r
-  while (Index < nn && Index < NPT) {\r
-    Sd->mPTLen[Index++] = 0;\r
-  }\r
-\r
-  return MakeTable (Sd, nn, Sd->mPTLen, 8, Sd->mPTTable);\r
-}\r
-\r
-/**\r
-  Reads code lengths for Char&Len Set.\r
-\r
-  Read in and decode the Char&Len Set Code Length Array, then\r
-  generate the Huffman Code mapping table for the Char&Len Set.\r
-\r
-  @param  Sd the global scratch data\r
-\r
-**/\r
-VOID\r
-ReadCLen (\r
-  SCRATCH_DATA  *Sd\r
-  )\r
-{\r
-  UINT16  Number;\r
-  UINT16  CharC;\r
-  UINT16  Index;\r
-  UINT32  Mask;\r
-\r
-  Number = (UINT16) GetBits (Sd, CBIT);\r
-\r
-  if (Number == 0) {\r
-    //\r
-    // This represents only Huffman code used\r
-    //\r
-    CharC = (UINT16) GetBits (Sd, CBIT);\r
-\r
-    SetMem (Sd->mCLen, NC, 0);\r
-\r
-    for (Index = 0; Index < 4096; Index++) {\r
-      Sd->mCTable[Index] = CharC;\r
-    }\r
-\r
-    return ;\r
-  }\r
-\r
-  Index = 0;\r
-  while (Index < Number && Index < NC) {\r
-    CharC = Sd->mPTTable[Sd->mBitBuf >> (BITBUFSIZ - 8)];\r
-    if (CharC >= NT) {\r
-      Mask = 1U << (BITBUFSIZ - 1 - 8);\r
-\r
-      do {\r
-\r
-        if (Mask & Sd->mBitBuf) {\r
-          CharC = Sd->mRight[CharC];\r
-        } else {\r
-          CharC = Sd->mLeft[CharC];\r
-        }\r
-\r
-        Mask >>= 1;\r
-\r
-      } while (CharC >= NT);\r
-    }\r
-    //\r
-    // Advance what we have read\r
-    //\r
-    FillBuf (Sd, Sd->mPTLen[CharC]);\r
-\r
-    if (CharC <= 2) {\r
-\r
-      if (CharC == 0) {\r
-        CharC = 1;\r
-      } else if (CharC == 1) {\r
-        CharC = (UINT16) (GetBits (Sd, 4) + 3);\r
-      } else if (CharC == 2) {\r
-        CharC = (UINT16) (GetBits (Sd, CBIT) + 20);\r
-      }\r
-\r
-      while ((INT16) (--CharC) >= 0 && Index < NC) {\r
-        Sd->mCLen[Index++] = 0;\r
-      }\r
-\r
-    } else {\r
-\r
-      Sd->mCLen[Index++] = (UINT8) (CharC - 2);\r
-\r
-    }\r
-  }\r
-\r
-  SetMem (Sd->mCLen + Index, NC - Index, 0);\r
-\r
-  MakeTable (Sd, NC, Sd->mCLen, 12, Sd->mCTable);\r
-\r
-  return ;\r
-}\r
-\r
-/**\r
-  Decode a character/length value.\r
-\r
-  Read one value from mBitBuf, Get one code from mBitBuf. If it is at block boundary, generates\r
-  Huffman code mapping table for Extra Set, Code&Len Set and\r
-  Position Set.\r
-\r
-  @param  Sd The global scratch data.\r
-\r
-  @return The value decoded.\r
-\r
-**/\r
-UINT16\r
-DecodeC (\r
-  SCRATCH_DATA  *Sd\r
-  )\r
-{\r
-  UINT16  Index2;\r
-  UINT32  Mask;\r
-\r
-  if (Sd->mBlockSize == 0) {\r
-    //\r
-    // Starting a new block\r
-    // Read BlockSize from block header\r
-    //\r
-    Sd->mBlockSize    = (UINT16) GetBits (Sd, 16);\r
-\r
-    //\r
-    // Read in the Extra Set Code Length Array,\r
-    // Generate the Huffman code mapping table for Extra Set.\r
-    //\r
-    Sd->mBadTableFlag = ReadPTLen (Sd, NT, TBIT, 3);\r
-    if (Sd->mBadTableFlag != 0) {\r
-      return 0;\r
-    }\r
-\r
-    //\r
-    // Read in and decode the Char&Len Set Code Length Array,\r
-    // Generate the Huffman code mapping table for Char&Len Set.\r
-    //\r
-    ReadCLen (Sd);\r
-\r
-    //\r
-    // Read in the Position Set Code Length Array,\r
-    // Generate the Huffman code mapping table for the Position Set.\r
-    //\r
-    Sd->mBadTableFlag = ReadPTLen (Sd, MAXNP, Sd->mPBit, (UINT16) (-1));\r
-    if (Sd->mBadTableFlag != 0) {\r
-      return 0;\r
-    }\r
-  }\r
-\r
-  //\r
-  // Get one code according to Code&Set Huffman Table\r
-  //\r
-  Sd->mBlockSize--;\r
-  Index2 = Sd->mCTable[Sd->mBitBuf >> (BITBUFSIZ - 12)];\r
-\r
-  if (Index2 >= NC) {\r
-    Mask = 1U << (BITBUFSIZ - 1 - 12);\r
-\r
-    do {\r
-      if ((Sd->mBitBuf & Mask) != 0) {\r
-        Index2 = Sd->mRight[Index2];\r
-      } else {\r
-        Index2 = Sd->mLeft[Index2];\r
-      }\r
-\r
-      Mask >>= 1;\r
-    } while (Index2 >= NC);\r
-  }\r
-  //\r
-  // Advance what we have read\r
-  //\r
-  FillBuf (Sd, Sd->mCLen[Index2]);\r
-\r
-  return Index2;\r
-}\r
-\r
-/**\r
-  Decode the source data and put the resulting data into the destination buffer.\r
-\r
-  @param  Sd The global scratch data\r
-**/\r
-VOID\r
-Decode (\r
-  SCRATCH_DATA  *Sd\r
-  )\r
-{\r
-  UINT16  BytesRemain;\r
-  UINT32  DataIdx;\r
-  UINT16  CharC;\r
-\r
-  BytesRemain = (UINT16) (-1);\r
-\r
-  DataIdx     = 0;\r
-\r
-  for (;;) {\r
-    //\r
-    // Get one code from mBitBuf\r
-    //\r
-    CharC = DecodeC (Sd);\r
-    if (Sd->mBadTableFlag != 0) {\r
-      goto Done;\r
-    }\r
-\r
-    if (CharC < 256) {\r
-      //\r
-      // Process an Original character\r
-      //\r
-      if (Sd->mOutBuf >= Sd->mOrigSize) {\r
-        goto Done;\r
-      } else {\r
-        //\r
-        // Write orignal character into mDstBase\r
-        //\r
-        Sd->mDstBase[Sd->mOutBuf++] = (UINT8) CharC;\r
-      }\r
-\r
-    } else {\r
-      //\r
-      // Process a Pointer\r
-      //\r
-      CharC       = (UINT16) (CharC - (BIT8 - THRESHOLD));\r
-\r
-      //\r
-      // Get string length\r
-      //\r
-      BytesRemain = CharC;\r
-\r
-      //\r
-      // Locate string position\r
-      //\r
-      DataIdx     = Sd->mOutBuf - DecodeP (Sd) - 1;\r
-\r
-      //\r
-      // Write BytesRemain of bytes into mDstBase\r
-      //\r
-      BytesRemain--;\r
-      while ((INT16) (BytesRemain) >= 0) {\r
-        if (Sd->mOutBuf >= Sd->mOrigSize) {\r
-          goto Done ;\r
-        }\r
-        if (DataIdx >= Sd->mOrigSize) {\r
-          Sd->mBadTableFlag = (UINT16) BAD_TABLE;\r
-          goto Done ;\r
-        }\r
-        Sd->mDstBase[Sd->mOutBuf++] = Sd->mDstBase[DataIdx++];\r
-\r
-        BytesRemain--;\r
-      }\r
-      //\r
-      // Once mOutBuf is fully filled, directly return\r
-      //\r
-      if (Sd->mOutBuf >= Sd->mOrigSize) {\r
-        goto Done ;\r
-      }\r
-    }\r
-  }\r
-\r
-Done:\r
-  return ;\r
-}\r
-\r
-/**\r
-  Given a compressed source buffer, this function retrieves the size of\r
-  the uncompressed buffer and the size of the scratch buffer required\r
-  to decompress the compressed source buffer.\r
-\r
-  Retrieves the size of the uncompressed buffer and the temporary scratch buffer\r
-  required to decompress the buffer specified by Source and SourceSize.\r
-  If the size of the uncompressed buffer or the size of the scratch buffer cannot\r
-  be determined from the compressed data specified by Source and SourceData,\r
-  then RETURN_INVALID_PARAMETER is returned.  Otherwise, the size of the uncompressed\r
-  buffer is returned in DestinationSize, the size of the scratch buffer is returned\r
-  in ScratchSize, and RETURN_SUCCESS is returned.\r
-  This function does not have scratch buffer available to perform a thorough\r
-  checking of the validity of the source data.  It just retrieves the "Original Size"\r
-  field from the beginning bytes of the source data and output it as DestinationSize.\r
-  And ScratchSize is specific to the decompression implementation.\r
-\r
-  If Source is NULL, then ASSERT().\r
-  If DestinationSize is NULL, then ASSERT().\r
-  If ScratchSize is NULL, then ASSERT().\r
-\r
-  @param  Source          The source buffer containing the compressed data.\r
-  @param  SourceSize      The size, in bytes, of the source buffer.\r
-  @param  DestinationSize A pointer to the size, in bytes, of the uncompressed buffer\r
-                          that will be generated when the compressed buffer specified\r
-                          by Source and SourceSize is decompressed..\r
-  @param  ScratchSize     A pointer to the size, in bytes, of the scratch buffer that\r
-                          is required to decompress the compressed buffer specified\r
-                          by Source and SourceSize.\r
-\r
-  @retval  RETURN_SUCCESS The size of the uncompressed data was returned\r
-                          in DestinationSize and the size of the scratch\r
-                          buffer was returned in ScratchSize.\r
-  @retval  RETURN_INVALID_PARAMETER\r
-                          The size of the uncompressed data or the size of\r
-                          the scratch buffer cannot be determined from\r
-                          the compressed data specified by Source\r
-                          and SourceSize.\r
-**/\r
-RETURN_STATUS\r
-EFIAPI\r
-UefiDecompressGetInfo (\r
-  IN  CONST VOID  *Source,\r
-  IN  UINT32      SourceSize,\r
-  OUT UINT32      *DestinationSize,\r
-  OUT UINT32      *ScratchSize\r
-  )\r
-{\r
-  UINT32  CompressedSize;\r
-\r
-  ASSERT (Source != NULL);\r
-  ASSERT (DestinationSize != NULL);\r
-  ASSERT (ScratchSize != NULL);\r
-\r
-  if (SourceSize < 8) {\r
-    return RETURN_INVALID_PARAMETER;\r
-  }\r
-\r
-  CompressedSize   = ReadUnaligned32 ((UINT32 *)Source);\r
-  if (SourceSize < (CompressedSize + 8) || (CompressedSize + 8) < 8) {\r
-    return RETURN_INVALID_PARAMETER;\r
-  }\r
-\r
-  *ScratchSize  = sizeof (SCRATCH_DATA);\r
-  *DestinationSize = ReadUnaligned32 ((UINT32 *)Source + 1);\r
-\r
-  return RETURN_SUCCESS;\r
-}\r
-\r
-/**\r
-  Decompresses a compressed source buffer by EFI or Tiano algorithm.\r
-\r
-  Extracts decompressed data to its original form.\r
-  This function is designed so that the decompression algorithm can be implemented\r
-  without using any memory services.  As a result, this function is not allowed to\r
-  call any memory allocation services in its implementation.  It is the caller's\r
-  responsibility to allocate and free the Destination and Scratch buffers.\r
-  If the compressed source data specified by Source is successfully decompressed\r
-  into Destination, then RETURN_SUCCESS is returned.  If the compressed source data\r
-  specified by Source is not in a valid compressed data format,\r
-  then RETURN_INVALID_PARAMETER is returned.\r
-\r
-  If Source is NULL, then ASSERT().\r
-  If Destination is NULL, then ASSERT().\r
-  If the required scratch buffer size > 0 and Scratch is NULL, then ASSERT().\r
-\r
-  @param  Source      The source buffer containing the compressed data.\r
-  @param  Destination The destination buffer to store the decompressed data\r
-  @param  Scratch     A temporary scratch buffer that is used to perform the decompression.\r
-                      This is an optional parameter that may be NULL if the\r
-                      required scratch buffer size is 0.\r
-  @param  Version     1 for UEFI Decompress algoruthm, 2 for Tiano Decompess algorithm.\r
-\r
-  @retval  RETURN_SUCCESS Decompression completed successfully, and\r
-                          the uncompressed buffer is returned in Destination.\r
-  @retval  RETURN_INVALID_PARAMETER\r
-                          The source buffer specified by Source is corrupted\r
-                          (not in a valid compressed format).\r
-**/\r
-RETURN_STATUS\r
-EFIAPI\r
-UefiTianoDecompress (\r
-  IN CONST VOID  *Source,\r
-  IN OUT VOID    *Destination,\r
-  IN OUT VOID    *Scratch,\r
-  IN UINT32      Version\r
-  )\r
-{\r
-  UINT32           CompSize;\r
-  UINT32           OrigSize;\r
-  SCRATCH_DATA     *Sd;\r
-  CONST UINT8      *Src;\r
-  UINT8            *Dst;\r
-\r
-  ASSERT (Source != NULL);\r
-  ASSERT (Destination != NULL);\r
-  ASSERT (Scratch != NULL);\r
-\r
-  Src     = Source;\r
-  Dst     = Destination;\r
-\r
-  Sd = (SCRATCH_DATA *) Scratch;\r
-\r
-  CompSize  = Src[0] + (Src[1] << 8) + (Src[2] << 16) + (Src[3] << 24);\r
-  OrigSize  = Src[4] + (Src[5] << 8) + (Src[6] << 16) + (Src[7] << 24);\r
-\r
-  //\r
-  // If compressed file size is 0, return\r
-  //\r
-  if (OrigSize == 0) {\r
-    return RETURN_SUCCESS;\r
-  }\r
-\r
-  Src = Src + 8;\r
-\r
-  SetMem (Sd, sizeof (SCRATCH_DATA), 0);\r
-\r
-  //\r
-  // The length of the field 'Position Set Code Length Array Size' in Block Header.\r
-  // For UEFI 2.0 de/compression algorithm(Version 1), mPBit = 4\r
-  // For Tiano de/compression algorithm(Version 2), mPBit = 5\r
-  //\r
-  switch (Version) {\r
-    case 1 :\r
-      Sd->mPBit = 4;\r
-      break;\r
-    case 2 :\r
-      Sd->mPBit = 5;\r
-      break;\r
-    default:\r
-      ASSERT (FALSE);\r
-  }\r
-  Sd->mSrcBase  = (UINT8 *)Src;\r
-  Sd->mDstBase  = Dst;\r
-  //\r
-  // CompSize and OrigSize are calculated in bytes\r
-  //\r
-  Sd->mCompSize = CompSize;\r
-  Sd->mOrigSize = OrigSize;\r
-\r
-  //\r
-  // Fill the first BITBUFSIZ bits\r
-  //\r
-  FillBuf (Sd, BITBUFSIZ);\r
-\r
-  //\r
-  // Decompress it\r
-  //\r
-  Decode (Sd);\r
-\r
-  if (Sd->mBadTableFlag != 0) {\r
-    //\r
-    // Something wrong with the source\r
-    //\r
-    return RETURN_INVALID_PARAMETER;\r
-  }\r
-\r
-  return RETURN_SUCCESS;\r
-}\r
-\r
-/**\r
-  Decompresses a UEFI compressed source buffer.\r
-\r
-  Extracts decompressed data to its original form.\r
-  This function is designed so that the decompression algorithm can be implemented\r
-  without using any memory services.  As a result, this function is not allowed to\r
-  call any memory allocation services in its implementation.  It is the caller's\r
-  responsibility to allocate and free the Destination and Scratch buffers.\r
-  If the compressed source data specified by Source is successfully decompressed\r
-  into Destination, then RETURN_SUCCESS is returned.  If the compressed source data\r
-  specified by Source is not in a valid compressed data format,\r
-  then RETURN_INVALID_PARAMETER is returned.\r
-\r
-  If Source is NULL, then ASSERT().\r
-  If Destination is NULL, then ASSERT().\r
-  If the required scratch buffer size > 0 and Scratch is NULL, then ASSERT().\r
-\r
-  @param  Source      The source buffer containing the compressed data.\r
-  @param  Destination The destination buffer to store the decompressed data\r
-  @param  Scratch     A temporary scratch buffer that is used to perform the decompression.\r
-                      This is an optional parameter that may be NULL if the\r
-                      required scratch buffer size is 0.\r
-\r
-  @retval  RETURN_SUCCESS Decompression completed successfully, and\r
-                          the uncompressed buffer is returned in Destination.\r
-  @retval  RETURN_INVALID_PARAMETER\r
-                          The source buffer specified by Source is corrupted\r
-                          (not in a valid compressed format).\r
-**/\r
-RETURN_STATUS\r
-EFIAPI\r
-UefiDecompress (\r
-  IN CONST VOID  *Source,\r
-  IN OUT VOID    *Destination,\r
-  IN OUT VOID    *Scratch  OPTIONAL\r
-  )\r
-{\r
-  return UefiTianoDecompress (Source, Destination, Scratch, 1);\r
-}\r
-\r
-/**\r
-  Examines a GUIDed section and returns the size of the decoded buffer and the\r
-  size of an optional scratch buffer required to actually decode the data in a GUIDed section.\r
-\r
-  Examines a GUIDed section specified by InputSection.\r
-  If GUID for InputSection does not match the GUID that this handler supports,\r
-  then RETURN_UNSUPPORTED is returned.\r
-  If the required information can not be retrieved from InputSection,\r
-  then RETURN_INVALID_PARAMETER is returned.\r
-  If the GUID of InputSection does match the GUID that this handler supports,\r
-  then the size required to hold the decoded buffer is returned in OututBufferSize,\r
-  the size of an optional scratch buffer is returned in ScratchSize, and the Attributes field\r
-  from EFI_GUID_DEFINED_SECTION header of InputSection is returned in SectionAttribute.\r
-\r
-  If InputSection is NULL, then ASSERT().\r
-  If OutputBufferSize is NULL, then ASSERT().\r
-  If ScratchBufferSize is NULL, then ASSERT().\r
-  If SectionAttribute is NULL, then ASSERT().\r
-\r
-\r
-  @param[in]  InputSection       A pointer to a GUIDed section of an FFS formatted file.\r
-  @param[out] OutputBufferSize   A pointer to the size, in bytes, of an output buffer required\r
-                                 if the buffer specified by InputSection were decoded.\r
-  @param[out] ScratchBufferSize  A pointer to the size, in bytes, required as scratch space\r
-                                 if the buffer specified by InputSection were decoded.\r
-  @param[out] SectionAttribute   A pointer to the attributes of the GUIDed section. See the Attributes\r
-                                 field of EFI_GUID_DEFINED_SECTION in the PI Specification.\r
-\r
-  @retval  RETURN_SUCCESS            The information about InputSection was returned.\r
-  @retval  RETURN_UNSUPPORTED        The section specified by InputSection does not match the GUID this handler supports.\r
-  @retval  RETURN_INVALID_PARAMETER  The information can not be retrieved from the section specified by InputSection.\r
-\r
-**/\r
-RETURN_STATUS\r
-EFIAPI\r
-TianoDecompressGetInfo (\r
-  IN  CONST VOID  *InputSection,\r
-  OUT UINT32      *OutputBufferSize,\r
-  OUT UINT32      *ScratchBufferSize,\r
-  OUT UINT16      *SectionAttribute\r
-  )\r
-\r
-{\r
-  ASSERT (SectionAttribute != NULL);\r
-\r
-  if (InputSection == NULL) {\r
-    return RETURN_INVALID_PARAMETER;\r
-  }\r
-\r
-  if (IS_SECTION2 (InputSection)) {\r
-    if (!CompareGuid (\r
-        &gTianoCustomDecompressGuid,\r
-        &(((EFI_GUID_DEFINED_SECTION2 *) InputSection)->SectionDefinitionGuid))) {\r
-      return RETURN_INVALID_PARAMETER;\r
-    }\r
-    //\r
-    // Get guid attribute of guid section.\r
-    //\r
-    *SectionAttribute = ((EFI_GUID_DEFINED_SECTION2 *) InputSection)->Attributes;\r
-\r
-    //\r
-    // Call Tiano GetInfo to get the required size info.\r
-    //\r
-    return UefiDecompressGetInfo (\r
-             (UINT8 *) InputSection + ((EFI_GUID_DEFINED_SECTION2 *) InputSection)->DataOffset,\r
-             SECTION2_SIZE (InputSection) - ((EFI_GUID_DEFINED_SECTION2 *) InputSection)->DataOffset,\r
-             OutputBufferSize,\r
-             ScratchBufferSize\r
-             );\r
-  } else {\r
-    if (!CompareGuid (\r
-        &gTianoCustomDecompressGuid,\r
-        &(((EFI_GUID_DEFINED_SECTION *) InputSection)->SectionDefinitionGuid))) {\r
-      return RETURN_INVALID_PARAMETER;\r
-    }\r
-    //\r
-    // Get guid attribute of guid section.\r
-    //\r
-    *SectionAttribute = ((EFI_GUID_DEFINED_SECTION *) InputSection)->Attributes;\r
-\r
-    //\r
-    // Call Tiano GetInfo to get the required size info.\r
-    //\r
-    return UefiDecompressGetInfo (\r
-             (UINT8 *) InputSection + ((EFI_GUID_DEFINED_SECTION *) InputSection)->DataOffset,\r
-             SECTION_SIZE (InputSection) - ((EFI_GUID_DEFINED_SECTION *) InputSection)->DataOffset,\r
-             OutputBufferSize,\r
-             ScratchBufferSize\r
-             );\r
-  }\r
-}\r
-\r
-/**\r
-  Decompress a Tiano compressed GUIDed section into a caller allocated output buffer.\r
-\r
-  Decodes the GUIDed section specified by InputSection.\r
-  If GUID for InputSection does not match the GUID that this handler supports, then RETURN_UNSUPPORTED is returned.\r
-  If the data in InputSection can not be decoded, then RETURN_INVALID_PARAMETER is returned.\r
-  If the GUID of InputSection does match the GUID that this handler supports, then InputSection\r
-  is decoded into the buffer specified by OutputBuffer and the authentication status of this\r
-  decode operation is returned in AuthenticationStatus.  If the decoded buffer is identical to the\r
-  data in InputSection, then OutputBuffer is set to point at the data in InputSection.  Otherwise,\r
-  the decoded data will be placed in caller allocated buffer specified by OutputBuffer.\r
-\r
-  If InputSection is NULL, then ASSERT().\r
-  If OutputBuffer is NULL, then ASSERT().\r
-  If ScratchBuffer is NULL and this decode operation requires a scratch buffer, then ASSERT().\r
-  If AuthenticationStatus is NULL, then ASSERT().\r
-\r
-\r
-  @param[in]  InputSection  A pointer to a GUIDed section of an FFS formatted file.\r
-  @param[out] OutputBuffer  A pointer to a buffer that contains the result of a decode operation.\r
-  @param[in] ScratchBuffer  A caller allocated buffer that may be required by this function\r
-                            as a scratch buffer to perform the decode operation.\r
-  @param[out] AuthenticationStatus\r
-                            A pointer to the authentication status of the decoded output buffer.\r
-                            See the definition of authentication status in the EFI_PEI_GUIDED_SECTION_EXTRACTION_PPI\r
-                            section of the PI Specification. EFI_AUTH_STATUS_PLATFORM_OVERRIDE must\r
-                            never be set by this handler.\r
-\r
-  @retval  RETURN_SUCCESS            The buffer specified by InputSection was decoded.\r
-  @retval  RETURN_UNSUPPORTED        The section specified by InputSection does not match the GUID this handler supports.\r
-  @retval  RETURN_INVALID_PARAMETER  The section specified by InputSection can not be decoded.\r
-\r
-**/\r
-RETURN_STATUS\r
-EFIAPI\r
-TianoDecompress (\r
-  IN CONST  VOID    *InputSection,\r
-  OUT       VOID    **OutputBuffer,\r
-  IN        VOID    *ScratchBuffer,        OPTIONAL\r
-  OUT       UINT32  *AuthenticationStatus\r
-  )\r
-{\r
-  ASSERT (OutputBuffer != NULL);\r
-  ASSERT (InputSection != NULL);\r
-\r
-  if (IS_SECTION2 (InputSection)) {\r
-    if (!CompareGuid (\r
-        &gTianoCustomDecompressGuid,\r
-        &(((EFI_GUID_DEFINED_SECTION2 *) InputSection)->SectionDefinitionGuid))) {\r
-      return RETURN_INVALID_PARAMETER;\r
-    }\r
-\r
-    //\r
-    // Set Authentication to Zero.\r
-    //\r
-    *AuthenticationStatus = 0;\r
-\r
-    //\r
-    // Call Tiano Decompress to get the raw data\r
-    //\r
-    return UefiTianoDecompress (\r
-             (UINT8 *) InputSection + ((EFI_GUID_DEFINED_SECTION2 *) InputSection)->DataOffset,\r
-             *OutputBuffer,\r
-             ScratchBuffer,\r
-             2\r
-           );\r
-  } else {\r
-    if (!CompareGuid (\r
-        &gTianoCustomDecompressGuid,\r
-        &(((EFI_GUID_DEFINED_SECTION *) InputSection)->SectionDefinitionGuid))) {\r
-      return RETURN_INVALID_PARAMETER;\r
-    }\r
-\r
-    //\r
-    // Set Authentication to Zero.\r
-    //\r
-    *AuthenticationStatus = 0;\r
-\r
-    //\r
-    // Call Tiano Decompress to get the raw data\r
-    //\r
-    return UefiTianoDecompress (\r
-             (UINT8 *) InputSection + ((EFI_GUID_DEFINED_SECTION *) InputSection)->DataOffset,\r
-             *OutputBuffer,\r
-             ScratchBuffer,\r
-             2\r
-           );\r
-  }\r
-}\r
-\r
-/**\r
-  Registers TianoDecompress and TianoDecompressGetInfo handlers with TianoCustomerDecompressGuid\r
-\r
-  @retval  RETURN_SUCCESS            Register successfully.\r
-  @retval  RETURN_OUT_OF_RESOURCES   No enough memory to store this handler.\r
-**/\r
-RETURN_STATUS\r
-EFIAPI\r
-TianoDecompressLibConstructor (\r
-  VOID\r
-)\r
-{\r
-  return ExtractGuidedSectionRegisterHandlers (\r
-          &gTianoCustomDecompressGuid,\r
-          TianoDecompressGetInfo,\r
-          TianoDecompress\r
-          );\r
-}\r
diff --git a/MdeModulePkg/Library/BaseUefiTianoCustomDecompressLib/BaseUefiTianoCustomDecompressLib.inf b/MdeModulePkg/Library/BaseUefiTianoCustomDecompressLib/BaseUefiTianoCustomDecompressLib.inf
deleted file mode 100644 (file)
index c9c19d6..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-## @file\r
-#  This library instance produces UefiDecompressLib and Tiano Custom decompression algorithm.\r
-#  Tiano custom decompression algorithm shares most of code with Uefi Decompress algorithm.\r
-#\r
-#  Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>\r
-#\r
-#  SPDX-License-Identifier: BSD-2-Clause-Patent\r
-#\r
-##\r
-\r
-[Defines]\r
-  INF_VERSION                    = 0x00010005\r
-  BASE_NAME                      = BaseUefiTianoDecompressLib\r
-  MODULE_UNI_FILE                = BaseUefiTianoDecompressLib.uni\r
-  FILE_GUID                      = d774c4d9-c121-4da3-a5e2-0f317e3c630c\r
-  MODULE_TYPE                    = BASE\r
-  VERSION_STRING                 = 1.0\r
-  LIBRARY_CLASS                  = UefiDecompressLib\r
-  CONSTRUCTOR                    = TianoDecompressLibConstructor\r
-\r
-#\r
-# The following information is for reference only and not required by the build tools.\r
-#\r
-#  VALID_ARCHITECTURES           = IA32 X64 EBC\r
-#\r
-\r
-[Sources]\r
-  BaseUefiTianoCustomDecompressLibInternals.h\r
-  BaseUefiTianoCustomDecompressLib.c\r
-\r
-[Packages]\r
-  MdePkg/MdePkg.dec\r
-  MdeModulePkg/MdeModulePkg.dec\r
-\r
-[LibraryClasses]\r
-  BaseLib\r
-  DebugLib\r
-  BaseMemoryLib\r
-  ExtractGuidedSectionLib\r
-\r
-[Guids]\r
-  gTianoCustomDecompressGuid      ## PRODUCES  ## UNDEFINED # specifies tiano custom decompress algorithm.\r
-\r
diff --git a/MdeModulePkg/Library/BaseUefiTianoCustomDecompressLib/BaseUefiTianoCustomDecompressLibInternals.h b/MdeModulePkg/Library/BaseUefiTianoCustomDecompressLib/BaseUefiTianoCustomDecompressLibInternals.h
deleted file mode 100644 (file)
index 846abdb..0000000
+++ /dev/null
@@ -1,214 +0,0 @@
-/** @file\r
-  Internal data structure and interfaces defintions for UEFI and Tiano Decompress Library.\r
-\r
-  Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>\r
-  SPDX-License-Identifier: BSD-2-Clause-Patent\r
-\r
-**/\r
-\r
-#ifndef __BASE_UEFI_TIANO_CUSTOM_DECOMPRESS_LIB_INTERNALS_H__\r
-#define __BASE_UEFI_TIANO_CUSTOM_DECOMPRESS_LIB_INTERNALS_H__\r
-\r
-#include <PiPei.h>\r
-\r
-#include <Guid/TianoDecompress.h>\r
-#include <Library/BaseLib.h>\r
-#include <Library/UefiDecompressLib.h>\r
-#include <Library/DebugLib.h>\r
-#include <Library/BaseMemoryLib.h>\r
-#include <Library/ExtractGuidedSectionLib.h>\r
-\r
-//\r
-// Decompression algorithm begins here\r
-//\r
-#define BITBUFSIZ 32\r
-#define MAXMATCH  256\r
-#define THRESHOLD 3\r
-#define CODE_BIT  16\r
-#define BAD_TABLE - 1\r
-\r
-//\r
-// C: Char&Len Set; P: Position Set; T: exTra Set\r
-//\r
-#define NC      (0xff + MAXMATCH + 2 - THRESHOLD)\r
-#define CBIT    9\r
-#define MAXPBIT 5\r
-#define TBIT    5\r
-#define MAXNP   ((1U << MAXPBIT) - 1)\r
-#define NT      (CODE_BIT + 3)\r
-#if NT > MAXNP\r
-#define NPT NT\r
-#else\r
-#define NPT MAXNP\r
-#endif\r
-\r
-typedef struct {\r
-  UINT8   *mSrcBase;  // Starting address of compressed data\r
-  UINT8   *mDstBase;  // Starting address of decompressed data\r
-  UINT32  mOutBuf;\r
-  UINT32  mInBuf;\r
-\r
-  UINT16  mBitCount;\r
-  UINT32  mBitBuf;\r
-  UINT32  mSubBitBuf;\r
-  UINT16  mBlockSize;\r
-  UINT32  mCompSize;\r
-  UINT32  mOrigSize;\r
-\r
-  UINT16  mBadTableFlag;\r
-\r
-  UINT16  mLeft[2 * NC - 1];\r
-  UINT16  mRight[2 * NC - 1];\r
-  UINT8   mCLen[NC];\r
-  UINT8   mPTLen[NPT];\r
-  UINT16  mCTable[4096];\r
-  UINT16  mPTTable[256];\r
-\r
-  ///\r
-  /// The length of the field 'Position Set Code Length Array Size' in Block Header.\r
-  /// For UEFI 2.0 de/compression algorithm, mPBit = 4\r
-  /// For Tiano de/compression algorithm, mPBit = 5\r
-  ///\r
-  UINT8   mPBit;\r
-} SCRATCH_DATA;\r
-\r
-/**\r
-  Read NumOfBit of bits from source into mBitBuf.\r
-\r
-  Shift mBitBuf NumOfBits left. Read in NumOfBits of bits from source.\r
-\r
-  @param  Sd        The global scratch data\r
-  @param  NumOfBits The number of bits to shift and read.\r
-\r
-**/\r
-VOID\r
-FillBuf (\r
-  IN  SCRATCH_DATA  *Sd,\r
-  IN  UINT16        NumOfBits\r
-  );\r
-\r
-/**\r
-  Get NumOfBits of bits out from mBitBuf.\r
-\r
-  Get NumOfBits of bits out from mBitBuf. Fill mBitBuf with subsequent\r
-  NumOfBits of bits from source. Returns NumOfBits of bits that are\r
-  popped out.\r
-\r
-  @param  Sd        The global scratch data.\r
-  @param  NumOfBits The number of bits to pop and read.\r
-\r
-  @return The bits that are popped out.\r
-\r
-**/\r
-UINT32\r
-GetBits (\r
-  IN  SCRATCH_DATA  *Sd,\r
-  IN  UINT16        NumOfBits\r
-  );\r
-\r
-/**\r
-  Creates Huffman Code mapping table according to code length array.\r
-\r
-  Creates Huffman Code mapping table for Extra Set, Char&Len Set\r
-  and Position Set according to code length array.\r
-\r
-  @param  Sd        The global scratch data\r
-  @param  NumOfChar Number of symbols in the symbol set\r
-  @param  BitLen    Code length array\r
-  @param  TableBits The width of the mapping table\r
-  @param  Table     The table to be created.\r
-\r
-  @retval  0 OK.\r
-  @retval  BAD_TABLE The table is corrupted.\r
-\r
-**/\r
-UINT16\r
-MakeTable (\r
-  IN  SCRATCH_DATA  *Sd,\r
-  IN  UINT16        NumOfChar,\r
-  IN  UINT8         *BitLen,\r
-  IN  UINT16        TableBits,\r
-  OUT UINT16        *Table\r
-  );\r
-\r
-/**\r
-  Decodes a position value.\r
-\r
-  Get a position value according to Position Huffman Table.\r
-\r
-  @param  Sd the global scratch data\r
-\r
-  @return The position value decoded.\r
-\r
-**/\r
-UINT32\r
-DecodeP (\r
-  IN  SCRATCH_DATA  *Sd\r
-  );\r
-\r
-/**\r
-  Reads code lengths for the Extra Set or the Position Set.\r
-\r
-  Read in the Extra Set or Position Set Length Array, then\r
-  generate the Huffman code mapping for them.\r
-\r
-  @param  Sd      The global scratch data.\r
-  @param  nn      Number of symbols.\r
-  @param  nbit    Number of bits needed to represent nn.\r
-  @param  Special The special symbol that needs to be taken care of.\r
-\r
-  @retval  0 OK.\r
-  @retval  BAD_TABLE Table is corrupted.\r
-\r
-**/\r
-UINT16\r
-ReadPTLen (\r
-  IN  SCRATCH_DATA  *Sd,\r
-  IN  UINT16        nn,\r
-  IN  UINT16        nbit,\r
-  IN  UINT16        Special\r
-  );\r
-\r
-/**\r
-  Reads code lengths for Char&Len Set.\r
-\r
-  Read in and decode the Char&Len Set Code Length Array, then\r
-  generate the Huffman Code mapping table for the Char&Len Set.\r
-\r
-  @param  Sd the global scratch data\r
-\r
-**/\r
-VOID\r
-ReadCLen (\r
-  SCRATCH_DATA  *Sd\r
-  );\r
-\r
-/**\r
-  Decode a character/length value.\r
-\r
-  Read one value from mBitBuf, Get one code from mBitBuf. If it is at block boundary, generates\r
-  Huffman code mapping table for Extra Set, Code&Len Set and\r
-  Position Set.\r
-\r
-  @param  Sd The global scratch data.\r
-\r
-  @return The value decoded.\r
-\r
-**/\r
-UINT16\r
-DecodeC (\r
-  SCRATCH_DATA  *Sd\r
-  );\r
-\r
-/**\r
-  Decode the source data and put the resulting data into the destination buffer.\r
-\r
-  @param  Sd The global scratch data\r
-\r
-**/\r
-VOID\r
-Decode (\r
-  SCRATCH_DATA  *Sd\r
-  );\r
-\r
-#endif\r
diff --git a/MdeModulePkg/Library/BaseUefiTianoCustomDecompressLib/BaseUefiTianoDecompressLib.uni b/MdeModulePkg/Library/BaseUefiTianoCustomDecompressLib/BaseUefiTianoDecompressLib.uni
deleted file mode 100644 (file)
index c384dac..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-// /** @file\r
-// This library instance produces UefiDecompressLib and Tiano Custom decompression algorithm.\r
-//\r
-// Tiano custom decompression algorithm shares most of code with Uefi Decompress algorithm.\r
-//\r
-// Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.<BR>\r
-//\r
-// SPDX-License-Identifier: BSD-2-Clause-Patent\r
-//\r
-// **/\r
-\r
-\r
-#string STR_MODULE_ABSTRACT             #language en-US "Produces UefiDecompressLib and Tiano Custom decompression algorithm"\r
-\r
-#string STR_MODULE_DESCRIPTION          #language en-US "Tiano custom decompression algorithm shares most of the code with the UEFI Decompress algorithm."\r
-\r
index b2fab4a65e5662603c2c803aa6020dc82b8368a0..0a9fcddecc4c67fe8d5cbbaf269801bc90fb7509 100644 (file)
   gLzmaCustomDecompressGuid      = { 0xEE4E5898, 0x3914, 0x4259, { 0x9D, 0x6E, 0xDC, 0x7B, 0xD7, 0x94, 0x03, 0xCF }}\r
   gLzmaF86CustomDecompressGuid     = { 0xD42AE6BD, 0x1352, 0x4bfb, { 0x90, 0x9A, 0xCA, 0x72, 0xA6, 0xEA, 0xE8, 0x89 }}\r
 \r
-  ## GUID indicates the tiano custom compress/decompress algorithm.\r
-  #  Include/Guid/TianoDecompress.h\r
-  gTianoCustomDecompressGuid     = { 0xA31280AD, 0x481E, 0x41B6, { 0x95, 0xE8, 0x12, 0x7F, 0x4C, 0x98, 0x47, 0x79 }}\r
-\r
   ## Include/Guid/TtyTerm.h\r
   gEfiTtyTermGuid                = { 0x7d916d80, 0x5bb1, 0x458c, {0xa4, 0x8f, 0xe2, 0x5f, 0xdd, 0x51, 0xef, 0x94 }}\r
 \r
index a8b9d8d027f6bd5411c5e8cee4c22fabf50bd9c4..ac7111dea169517d7e5e97d193343972f5924ee9 100644 (file)
   MdeModulePkg/Library/BaseBmpSupportLib/BaseBmpSupportLib.inf\r
   MdeModulePkg/Library/DisplayUpdateProgressLibGraphics/DisplayUpdateProgressLibGraphics.inf\r
   MdeModulePkg/Library/DisplayUpdateProgressLibText/DisplayUpdateProgressLibText.inf\r
-  MdeModulePkg/Library/BaseUefiTianoCustomDecompressLib/BaseUefiTianoCustomDecompressLib.inf\r
 \r
   MdeModulePkg/Universal/BdsDxe/BdsDxe.inf\r
   MdeModulePkg/Application/BootManagerMenuApp/BootManagerMenuApp.inf\r