[edk2-devel] [edk2-platforms][PATCH v2 0/5] Platform/Sgi: Add platform support for firmware first error handling

Omkar Anand Kulkarni omkar.kulkarni at arm.com
Mon Jul 26 14:51:42 UTC 2021


Gentle reminder to review this patch series.

Regards,
Omkar

> Changes since v1:
> - Added Platform Error Handler DXE driver.
> - Move the ACPI header values to common DSC include file.
> - Rebased to the latest upstream code.
> 
> This patch series introduces platform support for RAS using Firmware First
> error handling. Firmware first error handling on ARM Neoverse reference
> design platforms is achieved using HEST[1] and SDEI[2] ACPI tables.
> 
> For doing so the Platform Error handler DXE driver is introduced. This driver
> is integral part of the firmware first error handling framework in EDK2. SDEI
> being the notification mechanism used to communicate the platform errors
> to OSPM, it builds and installs the SDEI ACPI table. Also installs the HEST table
> which is already created as part of firmware first framework in EDK2.
> 
> This series does provide a reference implementation to leverage the
> firmware first framework by implementing a platform MM driver for
> Dynamic Memory Controller DMC[3] that has RAS feature enabled. This
> driver mainly handles
> following:
> - Implements the Hest Error Source Descriptor protocol introduced as part of
>   firmware first framework in EDK2. Publishes the 1-bit ECC DRAM error
> sources
>   as GHESv2[4] type error source descriptors.
> - For any 1-bit CE that occurs on DRAM it reads DMC error record registers
> and
>   populates a error status block (CPER)[5] of Memory Type error[6].
> 
> References:
> [1] : ACPI 6.3, Table 18-382, Hardware Error Source Table [2] : SDEI Platform
> Design Document, revision b, 10 Appendix C, ACPI table
>       definitions for SDEI
> [3] : DMC620 Dynamic Memory Controller, revision r1p0 [4] : ACPI Reference
> Specification 6.3, Table 18-393 GHESv2 Structure [5] : UEFI Reference
> Specification 2.8, Appendix N - Common Platform Error
>       Record
> [6] : UEFI Reference Specification 2.8, Section N.2.5 Memory Error Section
> 
> This patch series is dependent on the edk2 patch series
> https://edk2.groups.io/g/devel/message/77667
> 
> Link to github branch with the patches in this series -
> https://github.com/omkkul01/edk2-platforms/tree/ras_firware_first_edk2-
> platforms
> 
> Omkar Anand Kulkarni (5):
>   Platform/ARM: Add DMC-620 ECC error handling driver
>   Platform/Sgi: dmc-620 firmware-first error handling
>   Platform/Sgi: define memory region for GHES error status block
>   Platform/Sgi: Define values for ACPI table header
>   Platform/Sgi: Add platform error handling driver
> 
>  Platform/ARM/Drivers/Dmc620Mm/Dmc620Mm.dec    |  30 ++
>  Platform/ARM/SgiPkg/SgiPlatform.dec           |   1 +
>  Platform/ARM/SgiPkg/SgiPlatform.dsc.inc       |  38 ++
>  Platform/ARM/SgiPkg/SgiPlatformMm.dsc.inc     |  30 ++
>  Platform/ARM/SgiPkg/PlatformStandaloneMm.fdf  |   6 +
>  Platform/ARM/SgiPkg/SgiPlatform.fdf           |  13 +
>  Platform/ARM/Drivers/Dmc620Mm/Dmc620Mm.inf    |  60 +++
>  .../PlatformErrorHandlerDxe.inf               |  51 +++
>  .../Library/PlatformLib/PlatformLib.inf       |   6 +
>  Platform/ARM/Drivers/Dmc620Mm/Dmc620Mm.h      | 175 +++++++++
>  Platform/ARM/Drivers/Dmc620Mm/Dmc620Mm.c      | 360
> ++++++++++++++++++
>  .../Dmc620Mm/Dmc620MmErrorSourceInfo.c        | 198 ++++++++++
>  .../PlatformErrorHandlerDxe.c                 | 171 +++++++++
>  .../Library/PlatformLib/PlatformLibMem.c      |  13 +-
>  14 files changed, 1150 insertions(+), 2 deletions(-)  create mode 100644
> Platform/ARM/Drivers/Dmc620Mm/Dmc620Mm.dec
>  create mode 100644 Platform/ARM/Drivers/Dmc620Mm/Dmc620Mm.inf
>  create mode 100644
> Platform/ARM/SgiPkg/Drivers/PlatformErrorHandlerDxe/PlatformErrorHandl
> erDxe.inf
>  create mode 100644 Platform/ARM/Drivers/Dmc620Mm/Dmc620Mm.h
>  create mode 100644 Platform/ARM/Drivers/Dmc620Mm/Dmc620Mm.c
>  create mode 100644
> Platform/ARM/Drivers/Dmc620Mm/Dmc620MmErrorSourceInfo.c
>  create mode 100644
> Platform/ARM/SgiPkg/Drivers/PlatformErrorHandlerDxe/PlatformErrorHandl
> erDxe.c
> 
> --
> 2.17.1
> 
> 
> 
> -=-=-=-=-=-=
> Groups.io Links: You receive all messages sent to this group.
> View/Reply Online (#77669): https://edk2.groups.io/g/devel/message/77669
> Mute This Topic: https://groups.io/mt/84115312/4857533
> Group Owner: devel+owner at edk2.groups.io
> Unsubscribe: https://edk2.groups.io/g/devel/unsub
> [omkar.kulkarni at arm.com]
> -=-=-=-=-=-=
> 



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#78176): https://edk2.groups.io/g/devel/message/78176
Mute This Topic: https://groups.io/mt/84115312/1813853
Group Owner: devel+owner at edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [edk2-devel-archive at redhat.com]
-=-=-=-=-=-=-=-=-=-=-=-






More information about the edk2-devel-archive mailing list