[Linaro-uefi,linaro-uefi,v1,15/32] Hisilicon D03: support APEI feature

Message ID 1505829398-52214-16-git-send-email-heyi.guo@linaro.org
State New
Headers show
Series
  • Update D03/D05 binary for edk update and fix some error.
Related show

Commit Message

gary guo Sept. 19, 2017, 1:56 p.m.
From: Ming Huang <waip23@foxmail.com>

Add APEI driver

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Chenhui Sun <sunchenhui@huawei.com>
---
 Chips/Hisilicon/HisiPkg.dec                        |  16 +++++++++++++
 .../Binary/D03/Drivers/Apei/AcpiApei.depex         | Bin 0 -> 54 bytes
 .../Hisilicon/Binary/D03/Drivers/Apei/AcpiApei.efi | Bin 0 -> 9408 bytes
 .../Hisilicon/Binary/D03/Drivers/Apei/AcpiApei.inf |  26 +++++++++++++++++++++
 Platforms/Hisilicon/D03/D03.fdf                    |   1 +
 5 files changed, 43 insertions(+)
 create mode 100644 Platforms/Hisilicon/Binary/D03/Drivers/Apei/AcpiApei.depex
 create mode 100644 Platforms/Hisilicon/Binary/D03/Drivers/Apei/AcpiApei.efi
 create mode 100644 Platforms/Hisilicon/Binary/D03/Drivers/Apei/AcpiApei.inf

Patch

diff --git a/Chips/Hisilicon/HisiPkg.dec b/Chips/Hisilicon/HisiPkg.dec
index 2c02e14..023d784 100644
--- a/Chips/Hisilicon/HisiPkg.dec
+++ b/Chips/Hisilicon/HisiPkg.dec
@@ -21,6 +21,9 @@ 
 
 [Includes]
   Include
+  Hi1610/Hi1610AcpiTables/
+  Hi1616/D05AcpiTables/
+  Pv660/Pv660AcpiTables/
 
 [Ppis]
   gIpmiInterfacePpiGuid = {0x28ae4d88, 0xb658, 0x46b9, {0xa0, 0xe7, 0xd4, 0x95, 0xe2, 0xe8, 0x97, 0xf}}
@@ -37,12 +40,25 @@ 
   gBmcInfoProtocolGuid = {0x43fa6ffd, 0x35e4, 0x479e, {0xab, 0xec, 0x5, 0x3, 0xf6, 0x48, 0x0, 0xf5}}
   gSataEnableFlagProtocolGuid = {0xc2b3c770, 0x8b4a, 0x4796, {0xb2, 0xcf, 0x1d, 0xee, 0x44, 0xd0, 0x32, 0xf3}}
   gPlatformSasProtocolGuid = {0x40e9829f, 0x3a2c, 0x479a, {0x9a, 0x93, 0x45, 0x7d, 0x13, 0x50, 0x96, 0x5d}}
+  gEfiApeiBertProtocolGuid = {0x40e98200, 0x3a2c, 0x479a, {0x9a, 0x93, 0x45, 0x7d, 0x13, 0x50, 0x96, 0x5d}}
+  gEfiApeiHestProtocolGuid = { 0xb3fa54ee, 0x3729, 0x4942, { 0xb5, 0x36, 0x7e, 0xa3, 0xe0, 0x5e, 0xa, 0x8a }}
 
 [Guids]
   gHisiTokenSpaceGuid = {0xc8bc553e, 0x12bf, 0x11e6, {0x97, 0x4f, 0x87, 0xf7, 0x7c, 0xfd, 0x52, 0x1d}}
 
   gHisiEfiMemoryMapGuid  = {0xf8870015, 0x6994, 0x4b98, {0x95, 0xa2, 0xbd, 0x56, 0xda, 0x91, 0xc0, 0x7f}}
   gVersionInfoHobGuid = {0xe13a14c, 0x859c, 0x4f22, {0x82, 0xbd, 0x18, 0xe, 0xe1, 0x42, 0x12, 0xbf}}
+  #
+  # APEI Support
+  #
+  gEfiCperArmProcessorSectionTypeGuid   = { 0xe19e3d16, 0xbc11, 0x11e4, { 0x9c, 0xaa, 0xc2, 0x05, 0x1d, 0x5d, 0x46, 0xb0 }}
+  gEfiCperFirmwareErrorSectionTypeGuid          = { 0x81212a96, 0x09ed, 0x4996, { 0x94, 0x71, 0x8d, 0x72, 0x9c, 0x8e, 0x69, 0xed }}
+  gEfiCperPciBusSectionTypeGuid                 = { 0xc5753963, 0x3b84, 0x4095, { 0xbf, 0x78, 0xed, 0xda, 0xd3, 0xf9, 0xc9, 0xdd }}
+  gEfiCperPciDevSectionTypeGuid                 = { 0xeb5e4685, 0xca66, 0x4769, { 0xb6, 0xa2, 0x26, 0x06, 0x8b, 0x00, 0x13, 0x26 }}
+  gEfiCperPcieSectionTypeGuid                   = { 0xd995e954, 0xbbc1, 0x430f, { 0xad, 0x91, 0xb4, 0x4d, 0xcb, 0x3c, 0x6f, 0x35 }}
+  gEfiCperPlatformMemory2SectionTypeGuid        = { 0x61EC04FC, 0x48E6, 0xD813, { 0x25, 0xC9, 0x8D, 0xAA, 0x44, 0x75, 0x0B, 0x12 }}
+  gEfiCperPlatformMemorySectionTypeGuid         = { 0xa5bc1114, 0x6f64, 0x4ede, { 0xb8, 0x63, 0x3e, 0x83, 0xed, 0x7c, 0x83, 0xb1 }}
+  gEfiCperProcessorGenericSectionTypeGuid       = { 0x9876ccad, 0x47b4, 0x4bdb, { 0xb6, 0x5e, 0x16, 0xf1, 0x93, 0xc4, 0xf3, 0xdb }}
 
 [LibraryClasses]
   PlatformSysCtrlLib|Include/Library/PlatformSysCtrlLib.h
diff --git a/Platforms/Hisilicon/Binary/D03/Drivers/Apei/AcpiApei.depex b/Platforms/Hisilicon/Binary/D03/Drivers/Apei/AcpiApei.depex
new file mode 100644
index 0000000000000000000000000000000000000000..163dbbe18c94d23e0100234e66f0f561bc7c891e
GIT binary patch
literal 54
zcmV-60LlLX-D}|g2Vtg0d$L-be#IwT0*(lm>)+4DNxn<j2BoqNh648RqZ3Ld@ILb3
M-o+9$FEj%K2<b%`c>n+a

literal 0
HcmV?d00001

diff --git a/Platforms/Hisilicon/Binary/D03/Drivers/Apei/AcpiApei.efi b/Platforms/Hisilicon/Binary/D03/Drivers/Apei/AcpiApei.efi
new file mode 100644
index 0000000000000000000000000000000000000000..6358de232ab07f25291a23aab918e48a418e1fb8
GIT binary patch
literal 9408
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
Td-m@+wCC6!{~n#%<DdTlii>!3

literal 0
HcmV?d00001

diff --git a/Platforms/Hisilicon/Binary/D03/Drivers/Apei/AcpiApei.inf b/Platforms/Hisilicon/Binary/D03/Drivers/Apei/AcpiApei.inf
new file mode 100644
index 0000000..6e51a1d
--- /dev/null
+++ b/Platforms/Hisilicon/Binary/D03/Drivers/Apei/AcpiApei.inf
@@ -0,0 +1,26 @@ 
+#/** @file
+#
+#    Copyright (c) 2017, Hisilicon Limited. All rights reserved.
+#    Copyright (c) 2017, 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                    = 0x00010019
+  BASE_NAME                      = AcpiApei
+  FILE_GUID                      = E4630F5E-EBC2-FD3a-86BB-3CFDC4398C5F
+  MODULE_TYPE                    = UEFI_DRIVER
+  VERSION_STRING                 = 1.0
+
+[Binaries]
+   PE32|AcpiApei.efi|*
+
diff --git a/Platforms/Hisilicon/D03/D03.fdf b/Platforms/Hisilicon/D03/D03.fdf
index ff65af3..6d21ffe 100644
--- a/Platforms/Hisilicon/D03/D03.fdf
+++ b/Platforms/Hisilicon/D03/D03.fdf
@@ -238,6 +238,7 @@  READ_LOCK_STATUS   = TRUE
   INF RuleOverride=ACPITABLE OpenPlatformPkg/Chips/Hisilicon/Hi1610/Hi1610AcpiTables/AcpiTablesHi1610.inf
   INF OpenPlatformPkg/Chips/Hisilicon/Drivers/AcpiPlatformDxe/AcpiPlatformDxe.inf
 
+  INF OpenPlatformPkg/Platforms/Hisilicon/Binary/D03/Drivers/Apei/AcpiApei.inf
   #
   #Network
   #