[edk2-devel] [edk2-platforms][PATCH v1 06/16] Hisilicon/D0x: Use StatusCode Router & Handler in MdeModulePkg

Leif Lindholm leif.lindholm at linaro.org
Wed May 15 19:47:21 UTC 2019


On Tue, May 14, 2019 at 10:08:21AM +0800, Hao A Wu wrote:
> REF:https://bugzilla.tianocore.org/show_bug.cgi?id=1800
> 
> This commit adopts a similar approach to edk2 commit
> a6d594c5fabd8da2273d2794826ec086cf9c3c04.
> 
> Currently, Hisilicon platforms use modules from under
> "IntelFrameworkModulePkg/Universal/StatusCode/", which produce
> EFI_PEI_PROGRESS_CODE_PPI and EFI_STATUS_CODE_PROTOCOL directly, and write
> the status codes, as they are reported, to the serial port or to a memory
> buffer. This is called "handling" the status codes.
> 
> MdeModulePkg offers a PEIM under
> "MdeModulePkg/Universal/ReportStatusCodeRouter/Pei" that produces both
> EFI_PEI_PROGRESS_CODE_PPI and EFI_PEI_RSC_HANDLER_PPI, and a runtime DXE
> driver under "MdeModulePkg/Universal/ReportStatusCodeRouter/RuntimeDxe"
> that produces both EFI_STATUS_CODE_PROTOCOL and EFI_RSC_HANDLER_PROTOCOL.
> 
> MdeModulePkg also offers status code handler modules under
> MdeModulePkg/Universal/StatusCodeHandler/ that depend on
> EFI_PEI_RSC_HANDLER_PPI and EFI_RSC_HANDLER_PROTOCOL, respectively.
> 
> The StatusCodeHandler modules register themselves with
> ReportStatusCodeRouter through EFI_PEI_RSC_HANDLER_PPI /
> EFI_RSC_HANDLER_PROTOCOL. When another module reports a status code
> through EFI_PEI_PROGRESS_CODE_PPI / EFI_STATUS_CODE_PROTOCOL, it reaches
> the phase-matching ReportStatusCodeRouter module first, which in turn
> passes the status code to the pre-registered, phase-matching
> StatusCodeHandler module.
> 
> The status code handling in the StatusCodeHandler modules is identical to
> the one currently provided by the IntelFrameworkModulePkg modules. Replace
> the IntelFrameworkModulePkg modules with the MdeModulePkg ones, so we can
> decrease our dependency on IntelFrameworkModulePkg.

I would like to have Ard's opinion on this (and he should be back
Friday), and probably testing on the platforms. I say this because I
intend to push the trivial patches today, but not this one.

/
    Leif

> Cc: Ard Biesheuvel <ard.biesheuvel at linaro.org>
> Cc: Leif Lindholm <leif.lindholm at linaro.org>
> Cc: Michael D Kinney <michael.d.kinney at intel.com>
> Signed-off-by: Hao A Wu <hao.a.wu at intel.com>
> ---
>  Platform/Hisilicon/D03/D03.dsc | 6 ++++--
>  Platform/Hisilicon/D05/D05.dsc | 6 ++++--
>  Platform/Hisilicon/D06/D06.dsc | 6 ++++--
>  Platform/Hisilicon/D03/D03.fdf | 6 ++++--
>  Platform/Hisilicon/D05/D05.fdf | 6 ++++--
>  Platform/Hisilicon/D06/D06.fdf | 6 ++++--
>  6 files changed, 24 insertions(+), 12 deletions(-)
> 
> diff --git a/Platform/Hisilicon/D03/D03.dsc b/Platform/Hisilicon/D03/D03.dsc
> index 7e8cb59641..a3c3ae5aa6 100644
> --- a/Platform/Hisilicon/D03/D03.dsc
> +++ b/Platform/Hisilicon/D03/D03.dsc
> @@ -303,7 +303,8 @@
>  
>    Platform/Hisilicon/D03/MemoryInitPei/MemoryInitPeim.inf
>    ArmPkg/Drivers/CpuPei/CpuPei.inf
> -  IntelFrameworkModulePkg/Universal/StatusCode/Pei/StatusCodePei.inf
> +  MdeModulePkg/Universal/ReportStatusCodeRouter/Pei/ReportStatusCodeRouterPei.inf
> +  MdeModulePkg/Universal/StatusCodeHandler/Pei/StatusCodeHandlerPei.inf
>    MdeModulePkg/Universal/FaultTolerantWritePei/FaultTolerantWritePei.inf
>    MdeModulePkg/Universal/Variable/Pei/VariablePei.inf
>  
> @@ -376,7 +377,8 @@
>    ArmPkg/Drivers/TimerDxe/TimerDxe.inf
>  
>    MdeModulePkg/Universal/WatchdogTimerDxe/WatchdogTimer.inf
> -  IntelFrameworkModulePkg/Universal/StatusCode/RuntimeDxe/StatusCodeRuntimeDxe.inf
> +  MdeModulePkg/Universal/ReportStatusCodeRouter/RuntimeDxe/ReportStatusCodeRouterRuntimeDxe.inf
> +  MdeModulePkg/Universal/StatusCodeHandler/RuntimeDxe/StatusCodeHandlerRuntimeDxe.inf
>    #
>    #ACPI
>    #
> diff --git a/Platform/Hisilicon/D05/D05.dsc b/Platform/Hisilicon/D05/D05.dsc
> index 1d3a054d29..e285d1a3ce 100644
> --- a/Platform/Hisilicon/D05/D05.dsc
> +++ b/Platform/Hisilicon/D05/D05.dsc
> @@ -439,7 +439,8 @@
>  
>    Platform/Hisilicon/D05/MemoryInitPei/MemoryInitPeim.inf
>    ArmPkg/Drivers/CpuPei/CpuPei.inf
> -  IntelFrameworkModulePkg/Universal/StatusCode/Pei/StatusCodePei.inf
> +  MdeModulePkg/Universal/ReportStatusCodeRouter/Pei/ReportStatusCodeRouterPei.inf
> +  MdeModulePkg/Universal/StatusCodeHandler/Pei/StatusCodeHandlerPei.inf
>    MdeModulePkg/Universal/FaultTolerantWritePei/FaultTolerantWritePei.inf
>    MdeModulePkg/Universal/Variable/Pei/VariablePei.inf
>  
> @@ -509,7 +510,8 @@
>    ArmPkg/Drivers/TimerDxe/TimerDxe.inf
>  
>    MdeModulePkg/Universal/WatchdogTimerDxe/WatchdogTimer.inf
> -  IntelFrameworkModulePkg/Universal/StatusCode/RuntimeDxe/StatusCodeRuntimeDxe.inf
> +  MdeModulePkg/Universal/ReportStatusCodeRouter/RuntimeDxe/ReportStatusCodeRouterRuntimeDxe.inf
> +  MdeModulePkg/Universal/StatusCodeHandler/RuntimeDxe/StatusCodeHandlerRuntimeDxe.inf
>    #
>    #ACPI
>    #
> diff --git a/Platform/Hisilicon/D06/D06.dsc b/Platform/Hisilicon/D06/D06.dsc
> index c1cd13b6c7..0c12181a38 100644
> --- a/Platform/Hisilicon/D06/D06.dsc
> +++ b/Platform/Hisilicon/D06/D06.dsc
> @@ -255,7 +255,8 @@
>    ArmPlatformPkg/PlatformPei/PlatformPeim.inf
>  
>    ArmPkg/Drivers/CpuPei/CpuPei.inf
> -  IntelFrameworkModulePkg/Universal/StatusCode/Pei/StatusCodePei.inf
> +  MdeModulePkg/Universal/ReportStatusCodeRouter/Pei/ReportStatusCodeRouterPei.inf
> +  MdeModulePkg/Universal/StatusCodeHandler/Pei/StatusCodeHandlerPei.inf
>    MdeModulePkg/Universal/FaultTolerantWritePei/FaultTolerantWritePei.inf
>    MdeModulePkg/Universal/Variable/Pei/VariablePei.inf
>  
> @@ -317,7 +318,8 @@
>    ArmPkg/Drivers/TimerDxe/TimerDxe.inf
>  
>    MdeModulePkg/Universal/WatchdogTimerDxe/WatchdogTimer.inf
> -  IntelFrameworkModulePkg/Universal/StatusCode/RuntimeDxe/StatusCodeRuntimeDxe.inf
> +  MdeModulePkg/Universal/ReportStatusCodeRouter/RuntimeDxe/ReportStatusCodeRouterRuntimeDxe.inf
> +  MdeModulePkg/Universal/StatusCodeHandler/RuntimeDxe/StatusCodeHandlerRuntimeDxe.inf
>    #
>    #ACPI
>    #
> diff --git a/Platform/Hisilicon/D03/D03.fdf b/Platform/Hisilicon/D03/D03.fdf
> index 3f07b2e577..f7024f400d 100644
> --- a/Platform/Hisilicon/D03/D03.fdf
> +++ b/Platform/Hisilicon/D03/D03.fdf
> @@ -199,7 +199,8 @@ READ_LOCK_STATUS   = TRUE
>    INF MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf
>    INF FatPkg/EnhancedFatDxe/Fat.inf
>    INF MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf
> -  INF IntelFrameworkModulePkg/Universal/StatusCode/RuntimeDxe/StatusCodeRuntimeDxe.inf
> +  INF MdeModulePkg/Universal/ReportStatusCodeRouter/RuntimeDxe/ReportStatusCodeRouterRuntimeDxe.inf
> +  INF MdeModulePkg/Universal/StatusCodeHandler/RuntimeDxe/StatusCodeHandlerRuntimeDxe.inf
>  
>    #
>    # Usb Support
> @@ -329,7 +330,8 @@ READ_LOCK_STATUS   = TRUE
>    INF Platform/Hisilicon/D03/MemoryInitPei/MemoryInitPeim.inf
>    INF ArmPkg/Drivers/CpuPei/CpuPei.inf
>    INF MdeModulePkg/Universal/PCD/Pei/Pcd.inf
> -  INF IntelFrameworkModulePkg/Universal/StatusCode/Pei/StatusCodePei.inf
> +  INF MdeModulePkg/Universal/ReportStatusCodeRouter/Pei/ReportStatusCodeRouterPei.inf
> +  INF MdeModulePkg/Universal/StatusCodeHandler/Pei/StatusCodeHandlerPei.inf
>    INF Platform/Hisilicon/D03/EarlyConfigPeim/EarlyConfigPeimD03.inf
>  
>    INF MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf
> diff --git a/Platform/Hisilicon/D05/D05.fdf b/Platform/Hisilicon/D05/D05.fdf
> index 9632aea4b0..76c04b2740 100644
> --- a/Platform/Hisilicon/D05/D05.fdf
> +++ b/Platform/Hisilicon/D05/D05.fdf
> @@ -203,7 +203,8 @@ READ_LOCK_STATUS   = TRUE
>    INF MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf
>    INF FatPkg/EnhancedFatDxe/Fat.inf
>    INF MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf
> -  INF IntelFrameworkModulePkg/Universal/StatusCode/RuntimeDxe/StatusCodeRuntimeDxe.inf
> +  INF MdeModulePkg/Universal/ReportStatusCodeRouter/RuntimeDxe/ReportStatusCodeRouterRuntimeDxe.inf
> +  INF MdeModulePkg/Universal/StatusCodeHandler/RuntimeDxe/StatusCodeHandlerRuntimeDxe.inf
>  
>    #
>    # Usb Support
> @@ -351,7 +352,8 @@ READ_LOCK_STATUS   = TRUE
>    INF Platform/Hisilicon/D05/MemoryInitPei/MemoryInitPeim.inf
>    INF ArmPkg/Drivers/CpuPei/CpuPei.inf
>    INF MdeModulePkg/Universal/PCD/Pei/Pcd.inf
> -  INF IntelFrameworkModulePkg/Universal/StatusCode/Pei/StatusCodePei.inf
> +  INF MdeModulePkg/Universal/ReportStatusCodeRouter/Pei/ReportStatusCodeRouterPei.inf
> +  INF MdeModulePkg/Universal/StatusCodeHandler/Pei/StatusCodeHandlerPei.inf
>    INF Platform/Hisilicon/D05/EarlyConfigPeim/EarlyConfigPeimD05.inf
>  
>    INF MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf
> diff --git a/Platform/Hisilicon/D06/D06.fdf b/Platform/Hisilicon/D06/D06.fdf
> index e402628a1b..fb26881300 100644
> --- a/Platform/Hisilicon/D06/D06.fdf
> +++ b/Platform/Hisilicon/D06/D06.fdf
> @@ -204,7 +204,8 @@ READ_LOCK_STATUS   = TRUE
>    INF MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf
>    INF FatPkg/EnhancedFatDxe/Fat.inf
>    INF MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf
> -  INF IntelFrameworkModulePkg/Universal/StatusCode/RuntimeDxe/StatusCodeRuntimeDxe.inf
> +  INF MdeModulePkg/Universal/ReportStatusCodeRouter/RuntimeDxe/ReportStatusCodeRouterRuntimeDxe.inf
> +  INF MdeModulePkg/Universal/StatusCodeHandler/RuntimeDxe/StatusCodeHandlerRuntimeDxe.inf
>  
>    #
>    # Usb Support
> @@ -345,7 +346,8 @@ READ_LOCK_STATUS   = TRUE
>    INF Platform/Hisilicon/D06/MemoryInitPei/MemoryInitPeim.inf
>    INF ArmPkg/Drivers/CpuPei/CpuPei.inf
>    INF MdeModulePkg/Universal/PCD/Pei/Pcd.inf
> -  INF IntelFrameworkModulePkg/Universal/StatusCode/Pei/StatusCodePei.inf
> +  INF MdeModulePkg/Universal/ReportStatusCodeRouter/Pei/ReportStatusCodeRouterPei.inf
> +  INF MdeModulePkg/Universal/StatusCodeHandler/Pei/StatusCodeHandlerPei.inf
>    INF Platform/Hisilicon/D06/EarlyConfigPeim/EarlyConfigPeimD06.inf
>  
>    INF MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf
> -- 
> 2.12.0.windows.1
> 

-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#40710): https://edk2.groups.io/g/devel/message/40710
Mute This Topic: https://groups.io/mt/31614327/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