[edk2,edk2-non-osi,v3,1/2] Hisilicon/D06: Add binary modules

Message ID 20180816121614.48850-2-ming.huang@linaro.org
State Superseded
Headers show
Series
  • Upload D06 binary modules
Related show

Commit Message

Ming Huang Aug. 16, 2018, 12:16 p.m.
Description per Module:
GetInfoFromBmc:
  Get board infomation from BMC and install a protocal.
IoInitDxe:
  Serdes initialization and PCIe port initialization and SMMU workaround.
IpmiInterfacePei:
  Install PEI ipmi interface PPI.
IpmiInterfaceDxe:
  Install DXE ipmi interface protocal.
IpmiMiscOpDxe:
  Send some OEM info to BMC via ipmi protocal.
IpmiWatchdogDxe:
  Manage the out of band watchdog timer in BMC.
SnpDxe:
  Snp driver for D06 debug on board net card.
PcieRasInitDxe:
  Initialize PCIe RAS function for all PCIe root port and end point.
RasInitDxe:
  Configure and enable RAS.
SfcDxeDriver:
  SPI flash driver.
SasDxeDriver:
  SAS driver for on board SAS controller.
UefiSmi:
  VGA driver for on board VGA device(SM750).
TransSmbiosInfo:
  Send SMBIOS infomation to BMC via ipmi.
OemAddressMapD06:
  Provide function for configuration components of chips.
MemoryInitPeim:
  Peim for memory initialization.
Hi1620SerdesLib:
  Library for initialization Hi1620 serdes.
LpcLib:
  Include LpcInit, LpcByteWrite and LpcByteRead functions.
PlatformSysCtrlLibHi1620:
  Provide Misc function needed by other modules.
FVMAIN_SEC.Fv:
  A Fv for SEC binary.
bl1.bin/fip.bin:
  Trusted Firmware module.

Build commit infomation:
edk2:           871c57754c1d
edk2-platforms: 820af7623c42
HwPkg:          a7947372749e
TrustedFirmware: cccdae6ff768
Tools:          6b286b119422

Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Ming Huang <ming.huang@linaro.org>

---
 Platform/Hisilicon/D06/Drivers/GetInfoFromBmc/GetInfoFromBmc.inf                       |  26 ++++++++++++
 Platform/Hisilicon/D06/Drivers/IoInitDxe/IoInitDxe.inf                                 |  27 ++++++++++++
 Platform/Hisilicon/D06/Drivers/Ipmi/IpmiInterfaceDxe/IpmiInterfaceDxe.inf              |  28 +++++++++++++
 Platform/Hisilicon/D06/Drivers/Ipmi/IpmiInterfacePei/IpmiInterfacePei.inf              |  27 ++++++++++++
 Platform/Hisilicon/D06/Drivers/IpmiMiscOpDxe/IpmiMiscOpDxe.inf                         |  27 ++++++++++++
 Platform/Hisilicon/D06/Drivers/IpmiWatchdogDxe/IpmiWatchdogDxe.inf                     |  27 ++++++++++++
 Platform/Hisilicon/D06/Drivers/Net/SnpHi1620NewDxe/SnpDxe.inf                          |  27 ++++++++++++
 Platform/Hisilicon/D06/Drivers/PcieRasInitDxe/PcieRasInitDxe.inf                       |  26 ++++++++++++
 Platform/Hisilicon/D06/Drivers/RasInitDxe/RasInitDxe.inf                               |  25 ++++++++++++
 Platform/Hisilicon/D06/Drivers/SFC/SfcDxeDriver.inf                                    |  27 ++++++++++++
 Platform/Hisilicon/D06/Drivers/Sas/SasDxeDriver.inf                                    |  27 ++++++++++++
 Platform/Hisilicon/D06/Drivers/Sm750Dxe/UefiSmi.inf                                    |  32 +++++++++++++++
 Platform/Hisilicon/D06/Drivers/TransferSmbiosInfo/TransSmbiosInfo.inf                  |  26 ++++++++++++
 Platform/Hisilicon/D06/Library/OemAddressMapD06/OemAddressMapD06.inf                   |  40 ++++++++++++++++++
 Platform/Hisilicon/D06/MemoryInitPei/MemoryInitPeim.inf                                |  28 +++++++++++++
 Silicon/Hisilicon/Hi1620/Library/Hi1620Serdes/Hi1620SerdesLib.inf                      |  43 ++++++++++++++++++++
 Silicon/Hisilicon/Hi1620/Library/LpcLibHi1620/LpcLib.inf                               |  39 ++++++++++++++++++
 Silicon/Hisilicon/Hi1620/Library/PlatformSysCtrlLibHi1620/PlatformSysCtrlLibHi1620.inf |  43 ++++++++++++++++++++
 Platform/Hisilicon/D06/Drivers/GetInfoFromBmc/GetInfoFromBmc.depex                     | Bin 0 -> 18 bytes
 Platform/Hisilicon/D06/Drivers/GetInfoFromBmc/GetInfoFromBmc.efi                       | Bin 0 -> 20480 bytes
 Platform/Hisilicon/D06/Drivers/IoInitDxe/IoInitDxe.depex                               | Bin 0 -> 18 bytes
 Platform/Hisilicon/D06/Drivers/IoInitDxe/IoInitDxe.efi                                 | Bin 0 -> 229216 bytes
 Platform/Hisilicon/D06/Drivers/Ipmi/IpmiInterfaceDxe/IpmiInterfaceDxe.depex            | Bin 0 -> 18 bytes
 Platform/Hisilicon/D06/Drivers/Ipmi/IpmiInterfaceDxe/IpmiInterfaceDxe.efi              | Bin 0 -> 29440 bytes
 Platform/Hisilicon/D06/Drivers/Ipmi/IpmiInterfacePei/IpmiInterfacePei.depex            | Bin 0 -> 18 bytes
 Platform/Hisilicon/D06/Drivers/Ipmi/IpmiInterfacePei/IpmiInterfacePei.efi              | Bin 0 -> 21664 bytes
 Platform/Hisilicon/D06/Drivers/IpmiMiscOpDxe/IpmiMiscOp.depex                          | Bin 0 -> 36 bytes
 Platform/Hisilicon/D06/Drivers/IpmiMiscOpDxe/IpmiMiscOp.efi                            | Bin 0 -> 24736 bytes
 Platform/Hisilicon/D06/Drivers/IpmiWatchdogDxe/IpmiWatchdogDxe.depex                   | Bin 0 -> 36 bytes
 Platform/Hisilicon/D06/Drivers/IpmiWatchdogDxe/IpmiWatchdogDxe.efi                     | Bin 0 -> 20768 bytes
 Platform/Hisilicon/D06/Drivers/Net/SnpHi1620NewDxe/SnpPV600Dxe.efi                     | Bin 0 -> 75040 bytes
 Platform/Hisilicon/D06/Drivers/PcieRasInitDxe/PcieRasInitDxe.depex                     | Bin 0 -> 36 bytes
 Platform/Hisilicon/D06/Drivers/PcieRasInitDxe/PcieRasInitDxe.efi                       | Bin 0 -> 21248 bytes
 Platform/Hisilicon/D06/Drivers/RasInitDxe/RasInitDxe.efi                               | Bin 0 -> 17984 bytes
 Platform/Hisilicon/D06/Drivers/SFC/SFCDriver.depex                                     | Bin 0 -> 36 bytes
 Platform/Hisilicon/D06/Drivers/SFC/SFCDriver.efi                                       | Bin 0 -> 262144 bytes
 Platform/Hisilicon/D06/Drivers/Sas/SasDriverDxe.depex                                  | Bin 0 -> 216 bytes
 Platform/Hisilicon/D06/Drivers/Sas/SasDriverDxe.efi                                    | Bin 0 -> 221312 bytes
 Platform/Hisilicon/D06/Drivers/Sm750Dxe/SmiGraphicsOutput.efi                          | Bin 0 -> 38208 bytes
 Platform/Hisilicon/D06/Drivers/TransferSmbiosInfo/TransSmbiosInfo.depex                | Bin 0 -> 36 bytes
 Platform/Hisilicon/D06/Drivers/TransferSmbiosInfo/TransSmbiosInfo.efi                  | Bin 0 -> 20288 bytes
 Platform/Hisilicon/D06/Library/OemAddressMapD06/OemAddressMapD06.lib                   | Bin 0 -> 61892 bytes
 Platform/Hisilicon/D06/MemoryInitPei/MemoryInit.depex                                  | Bin 0 -> 18 bytes
 Platform/Hisilicon/D06/MemoryInitPei/MemoryInit.efi                                    | Bin 0 -> 297696 bytes
 Platform/Hisilicon/D06/Sec/FVMAIN_SEC.Fv                                               | Bin 0 -> 1048576 bytes
 Platform/Hisilicon/D06/bl1.bin                                                         | Bin 0 -> 12432 bytes
 Platform/Hisilicon/D06/fip.bin                                                         | Bin 0 -> 113578 bytes
 Silicon/Hisilicon/Hi1620/Library/Hi1620Serdes/Hi1620SerdesLib.lib                      | Bin 0 -> 1319320 bytes
 Silicon/Hisilicon/Hi1620/Library/LpcLibHi1620/LpcLib.lib                               | Bin 0 -> 15406 bytes
 Silicon/Hisilicon/Hi1620/Library/PlatformSysCtrlLibHi1620/PlatformSysCtrlLibHi1620.lib | Bin 0 -> 356032 bytes
 50 files changed, 545 insertions(+)

diff --git a/Platform/Hisilicon/D06/Drivers/GetInfoFromBmc/GetInfoFromBmc.depex b/Platform/Hisilicon/D06/Drivers/GetInfoFromBmc/GetInfoFromBmc.depex
new file mode 100644
index 0000000..0dc7ce4
Binary files /dev/null and b/Platform/Hisilicon/D06/Drivers/GetInfoFromBmc/GetInfoFromBmc.depex differ
diff --git a/Platform/Hisilicon/D06/Drivers/GetInfoFromBmc/GetInfoFromBmc.efi b/Platform/Hisilicon/D06/Drivers/GetInfoFromBmc/GetInfoFromBmc.efi
new file mode 100644
index 0000000..ca8240b
Binary files /dev/null and b/Platform/Hisilicon/D06/Drivers/GetInfoFromBmc/GetInfoFromBmc.efi differ
diff --git a/Platform/Hisilicon/D06/Drivers/IoInitDxe/IoInitDxe.depex b/Platform/Hisilicon/D06/Drivers/IoInitDxe/IoInitDxe.depex
new file mode 100644
index 0000000..0dc7ce4
Binary files /dev/null and b/Platform/Hisilicon/D06/Drivers/IoInitDxe/IoInitDxe.depex differ
diff --git a/Platform/Hisilicon/D06/Drivers/IoInitDxe/IoInitDxe.efi b/Platform/Hisilicon/D06/Drivers/IoInitDxe/IoInitDxe.efi
new file mode 100644
index 0000000..afd3ebe
Binary files /dev/null and b/Platform/Hisilicon/D06/Drivers/IoInitDxe/IoInitDxe.efi differ
diff --git a/Platform/Hisilicon/D06/Drivers/Ipmi/IpmiInterfaceDxe/IpmiInterfaceDxe.depex b/Platform/Hisilicon/D06/Drivers/Ipmi/IpmiInterfaceDxe/IpmiInterfaceDxe.depex
new file mode 100644
index 0000000..0dc7ce4
Binary files /dev/null and b/Platform/Hisilicon/D06/Drivers/Ipmi/IpmiInterfaceDxe/IpmiInterfaceDxe.depex differ
diff --git a/Platform/Hisilicon/D06/Drivers/Ipmi/IpmiInterfaceDxe/IpmiInterfaceDxe.efi b/Platform/Hisilicon/D06/Drivers/Ipmi/IpmiInterfaceDxe/IpmiInterfaceDxe.efi
new file mode 100644
index 0000000..9a0fa32
Binary files /dev/null and b/Platform/Hisilicon/D06/Drivers/Ipmi/IpmiInterfaceDxe/IpmiInterfaceDxe.efi differ
diff --git a/Platform/Hisilicon/D06/Drivers/Ipmi/IpmiInterfacePei/IpmiInterfacePei.depex b/Platform/Hisilicon/D06/Drivers/Ipmi/IpmiInterfacePei/IpmiInterfacePei.depex
new file mode 100644
index 0000000..53e435a
Binary files /dev/null and b/Platform/Hisilicon/D06/Drivers/Ipmi/IpmiInterfacePei/IpmiInterfacePei.depex differ
diff --git a/Platform/Hisilicon/D06/Drivers/Ipmi/IpmiInterfacePei/IpmiInterfacePei.efi b/Platform/Hisilicon/D06/Drivers/Ipmi/IpmiInterfacePei/IpmiInterfacePei.efi
new file mode 100644
index 0000000..c76061d
Binary files /dev/null and b/Platform/Hisilicon/D06/Drivers/Ipmi/IpmiInterfacePei/IpmiInterfacePei.efi differ
diff --git a/Platform/Hisilicon/D06/Drivers/IpmiMiscOpDxe/IpmiMiscOp.depex b/Platform/Hisilicon/D06/Drivers/IpmiMiscOpDxe/IpmiMiscOp.depex
new file mode 100644
index 0000000..d4ce5b8
Binary files /dev/null and b/Platform/Hisilicon/D06/Drivers/IpmiMiscOpDxe/IpmiMiscOp.depex differ
diff --git a/Platform/Hisilicon/D06/Drivers/IpmiMiscOpDxe/IpmiMiscOp.efi b/Platform/Hisilicon/D06/Drivers/IpmiMiscOpDxe/IpmiMiscOp.efi
new file mode 100644
index 0000000..bd88bf6
Binary files /dev/null and b/Platform/Hisilicon/D06/Drivers/IpmiMiscOpDxe/IpmiMiscOp.efi differ
diff --git a/Platform/Hisilicon/D06/Drivers/IpmiWatchdogDxe/IpmiWatchdogDxe.depex b/Platform/Hisilicon/D06/Drivers/IpmiWatchdogDxe/IpmiWatchdogDxe.depex
new file mode 100644
index 0000000..d4ce5b8
Binary files /dev/null and b/Platform/Hisilicon/D06/Drivers/IpmiWatchdogDxe/IpmiWatchdogDxe.depex differ
diff --git a/Platform/Hisilicon/D06/Drivers/IpmiWatchdogDxe/IpmiWatchdogDxe.efi b/Platform/Hisilicon/D06/Drivers/IpmiWatchdogDxe/IpmiWatchdogDxe.efi
new file mode 100644
index 0000000..6573ceb
Binary files /dev/null and b/Platform/Hisilicon/D06/Drivers/IpmiWatchdogDxe/IpmiWatchdogDxe.efi differ
diff --git a/Platform/Hisilicon/D06/Drivers/Net/SnpHi1620NewDxe/SnpPV600Dxe.efi b/Platform/Hisilicon/D06/Drivers/Net/SnpHi1620NewDxe/SnpPV600Dxe.efi
new file mode 100644
index 0000000..c9d6c27
Binary files /dev/null and b/Platform/Hisilicon/D06/Drivers/Net/SnpHi1620NewDxe/SnpPV600Dxe.efi differ
diff --git a/Platform/Hisilicon/D06/Drivers/PcieRasInitDxe/PcieRasInitDxe.depex b/Platform/Hisilicon/D06/Drivers/PcieRasInitDxe/PcieRasInitDxe.depex
new file mode 100644
index 0000000..7c01109
Binary files /dev/null and b/Platform/Hisilicon/D06/Drivers/PcieRasInitDxe/PcieRasInitDxe.depex differ
diff --git a/Platform/Hisilicon/D06/Drivers/PcieRasInitDxe/PcieRasInitDxe.efi b/Platform/Hisilicon/D06/Drivers/PcieRasInitDxe/PcieRasInitDxe.efi
new file mode 100644
index 0000000..0e22237
Binary files /dev/null and b/Platform/Hisilicon/D06/Drivers/PcieRasInitDxe/PcieRasInitDxe.efi differ
diff --git a/Platform/Hisilicon/D06/Drivers/RasInitDxe/RasInitDxe.efi b/Platform/Hisilicon/D06/Drivers/RasInitDxe/RasInitDxe.efi
new file mode 100644
index 0000000..19adbc9
Binary files /dev/null and b/Platform/Hisilicon/D06/Drivers/RasInitDxe/RasInitDxe.efi differ
diff --git a/Platform/Hisilicon/D06/Drivers/SFC/SFCDriver.depex b/Platform/Hisilicon/D06/Drivers/SFC/SFCDriver.depex
new file mode 100644
index 0000000..e5c4b16
Binary files /dev/null and b/Platform/Hisilicon/D06/Drivers/SFC/SFCDriver.depex differ
diff --git a/Platform/Hisilicon/D06/Drivers/SFC/SFCDriver.efi b/Platform/Hisilicon/D06/Drivers/SFC/SFCDriver.efi
new file mode 100644
index 0000000..474075a
Binary files /dev/null and b/Platform/Hisilicon/D06/Drivers/SFC/SFCDriver.efi differ
diff --git a/Platform/Hisilicon/D06/Drivers/Sas/SasDriverDxe.depex b/Platform/Hisilicon/D06/Drivers/Sas/SasDriverDxe.depex
new file mode 100644
index 0000000..1a5bc1e
Binary files /dev/null and b/Platform/Hisilicon/D06/Drivers/Sas/SasDriverDxe.depex differ
diff --git a/Platform/Hisilicon/D06/Drivers/Sas/SasDriverDxe.efi b/Platform/Hisilicon/D06/Drivers/Sas/SasDriverDxe.efi
new file mode 100644
index 0000000..ac6bae7
Binary files /dev/null and b/Platform/Hisilicon/D06/Drivers/Sas/SasDriverDxe.efi differ
diff --git a/Platform/Hisilicon/D06/Drivers/Sm750Dxe/SmiGraphicsOutput.efi b/Platform/Hisilicon/D06/Drivers/Sm750Dxe/SmiGraphicsOutput.efi
new file mode 100644
index 0000000..93d7102
Binary files /dev/null and b/Platform/Hisilicon/D06/Drivers/Sm750Dxe/SmiGraphicsOutput.efi differ
diff --git a/Platform/Hisilicon/D06/Drivers/TransferSmbiosInfo/TransSmbiosInfo.depex b/Platform/Hisilicon/D06/Drivers/TransferSmbiosInfo/TransSmbiosInfo.depex
new file mode 100644
index 0000000..d4ce5b8
Binary files /dev/null and b/Platform/Hisilicon/D06/Drivers/TransferSmbiosInfo/TransSmbiosInfo.depex differ
diff --git a/Platform/Hisilicon/D06/Drivers/TransferSmbiosInfo/TransSmbiosInfo.efi b/Platform/Hisilicon/D06/Drivers/TransferSmbiosInfo/TransSmbiosInfo.efi
new file mode 100644
index 0000000..c01b08c
Binary files /dev/null and b/Platform/Hisilicon/D06/Drivers/TransferSmbiosInfo/TransSmbiosInfo.efi differ
diff --git a/Platform/Hisilicon/D06/Library/OemAddressMapD06/OemAddressMapD06.lib b/Platform/Hisilicon/D06/Library/OemAddressMapD06/OemAddressMapD06.lib
new file mode 100644
index 0000000..7e1f6b2
Binary files /dev/null and b/Platform/Hisilicon/D06/Library/OemAddressMapD06/OemAddressMapD06.lib differ
diff --git a/Platform/Hisilicon/D06/MemoryInitPei/MemoryInit.depex b/Platform/Hisilicon/D06/MemoryInitPei/MemoryInit.depex
new file mode 100644
index 0000000..53e435a
Binary files /dev/null and b/Platform/Hisilicon/D06/MemoryInitPei/MemoryInit.depex differ
diff --git a/Platform/Hisilicon/D06/MemoryInitPei/MemoryInit.efi b/Platform/Hisilicon/D06/MemoryInitPei/MemoryInit.efi
new file mode 100644
index 0000000..5fba353
Binary files /dev/null and b/Platform/Hisilicon/D06/MemoryInitPei/MemoryInit.efi differ
diff --git a/Platform/Hisilicon/D06/Sec/FVMAIN_SEC.Fv b/Platform/Hisilicon/D06/Sec/FVMAIN_SEC.Fv
new file mode 100644
index 0000000..247e44e
Binary files /dev/null and b/Platform/Hisilicon/D06/Sec/FVMAIN_SEC.Fv differ
diff --git a/Platform/Hisilicon/D06/bl1.bin b/Platform/Hisilicon/D06/bl1.bin
new file mode 100644
index 0000000..d291359
Binary files /dev/null and b/Platform/Hisilicon/D06/bl1.bin differ
diff --git a/Platform/Hisilicon/D06/fip.bin b/Platform/Hisilicon/D06/fip.bin
new file mode 100644
index 0000000..a72bef8
Binary files /dev/null and b/Platform/Hisilicon/D06/fip.bin differ
diff --git a/Silicon/Hisilicon/Hi1620/Library/Hi1620Serdes/Hi1620SerdesLib.lib b/Silicon/Hisilicon/Hi1620/Library/Hi1620Serdes/Hi1620SerdesLib.lib
new file mode 100644
index 0000000..955de99
Binary files /dev/null and b/Silicon/Hisilicon/Hi1620/Library/Hi1620Serdes/Hi1620SerdesLib.lib differ
diff --git a/Silicon/Hisilicon/Hi1620/Library/LpcLibHi1620/LpcLib.lib b/Silicon/Hisilicon/Hi1620/Library/LpcLibHi1620/LpcLib.lib
new file mode 100644
index 0000000..f4ea789
Binary files /dev/null and b/Silicon/Hisilicon/Hi1620/Library/LpcLibHi1620/LpcLib.lib differ
diff --git a/Silicon/Hisilicon/Hi1620/Library/PlatformSysCtrlLibHi1620/PlatformSysCtrlLibHi1620.lib b/Silicon/Hisilicon/Hi1620/Library/PlatformSysCtrlLibHi1620/PlatformSysCtrlLibHi1620.lib
new file mode 100644
index 0000000..50d453a
Binary files /dev/null and b/Silicon/Hisilicon/Hi1620/Library/PlatformSysCtrlLibHi1620/PlatformSysCtrlLibHi1620.lib differ
-- 
2.17.0

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel

Patch

diff --git a/Platform/Hisilicon/D06/Drivers/GetInfoFromBmc/GetInfoFromBmc.inf b/Platform/Hisilicon/D06/Drivers/GetInfoFromBmc/GetInfoFromBmc.inf
new file mode 100644
index 0000000..0ddb8f3
--- /dev/null
+++ b/Platform/Hisilicon/D06/Drivers/GetInfoFromBmc/GetInfoFromBmc.inf
@@ -0,0 +1,26 @@ 
+#/** @file
+#
+#    Copyright (c) 2018, Hisilicon Limited. All rights reserved.
+#    Copyright (c) 2018, Linaro Limited. All rights reserved.
+#
+#    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.
+#
+#**/
+
+[Defines]
+  INF_VERSION                    = 0x0001001A
+  BASE_NAME                      = GetInfoFromBmc
+  FILE_GUID                      = d6f3d102-f2f7-42ba-8e26-ba34fac721fa
+  MODULE_TYPE                    = DXE_DRIVER
+  VERSION_STRING                 = 1.0
+  ENTRY_POINT                    = GetBmcInfoDriverEntry
+
+[Binaries.AARCH64]
+  PE32|GetInfoFromBmc.efi|*
+  DXE_DEPEX|GetInfoFromBmc.depex|*
diff --git a/Platform/Hisilicon/D06/Drivers/IoInitDxe/IoInitDxe.inf b/Platform/Hisilicon/D06/Drivers/IoInitDxe/IoInitDxe.inf
new file mode 100644
index 0000000..2f60930
--- /dev/null
+++ b/Platform/Hisilicon/D06/Drivers/IoInitDxe/IoInitDxe.inf
@@ -0,0 +1,27 @@ 
+#/** @file
+#
+#    Copyright (c) 2016 - 2018, Hisilicon Limited. All rights reserved.
+#    Copyright (c) 2016 - 2018, Linaro Limited. All rights reserved.
+#
+#    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.
+#
+#**/
+
+
+[Defines]
+  INF_VERSION                    = 0x0001001A
+  BASE_NAME                      = IoInitDxe
+  FILE_GUID                      = 92e003e6-ac08-4e7a-b7f5-1b1fe093e8ce
+  MODULE_TYPE                    = UEFI_DRIVER
+  VERSION_STRING                 = 1.0
+  ENTRY_POINT                    = IoInitDxeEntry
+
+[Binaries]
+  PE32|IoInitDxe.efi|*
+  DXE_DEPEX|IoInitDxe.depex|*
diff --git a/Platform/Hisilicon/D06/Drivers/Ipmi/IpmiInterfaceDxe/IpmiInterfaceDxe.inf b/Platform/Hisilicon/D06/Drivers/Ipmi/IpmiInterfaceDxe/IpmiInterfaceDxe.inf
new file mode 100644
index 0000000..93f1b24
--- /dev/null
+++ b/Platform/Hisilicon/D06/Drivers/Ipmi/IpmiInterfaceDxe/IpmiInterfaceDxe.inf
@@ -0,0 +1,28 @@ 
+#/** @file
+#
+#    Copyright (c) 2018, Hisilicon Limited. All rights reserved.
+#    Copyright (c) 2018, Linaro Limited. All rights reserved.
+#
+#    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.
+#
+#**/
+
+
+[Defines]
+  INF_VERSION                    = 0x0001001A
+  BASE_NAME                      = IpmiInterfaceDxe
+  FILE_GUID                      = e848f65c-cb9f-449c-8943-65093180c794
+  MODULE_TYPE                    = DXE_DRIVER
+  VERSION_STRING                 = 1.0
+
+[Binaries.AARCH64]
+  PE32|IpmiInterfaceDxe.efi|*
+  DXE_DEPEX|IpmiInterfaceDxe.depex|*
+
+
diff --git a/Platform/Hisilicon/D06/Drivers/Ipmi/IpmiInterfacePei/IpmiInterfacePei.inf b/Platform/Hisilicon/D06/Drivers/Ipmi/IpmiInterfacePei/IpmiInterfacePei.inf
new file mode 100644
index 0000000..39e0197
--- /dev/null
+++ b/Platform/Hisilicon/D06/Drivers/Ipmi/IpmiInterfacePei/IpmiInterfacePei.inf
@@ -0,0 +1,27 @@ 
+#/** @file
+#
+#    Copyright (c) 2016 - 2018, Hisilicon Limited. All rights reserved.
+#    Copyright (c) 2016 - 2018, Linaro Limited. All rights reserved.
+#
+#    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.
+#
+#**/
+
+
+[Defines]
+  INF_VERSION                    = 0x0001001A
+  BASE_NAME                      = IpmiInterfacePei
+  FILE_GUID                      = 580502d5-f5a3-4e7b-9c70-65fbc3bcd368
+  MODULE_TYPE                    = PEIM
+  VERSION_STRING                 = 1.0
+  ENTRY_POINT                    = IpmiInterfacePeiEntry
+
+[Binaries.AARCH64]
+  TE|IpmiInterfacePei.efi|*
+  PEI_DEPEX|IpmiInterfacePei.depex|*
diff --git a/Platform/Hisilicon/D06/Drivers/IpmiMiscOpDxe/IpmiMiscOpDxe.inf b/Platform/Hisilicon/D06/Drivers/IpmiMiscOpDxe/IpmiMiscOpDxe.inf
new file mode 100644
index 0000000..94bc210
--- /dev/null
+++ b/Platform/Hisilicon/D06/Drivers/IpmiMiscOpDxe/IpmiMiscOpDxe.inf
@@ -0,0 +1,27 @@ 
+#/** @file
+#
+#    Copyright (c) 2018, Hisilicon Limited. All rights reserved.
+#    Copyright (c) 2018, Linaro Limited. All rights reserved.
+#
+#    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.
+#
+#**/
+
+
+[Defines]
+  INF_VERSION                    = 0x0001001A
+  BASE_NAME                      = IpmiMiscOp
+  FILE_GUID                      = 2769b929-2745-4ceb-bf57-b8b77afd889c
+  MODULE_TYPE                    = DXE_DRIVER
+  VERSION_STRING                 = 1.0
+  ENTRY_POINT                    = IpmiMiscOpEntry
+
+[Binaries.AARCH64]
+  PE32|IpmiMiscOp.efi|*
+  DXE_DEPEX|IpmiMiscOp.depex|*
diff --git a/Platform/Hisilicon/D06/Drivers/IpmiWatchdogDxe/IpmiWatchdogDxe.inf b/Platform/Hisilicon/D06/Drivers/IpmiWatchdogDxe/IpmiWatchdogDxe.inf
new file mode 100644
index 0000000..2821acc
--- /dev/null
+++ b/Platform/Hisilicon/D06/Drivers/IpmiWatchdogDxe/IpmiWatchdogDxe.inf
@@ -0,0 +1,27 @@ 
+#/** @file
+#
+#    Copyright (c) 2018, Hisilicon Limited. All rights reserved.
+#    Copyright (c) 2018, Linaro Limited. All rights reserved.
+#
+#    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.
+#
+#**/
+
+
+[Defines]
+  INF_VERSION                    = 0x0001001A
+  BASE_NAME                      = IpmiWatchdogDxe
+  FILE_GUID                      = 320df638-30ce-43a9-831b-752532b894df
+  MODULE_TYPE                    = DXE_DRIVER
+  VERSION_STRING                 = 1.0
+  ENTRY_POINT                    = InitializeWatchdogDxeEntry
+
+[Binaries.AARCH64]
+  PE32|IpmiWatchdogDxe.efi|*
+  DXE_DEPEX|IpmiWatchdogDxe.depex|*
diff --git a/Platform/Hisilicon/D06/Drivers/Net/SnpHi1620NewDxe/SnpDxe.inf b/Platform/Hisilicon/D06/Drivers/Net/SnpHi1620NewDxe/SnpDxe.inf
new file mode 100644
index 0000000..6d228fa
--- /dev/null
+++ b/Platform/Hisilicon/D06/Drivers/Net/SnpHi1620NewDxe/SnpDxe.inf
@@ -0,0 +1,27 @@ 
+#/** @file
+#
+#    Copyright (c) 2018, Hisilicon Limited. All rights reserved.
+#    Copyright (c) 2018, Linaro Limited. All rights reserved.
+#
+#    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.
+#
+#**/
+
+[Defines]
+  INF_VERSION                = 0x0001001A
+  BASE_NAME                  = SnpPV600Dxe
+  FILE_GUID                  = da125140-6cf1-426f-807f-85e6962144ac
+  MODULE_TYPE                = UEFI_DRIVER
+  VERSION_STRING             = 1.0
+  ENTRY_POINT                = InitializeSnpPV600Driver
+  UNLOAD_IMAGE               = NetLibDefaultUnload
+
+[Binaries.AARCH64]
+  PE32|SnpPV600Dxe.efi
+
diff --git a/Platform/Hisilicon/D06/Drivers/PcieRasInitDxe/PcieRasInitDxe.inf b/Platform/Hisilicon/D06/Drivers/PcieRasInitDxe/PcieRasInitDxe.inf
new file mode 100644
index 0000000..c853fe4
--- /dev/null
+++ b/Platform/Hisilicon/D06/Drivers/PcieRasInitDxe/PcieRasInitDxe.inf
@@ -0,0 +1,26 @@ 
+## @file
+#
+#  Component description file PCI Ras Init driver.
+#  Copyright (c) 2018, Hisilicon Limited. All rights reserved.
+#  Copyright (c) 2018, Linaro Limited. All rights reserved.
+#
+#  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.
+##
+
+[Defines]
+  INF_VERSION                = 0x0001001A
+  BASE_NAME                  = PcieRasInitDxe
+  FILE_GUID                  = f301927a-017a-4f63-b412-4e10f72395ed
+  MODULE_TYPE                = DXE_DRIVER
+  VERSION_STRING             = 1.0
+  ENTRY_POINT                = InitializePcieRas
+
+[Binaries.AARCH64]
+  PE32|PcieRasInitDxe.efi|*
+  DXE_DEPEX|PcieRasInitDxe.depex|*
diff --git a/Platform/Hisilicon/D06/Drivers/RasInitDxe/RasInitDxe.inf b/Platform/Hisilicon/D06/Drivers/RasInitDxe/RasInitDxe.inf
new file mode 100644
index 0000000..f436a1b
--- /dev/null
+++ b/Platform/Hisilicon/D06/Drivers/RasInitDxe/RasInitDxe.inf
@@ -0,0 +1,25 @@ 
+## @file
+#
+#  Component description file PCI Ras Init driver.
+#  Copyright (c) 2018, Hisilicon Limited. All rights reserved.
+#  Copyright (c) 2018, Linaro Limited. All rights reserved.
+#
+#  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.
+##
+
+[Defines]
+  INF_VERSION                = 0x0001001A
+  BASE_NAME                  = RasInitDxe
+  FILE_GUID                  = cb655a58-a090-429b-b324-3efa7a583546
+  MODULE_TYPE                = DXE_DRIVER
+  VERSION_STRING             = 1.0
+  ENTRY_POINT                = RasInitEntry
+
+[Binaries.AARCH64]
+  PE32|RasInitDxe.efi|*
diff --git a/Platform/Hisilicon/D06/Drivers/SFC/SfcDxeDriver.inf b/Platform/Hisilicon/D06/Drivers/SFC/SfcDxeDriver.inf
new file mode 100644
index 0000000..22e68ea
--- /dev/null
+++ b/Platform/Hisilicon/D06/Drivers/SFC/SfcDxeDriver.inf
@@ -0,0 +1,27 @@ 
+#/** @file
+#
+#    Copyright (c) 2018, Hisilicon Limited. All rights reserved.
+#    Copyright (c) 2018, Linaro Limited. All rights reserved.
+#
+#    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.
+#
+#**/
+
+[Defines]
+  INF_VERSION                    = 0x0001001A
+  BASE_NAME                      = SFCDriver
+  FILE_GUID                      = 5cfeb794-3e2b-4647-a24c-3a6cbc1fd9b6
+  MODULE_TYPE                    = DXE_DRIVER
+  VERSION_STRING                 = 1.0
+  ENTRY_POINT                    = SFCInitialize
+
+[Binaries.AARCH64]
+  PE32|SFCDriver.efi|*
+  DXE_DEPEX|SFCDriver.depex|*
+
diff --git a/Platform/Hisilicon/D06/Drivers/Sas/SasDxeDriver.inf b/Platform/Hisilicon/D06/Drivers/Sas/SasDxeDriver.inf
new file mode 100644
index 0000000..2264e80
--- /dev/null
+++ b/Platform/Hisilicon/D06/Drivers/Sas/SasDxeDriver.inf
@@ -0,0 +1,27 @@ 
+#/** @file
+#
+#    Copyright (c) 2016 - 2018, Hisilicon Limited. All rights reserved.
+#    Copyright (c) 2016 - 2018, Linaro Limited. All rights reserved.
+#
+#    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.
+#
+#**/
+
+
+[Defines]
+  INF_VERSION                    = 0x0001001A
+  BASE_NAME                      = SasDriverDxe
+  FILE_GUID                      = 86791da8-ab4a-49c5-95b9-e850332aca81
+  MODULE_TYPE                    = UEFI_DRIVER
+  VERSION_STRING                 = 1.0
+  ENTRY_POINT                    = SasDriverInitialize
+
+[Binaries]
+  PE32|SasDriverDxe.efi|*
+  DXE_DEPEX|SasDriverDxe.depex
diff --git a/Platform/Hisilicon/D06/Drivers/Sm750Dxe/UefiSmi.inf b/Platform/Hisilicon/D06/Drivers/Sm750Dxe/UefiSmi.inf
new file mode 100644
index 0000000..19befc1
--- /dev/null
+++ b/Platform/Hisilicon/D06/Drivers/Sm750Dxe/UefiSmi.inf
@@ -0,0 +1,32 @@ 
+#/** @file
+#
+#    Copyright (c) 2018, Hisilicon Limited. All rights reserved.
+#    Copyright (c) 2018, Linaro Limited. All rights reserved.
+#
+#    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.
+#
+#**/
+
+
+[Defines]
+  INF_VERSION          = 0x0001001A
+  BASE_NAME            = SmiGraphicsOutput
+  FILE_GUID            = 02b187e4-b6eb-4952-ba28-16c9af377a36
+  MODULE_TYPE          = UEFI_DRIVER
+  VERSION_STRING       = 1.0
+
+  PCI_VENDOR_ID        = 0x126F
+  PCI_DEVICE_ID        = 0x0750
+  PCI_CLASS_CODE       = 0x030000
+  PCI_REVISION         = 0xA1
+  COMPRESS             = TRUE
+
+[Binaries.AARCH64]
+  PE32|SmiGraphicsOutput.efi|*
+
diff --git a/Platform/Hisilicon/D06/Drivers/TransferSmbiosInfo/TransSmbiosInfo.inf b/Platform/Hisilicon/D06/Drivers/TransferSmbiosInfo/TransSmbiosInfo.inf
new file mode 100644
index 0000000..9e93e23
--- /dev/null
+++ b/Platform/Hisilicon/D06/Drivers/TransferSmbiosInfo/TransSmbiosInfo.inf
@@ -0,0 +1,26 @@ 
+#/** @file
+#
+#    Copyright (c) 2018, Hisilicon Limited. All rights reserved.
+#    Copyright (c) 2018, Linaro Limited. All rights reserved.
+#
+#    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.
+#
+#**/
+
+[Defines]
+  INF_VERSION                    = 0x0001001A
+  BASE_NAME                      = TransSmbiosInfo
+  FILE_GUID                      = 28b38fff-bd02-4e8b-b420-3baf10840a5f
+  MODULE_TYPE                    = DXE_DRIVER
+  VERSION_STRING                 = 1.0
+  ENTRY_POINT                    = TransferSmbiosInfoToBMC
+
+[Binaries.AARCH64]
+  PE32|TransSmbiosInfo.efi|*
+  DXE_DEPEX|TransSmbiosInfo.depex|*
diff --git a/Platform/Hisilicon/D06/Library/OemAddressMapD06/OemAddressMapD06.inf b/Platform/Hisilicon/D06/Library/OemAddressMapD06/OemAddressMapD06.inf
new file mode 100644
index 0000000..3a553e6
--- /dev/null
+++ b/Platform/Hisilicon/D06/Library/OemAddressMapD06/OemAddressMapD06.inf
@@ -0,0 +1,40 @@ 
+#/** @file
+#
+#    Copyright (c) 2018, Hisilicon Limited. All rights reserved.
+#    Copyright (c) 2018, Linaro Limited. All rights reserved.
+#
+#    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.
+#
+#**/
+
+
+[Defines]
+  INF_VERSION                    = 0x0001001A
+  BASE_NAME                      = OemAddressMapD05
+  FILE_GUID                      = 64a05b8e-6e6d-4384-8c25-2e9720e1f9da
+  MODULE_TYPE                    = BASE
+  VERSION_STRING                 = 1.0
+  LIBRARY_CLASS                  = OemAddressMapLib
+
+
+[Binaries.AARCH64]
+  LIB|OemAddressMapD06.lib|*
+
+[Packages]
+  ArmPkg/ArmPkg.dec
+  MdeModulePkg/MdeModulePkg.dec
+  MdePkg/MdePkg.dec
+  Silicon/Hisilicon/HisiPkg.dec
+
+[LibraryClasses]
+  CpldIoLib
+
+[FixedPcd]
+  gHisiTokenSpaceGuid.PcdNORFlashBase
+
diff --git a/Platform/Hisilicon/D06/MemoryInitPei/MemoryInitPeim.inf b/Platform/Hisilicon/D06/MemoryInitPei/MemoryInitPeim.inf
new file mode 100644
index 0000000..b099878
--- /dev/null
+++ b/Platform/Hisilicon/D06/MemoryInitPei/MemoryInitPeim.inf
@@ -0,0 +1,28 @@ 
+#/** @file
+#
+#  Copyright (c) 2011-2014, ARM Ltd. All rights reserved.<BR>
+#  Copyright (c) 2016 - 2018, Hisilicon Limited. All rights reserved.<BR>
+#  Copyright (c) 2016 - 2018, Linaro Limited. 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.
+#
+#  Based on the files under ArmPlatformPkg/MemoryInitPei/
+#
+#**/
+
+[Defines]
+  INF_VERSION                    = 0x0001001A
+  BASE_NAME                      = MemoryInit
+  FILE_GUID                      = bf4e76a5-75aa-4fc4-b211-71a30141f420
+  MODULE_TYPE                    = PEIM
+  VERSION_STRING                 = 1.0
+  ENTRY_POINT                    = InitializeMemory
+
+[Binaries.AARCH64]
+  TE|MemoryInit.efi|*
+  PEI_DEPEX|MemoryInit.depex
diff --git a/Silicon/Hisilicon/Hi1620/Library/Hi1620Serdes/Hi1620SerdesLib.inf b/Silicon/Hisilicon/Hi1620/Library/Hi1620Serdes/Hi1620SerdesLib.inf
new file mode 100644
index 0000000..60de63f
--- /dev/null
+++ b/Silicon/Hisilicon/Hi1620/Library/Hi1620Serdes/Hi1620SerdesLib.inf
@@ -0,0 +1,43 @@ 
+#/** @file
+#
+#    Copyright (c) 2018, Hisilicon Limited. All rights reserved.
+#    Copyright (c) 2018, Linaro Limited. All rights reserved.
+#
+#    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.
+#
+#**/
+
+[Defines]
+  INF_VERSION                    = 0x0001001A
+  BASE_NAME                      = Hi1620SerdesLib
+  FILE_GUID                      = 1deeae34-0534-48e4-88e4-564a66599d6a
+  MODULE_TYPE                    = BASE
+  VERSION_STRING                 = 1.0
+  LIBRARY_CLASS                  = SerdesLib
+
+[Binaries.common]
+  LIB|Hi1620SerdesLib.lib
+
+[Packages]
+  MdeModulePkg/MdeModulePkg.dec
+  MdePkg/MdePkg.dec
+  Silicon/Hisilicon/HisiPkg.dec
+
+[LibraryClasses]
+  BaseLib
+  BaseMemoryLib
+  DebugLib
+  IoLib
+  OemMiscLib
+  PlatformSysCtrlLib
+  TimerLib
+
+[FixedPcd]
+  gHisiTokenSpaceGuid.PcdIsMPBoot
+  gHisiTokenSpaceGuid.PcdSerDesFlowCtrlFlag
diff --git a/Silicon/Hisilicon/Hi1620/Library/LpcLibHi1620/LpcLib.inf b/Silicon/Hisilicon/Hi1620/Library/LpcLibHi1620/LpcLib.inf
new file mode 100644
index 0000000..eadc941
--- /dev/null
+++ b/Silicon/Hisilicon/Hi1620/Library/LpcLibHi1620/LpcLib.inf
@@ -0,0 +1,39 @@ 
+#******************************************************************************
+#
+#    Copyright (c) 2018, Hisilicon Limited. All rights reserved.
+#    Copyright (c) 2018, Linaro Limited. All rights reserved.
+#
+#    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.
+#
+#**/
+
+
+[Defines]
+  INF_VERSION                    = 0x0001001A
+  BASE_NAME                      = LpcLib
+  FILE_GUID                      = 17cf6de7-8ed6-4dcc-b408-7e0e8a9421d7
+  MODULE_TYPE                    = BASE
+  VERSION_STRING                 = 1.0
+  LIBRARY_CLASS                  = LpcLib
+
+[Binaries.AARCH64]
+  LIB|LpcLib.lib|*
+
+[Packages]
+  MdeModulePkg/MdeModulePkg.dec
+  MdePkg/MdePkg.dec
+  Silicon/Hisilicon/HisiPkg.dec
+
+[LibraryClasses]
+  ArmLib
+  BaseLib
+  DebugLib
+  IoLib
+  TimerLib
+  PlatformSysCtrlLib
diff --git a/Silicon/Hisilicon/Hi1620/Library/PlatformSysCtrlLibHi1620/PlatformSysCtrlLibHi1620.inf b/Silicon/Hisilicon/Hi1620/Library/PlatformSysCtrlLibHi1620/PlatformSysCtrlLibHi1620.inf
new file mode 100644
index 0000000..9186361
--- /dev/null
+++ b/Silicon/Hisilicon/Hi1620/Library/PlatformSysCtrlLibHi1620/PlatformSysCtrlLibHi1620.inf
@@ -0,0 +1,43 @@ 
+#/** @file
+#
+#    Copyright (c) 2018, Hisilicon Limited. All rights reserved.
+#    Copyright (c) 2018, Linaro Limited. All rights reserved.
+#
+#    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.
+#
+#**/
+
+[Defines]
+  INF_VERSION                    = 0x0001001A
+  BASE_NAME                      = PlatformSysCtrlLibHi1620
+  FILE_GUID                      = 26db9c9f-0e58-4fb6-969d-3e83e9e82b05
+  MODULE_TYPE                    = BASE
+  VERSION_STRING                 = 1.0
+  LIBRARY_CLASS                  = PlatformSysCtrlLib
+
+[Binaries.AARCH64]
+ LIB|PlatformSysCtrlLibHi1620.lib|*
+
+[Packages]
+  ArmPkg/ArmPkg.dec
+  MdeModulePkg/MdeModulePkg.dec
+  MdePkg/MdePkg.dec
+  Silicon/Hisilicon/HisiPkg.dec
+
+[LibraryClasses]
+  ArmLib
+  IoLib
+  LpcLib
+  OemAddressMapLib
+  OemMiscLib
+  PcdLib
+
+[FixedPcd]
+  gHisiTokenSpaceGuid.PcdPlatformDefaultPackageType
+  gHisiTokenSpaceGuid.PcdTrustedFirmwareEnable