public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "Leif Lindholm" <leif.lindholm@linaro.org>
To: Hao A Wu <hao.a.wu@intel.com>
Cc: devel@edk2.groups.io, Ard Biesheuvel <ard.biesheuvel@linaro.org>,
	Michael D Kinney <michael.d.kinney@intel.com>
Subject: Re: [edk2-platforms][PATCH v1 06/16] Hisilicon/D0x: Use StatusCode Router & Handler in MdeModulePkg
Date: Wed, 15 May 2019 20:47:21 +0100	[thread overview]
Message-ID: <20190515194721.pzgeburqedolqcs6@bivouac.eciton.net> (raw)
In-Reply-To: <20190514020831.7728-9-hao.a.wu@intel.com>

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@linaro.org>
> Cc: Leif Lindholm <leif.lindholm@linaro.org>
> Cc: Michael D Kinney <michael.d.kinney@intel.com>
> Signed-off-by: Hao A Wu <hao.a.wu@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
> 

  reply	other threads:[~2019-05-15 19:47 UTC|newest]

Thread overview: 53+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-05-14  2:08 [edk2-platforms][PATCH v1 00/16] Drop IntelFramework[Module]Pkg dependency Wu, Hao A
2019-05-14  2:08 ` [edk2-platforms][PATCH v1 01/16] Platform/AMD: Use Lzma decompress lib in MdeModulePkg Wu, Hao A
2019-05-17 15:20   ` Ard Biesheuvel
2019-05-14  2:08 ` [PATCH 1/2] Platform/BeagleBoard: Use ReportStatusCodeLib " Wu, Hao A
2019-05-14  2:09   ` [edk2-devel] " Wu, Hao A
2019-05-14 15:13   ` Leif Lindholm
2019-05-15  0:30     ` [edk2-devel] " Wu, Hao A
2019-05-14  2:08 ` [PATCH 2/2] Platform/BeagleBoard: Drop the consume of PcdShellFile Wu, Hao A
2019-05-14  2:09   ` [edk2-devel] " Wu, Hao A
2019-05-14 15:13   ` Leif Lindholm
2019-05-17 15:25     ` Ard Biesheuvel
2019-05-14  2:08 ` [edk2-platforms][PATCH v1 02/16] Platform/BeagleBoard: Use ReportStatusCodeLib in MdeModulePkg Wu, Hao A
2019-05-15 19:44   ` [edk2-devel] " Leif Lindholm
2019-05-17 15:24   ` Ard Biesheuvel
2019-05-17 16:02     ` Leif Lindholm
2019-05-17 16:05       ` Ard Biesheuvel
2019-05-17 16:11         ` Ard Biesheuvel
2019-05-14  2:08 ` [edk2-platforms][PATCH v1 03/16] Platform/BeagleBoard: Drop the consume of PcdShellFile Wu, Hao A
2019-05-14  2:08 ` [edk2-platforms][PATCH v1 04/16] Hisilicon/D0x: Use Lzma decompress lib in MdeModulePkg Wu, Hao A
2019-05-17 15:26   ` [edk2-devel] " Ard Biesheuvel
2019-05-14  2:08 ` [edk2-platforms][PATCH v1 05/16] Hisilicon/D0x: Drop the consume of GenericBdsLib & PlatformBdsLib Wu, Hao A
2019-05-17 15:27   ` [edk2-devel] " Ard Biesheuvel
2019-05-14  2:08 ` [edk2-platforms][PATCH v1 06/16] Hisilicon/D0x: Use StatusCode Router & Handler in MdeModulePkg Wu, Hao A
2019-05-15 19:47   ` Leif Lindholm [this message]
2019-05-17 15:33     ` Ard Biesheuvel
2019-05-20  8:49       ` [edk2-devel] " Wu, Hao A
2019-05-22  3:27         ` Ni, Ray
2019-05-27 12:11       ` ming.huang
2019-05-14  2:08 ` [edk2-platforms][PATCH v1 07/16] Hisilicon/D06: Drop the consume of PcdShellFile Wu, Hao A
2019-05-17 15:34   ` Ard Biesheuvel
2019-05-14  2:08 ` [edk2-platforms][PATCH v1 08/16] Silicon/Hisilicon: Use Lzma decompress lib in MdeModulePkg Wu, Hao A
2019-05-17 15:37   ` Ard Biesheuvel
2019-05-14  2:08 ` [edk2-platforms][PATCH v1 09/16] Silicon/Hisilicon: Use ReportStatusCodeLib (DXE) " Wu, Hao A
2019-05-15 19:48   ` [edk2-devel] " Leif Lindholm
2019-05-14  2:08 ` [edk2-platforms][PATCH v1 10/16] Silicon/Hisilicon: Use DebugLib (DXE_RUNTIME_DRIVER) " Wu, Hao A
2019-05-17 15:41   ` Ard Biesheuvel
2019-05-14  2:08 ` [edk2-platforms][PATCH v1 11/16] Silicon/Hisilicon/Smbios: Drop IntelFramework[Module]Pkg dependency Wu, Hao A
2019-05-17 15:43   ` Ard Biesheuvel
2019-05-14  2:08 ` [edk2-platforms][PATCH v1 12/16] Silicon/Hisilicon/PlatformIntelBdsLib: Remove Hisilicon PlatformBdsLib Wu, Hao A
2019-05-17 15:43   ` Ard Biesheuvel
2019-05-14  2:08 ` [edk2-platforms][PATCH v1 13/16] Platform/LeMaker: Use Lzma decompress lib in MdeModulePkg Wu, Hao A
2019-05-17 15:44   ` Ard Biesheuvel
2019-05-14  2:08 ` [edk2-platforms][PATCH v1 14/16] Platform/LeMaker: Use ReportStatusCodeLib " Wu, Hao A
2019-05-15 19:51   ` Leif Lindholm
2019-05-17 15:45   ` Ard Biesheuvel
2019-05-17 16:04     ` Leif Lindholm
2019-05-14  2:08 ` [edk2-platforms][PATCH v1 15/16] Platform/SoftIron: Use Lzma decompress lib " Wu, Hao A
2019-05-17 15:45   ` Ard Biesheuvel
2019-05-14  2:08 ` [edk2-platforms][PATCH v1 16/16] Platform/SoftIron: Use ReportStatusCodeLib " Wu, Hao A
2019-05-17 15:46   ` Ard Biesheuvel
2019-05-17 16:04     ` Leif Lindholm
2019-05-14  2:10 ` [edk2-devel] [edk2-platforms][PATCH v1 00/16] Drop IntelFramework[Module]Pkg dependency Wu, Hao A
2019-05-15 20:01 ` Leif Lindholm

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-list from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190515194721.pzgeburqedolqcs6@bivouac.eciton.net \
    --to=devel@edk2.groups.io \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox