From: "Chiu, Chasel" <chasel.chiu@intel.com>
To: "Desimone, Nathaniel L" <nathaniel.l.desimone@intel.com>,
"devel@edk2.groups.io" <devel@edk2.groups.io>
Cc: "Kubacki, Michael A" <michael.a.kubacki@intel.com>
Subject: Re: [edk2-platforms] [PATCH V2 07/14] WhiskeylakeOpenBoardPkg: Add SiliconInitLib APIs to BoardInitLib
Date: Fri, 22 Nov 2019 05:16:35 +0000 [thread overview]
Message-ID: <3C3EFB470A303B4AB093197B6777CCEC505AB8AE@PGSMSX111.gar.corp.intel.com> (raw)
In-Reply-To: <20191121085853.2626-8-nathaniel.l.desimone@intel.com>
Reviewed-by: Chasel Chiu <chasel.chiu@intel.com>
> -----Original Message-----
> From: Desimone, Nathaniel L <nathaniel.l.desimone@intel.com>
> Sent: Thursday, November 21, 2019 4:59 PM
> To: devel@edk2.groups.io
> Cc: Chiu, Chasel <chasel.chiu@intel.com>; Kubacki, Michael A
> <michael.a.kubacki@intel.com>
> Subject: [edk2-platforms] [PATCH V2 07/14] WhiskeylakeOpenBoardPkg: Add
> SiliconInitLib APIs to BoardInitLib
>
> Cc: Chasel Chiu <chasel.chiu@intel.com>
> Cc: Michael Kubacki <michael.a.kubacki@intel.com>
> Signed-off-by: Nate DeSimone <nathaniel.l.desimone@intel.com>
> ---
> .../BoardInitLib/PeiBoardInitPostMemLib.inf | 1 +
> .../BoardInitLib/PeiBoardInitPreMemLib.inf | 1 +
> .../PeiMultiBoardInitPostMemLib.inf | 1 +
> .../PeiMultiBoardInitPreMemLib.inf | 2 +-
> .../PeiWhiskeylakeURvpInitPostMemLib.c | 6 +-
> .../PeiWhiskeylakeURvpInitPreMemLib.c | 89 ++-----------------
> .../BoardInitLib/WhiskeylakeURvpInit.h | 1 +
> .../WhiskeylakeURvp/OpenBoardPkg.dsc | 5 ++
> 8 files changed, 24 insertions(+), 82 deletions(-)
>
> diff --git
> a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boar
> dInitLib/PeiBoardInitPostMemLib.inf
> b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boar
> dInitLib/PeiBoardInitPostMemLib.inf
> index 9bf4d127c5..affc5c56ad 100644
> ---
> a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boar
> dInitLib/PeiBoardInitPostMemLib.inf
> +++
> b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boar
> dInitLib/PeiBoardInitPostMemLib.inf
> @@ -26,6 +26,7 @@
> HdaVerbTableLib
>
> MemoryAllocationLib
>
> PcdLib
>
> + SiliconInitLib
>
>
>
> [Packages]
>
> MinPlatformPkg/MinPlatformPkg.dec
>
> diff --git
> a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boar
> dInitLib/PeiBoardInitPreMemLib.inf
> b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boar
> dInitLib/PeiBoardInitPreMemLib.inf
> index 4ab80f9eb3..40e20285e0 100644
> ---
> a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boar
> dInitLib/PeiBoardInitPreMemLib.inf
> +++
> b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boar
> dInitLib/PeiBoardInitPreMemLib.inf
> @@ -23,6 +23,7 @@
> BaseMemoryLib
>
> MemoryAllocationLib
>
> PcdLib
>
> + SiliconInitLib
>
>
>
> [Packages]
>
> MinPlatformPkg/MinPlatformPkg.dec
>
> diff --git
> a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boar
> dInitLib/PeiMultiBoardInitPostMemLib.inf
> b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boar
> dInitLib/PeiMultiBoardInitPostMemLib.inf
> index c043e32638..21dc2f70c0 100644
> ---
> a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boar
> dInitLib/PeiMultiBoardInitPostMemLib.inf
> +++
> b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boar
> dInitLib/PeiMultiBoardInitPostMemLib.inf
> @@ -30,6 +30,7 @@
> PeiPlatformHookLib
>
> PeiPolicyInitLib
>
> PchInfoLib
>
> + SiliconInitLib
>
>
>
> [Packages]
>
> MinPlatformPkg/MinPlatformPkg.dec
>
> diff --git
> a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boar
> dInitLib/PeiMultiBoardInitPreMemLib.inf
> b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boar
> dInitLib/PeiMultiBoardInitPreMemLib.inf
> index cd0315377a..7389f1dfcd 100644
> ---
> a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boar
> dInitLib/PeiMultiBoardInitPreMemLib.inf
> +++
> b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boar
> dInitLib/PeiMultiBoardInitPreMemLib.inf
> @@ -31,6 +31,7 @@
> PeiPlatformHookLib
>
> PeiPolicyInitLib
>
> PlatformHookLib
>
> + SiliconInitLib
>
> StallPpiLib
>
>
>
> [Packages]
>
> @@ -57,7 +58,6 @@
>
>
> [Guids]
>
> gPchGeneralPreMemConfigGuid ## CONSUMES
>
> - gTcoWdtHobGuid ## CONSUMES
>
>
>
> [Pcd]
>
> gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdLpcSioConfigDefaultPort
>
> diff --git
> a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boar
> dInitLib/PeiWhiskeylakeURvpInitPostMemLib.c
> b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boar
> dInitLib/PeiWhiskeylakeURvpInitPostMemLib.c
> index 9413620a4a..248a6657d5 100644
> ---
> a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boar
> dInitLib/PeiWhiskeylakeURvpInitPostMemLib.c
> +++
> b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boar
> dInitLib/PeiWhiskeylakeURvpInitPostMemLib.c
> @@ -430,6 +430,10 @@ WhiskeylakeURvpBoardInitBeforeSiliconInit (
> //
>
> Status = UpdateChipsetInitPtr();
>
>
>
> + ///
>
> + /// Do Late PCH init
>
> + ///
>
> + LateSiliconInit ();
>
> +
>
> return EFI_SUCCESS;
>
> }
>
> -
>
> diff --git
> a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boar
> dInitLib/PeiWhiskeylakeURvpInitPreMemLib.c
> b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boar
> dInitLib/PeiWhiskeylakeURvpInitPreMemLib.c
> index 0124888244..055d731651 100644
> ---
> a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boar
> dInitLib/PeiWhiskeylakeURvpInitPreMemLib.c
> +++
> b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boar
> dInitLib/PeiWhiskeylakeURvpInitPreMemLib.c
> @@ -45,7 +45,6 @@
> #include <Library/PciSegmentLib.h>
>
> #include <PeiPlatformHookLib.h>
>
> #include <FirwmareConfigurations.h>
>
> -#include <Guid/TcoWdtHob.h>
>
> #include <Library/OcWdtLib.h>
>
>
>
> ///
>
> @@ -232,50 +231,8 @@ BoardMiscInitPreMem(
> return EFI_SUCCESS;
>
> }
>
>
>
> -//@todo it should be moved to Si Pkg.
>
> -/**
>
> -Early Platform PCH initialization
>
> -**/
>
> -VOID
>
> -EarlyPlatformPchInit(
>
> - VOID
>
> -)
>
> -{
>
> - UINT8 Data8;
>
> - UINT8 TcoRebootHappened;
>
> - TCO_WDT_HOB *TcoWdtHobPtr;
>
> - EFI_STATUS Status;
>
> -
>
> - ///
>
> - /// Read the Second TO status bit
>
> - ///
>
> - Data8 = IoRead8(PcdGet16(PcdTcoBaseAddress) + R_TCO_IO_TCO2_STS);
>
> - if ((Data8 & B_TCO_IO_TCO2_STS_SECOND_TO) ==
> B_TCO_IO_TCO2_STS_SECOND_TO) {
>
> - TcoRebootHappened = 1;
>
> - DEBUG((DEBUG_INFO, "PlatformInitPreMem - TCO Second TO status bit
> is set. This might be a TCO reboot\n"));
>
> - }
>
> - else {
>
> - TcoRebootHappened = 0;
>
> - }
>
> -
>
> - ///
>
> - /// Create HOB
>
> - ///
>
> - Status = PeiServicesCreateHob(EFI_HOB_TYPE_GUID_EXTENSION,
> sizeof(TCO_WDT_HOB), (VOID **)&TcoWdtHobPtr);
>
> - if (!EFI_ERROR(Status)) {
>
> - TcoWdtHobPtr->Header.Name = gTcoWdtHobGuid;
>
> - TcoWdtHobPtr->TcoRebootHappened = TcoRebootHappened;
>
> - }
>
> -
>
> - ///
>
> - /// Clear the Second TO status bit
>
> - ///
>
> - IoWrite8(PcdGet16(PcdTcoBaseAddress) + R_TCO_IO_TCO2_STS,
> B_TCO_IO_TCO2_STS_SECOND_TO);
>
> -}
>
> -
>
> /**
>
> Board configuration initialization in the pre-memory boot phase.
>
> -
>
> **/
>
> VOID
>
> BoardConfigInitPreMem (
>
> @@ -341,7 +298,6 @@ PlatformInitPreMemCallBack(
> )
>
> {
>
> EFI_STATUS Status;
>
> - UINT16 ABase;
>
> UINT8 FwConfig;
>
>
>
> //
>
> @@ -378,16 +334,8 @@ PlatformInitPreMemCallBack(
> ///
>
> /// Configure GPIO and SIO
>
> ///
>
> - Status = BoardInitPreMem();
>
> - ASSERT_EFI_ERROR(Status);
>
> -
>
> - ABase = PmcGetAcpiBase();
>
> -
>
> - ///
>
> - /// Clear all pending SMI. On S3 clear power button enable so it will not
> generate an SMI.
>
> - ///
>
> - IoWrite16(ABase + R_ACPI_IO_PM1_EN, 0);
>
> - IoWrite32(ABase + R_ACPI_IO_GPE0_EN_127_96, 0);
>
> + Status = BoardInitPreMem ();
>
> + ASSERT_EFI_ERROR (Status);
>
>
>
> ///
>
> /// Install Pre Memory PPIs
>
> @@ -550,12 +498,6 @@ WhiskeylakeURvpInitPreMem (
> Status = InstallStallPpi();
>
> ASSERT_EFI_ERROR(Status);
>
>
>
> - ///@todo it should be moved to Si Pkg.
>
> - ///
>
> - /// Do Early PCH init
>
> - ///
>
> - EarlyPlatformPchInit();
>
> -
>
> //
>
> // Install PCH RESET PPI and EFI RESET2 PeiService
>
> //
>
> @@ -588,6 +530,11 @@ WhiskeylakeURvpBoardInitBeforeMemoryInit (
> VOID
>
> )
>
> {
>
> + ///
>
> + /// Do basic PCH init
>
> + ///
>
> + SiliconInit ();
>
> +
>
> WhiskeylakeURvpInitPreMem ();
>
>
>
> return EFI_SUCCESS;
>
> @@ -600,27 +547,9 @@ WhiskeylakeURvpBoardDebugInit (
> )
>
> {
>
> ///
>
> - /// LPC I/O Configuration
>
> + /// Do Early PCH init
>
> ///
>
> - PchLpcIoDecodeRangesSet (
>
> - (V_LPC_CFG_IOD_LPT_378 << N_LPC_CFG_IOD_LPT) |
>
> - (V_LPC_CFG_IOD_COMB_3E8 << N_LPC_CFG_IOD_COMB) |
>
> - (V_LPC_CFG_IOD_COMA_3F8 << N_LPC_CFG_IOD_COMA)
>
> - );
>
> -
>
> - PchLpcIoEnableDecodingSet (
>
> - B_LPC_CFG_IOE_ME2 |
>
> - B_LPC_CFG_IOE_SE |
>
> - B_LPC_CFG_IOE_ME1 |
>
> - B_LPC_CFG_IOE_KE |
>
> - B_LPC_CFG_IOE_HGE |
>
> - B_LPC_CFG_IOE_LGE |
>
> - B_LPC_CFG_IOE_FDE |
>
> - B_LPC_CFG_IOE_PPE |
>
> - B_LPC_CFG_IOE_CBE |
>
> - B_LPC_CFG_IOE_CAE
>
> - );
>
> -
>
> + EarlySiliconInit ();
>
> return EFI_SUCCESS;
>
> }
>
>
>
> diff --git
> a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boar
> dInitLib/WhiskeylakeURvpInit.h
> b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boar
> dInitLib/WhiskeylakeURvpInit.h
> index 325bcb41df..d3a709b2a9 100644
> ---
> a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boar
> dInitLib/WhiskeylakeURvpInit.h
> +++
> b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Boar
> dInitLib/WhiskeylakeURvpInit.h
> @@ -15,6 +15,7 @@
> #include <Library/MemoryAllocationLib.h>
>
> #include <Library/DebugLib.h>
>
> #include <Library/GpioLib.h>
>
> +#include <Library/SiliconInitLib.h>
>
> #include <Ppi/SiPolicy.h>
>
> #include <PchHsioPtssTables.h>
>
>
>
> diff --git
> a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoardP
> kg.dsc
> b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoardP
> kg.dsc
> index cdaf47b6f7..3cd0478021 100644
> ---
> a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoardP
> kg.dsc
> +++
> b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoardP
> kg.dsc
> @@ -154,6 +154,11 @@
>
> TimerLib|$(PLATFORM_BOARD_PACKAGE)/Library/AcpiTimerLib/BaseAcpiTim
> erLib.inf
>
>
>
> [LibraryClasses.common.PEIM]
>
> + #######################################
>
> + # Silicon Initialization Package
>
> + #######################################
>
> +
> SiliconInitLib|$(PLATFORM_SI_PACKAGE)/Library/PeiSiliconInitLib/PeiSiliconIn
> itLib.inf
>
> +
>
> #######################################
>
> # Platform Package
>
> #######################################
>
> --
> 2.24.0.windows.2
next prev parent reply other threads:[~2019-11-22 5:16 UTC|newest]
Thread overview: 50+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-11-21 8:58 [edk2-platforms] [PATCH V2 00/14] SecFspWrapperPlatformSecLib Cleanup Nate DeSimone
2019-11-21 8:58 ` [edk2-platforms] [PATCH V2 01/14] KabylakeSiliconPkg: Change MODULE_TYPE of SiliconInitLib to PEIM Nate DeSimone
2019-11-22 5:15 ` Chiu, Chasel
2019-11-22 6:31 ` Kubacki, Michael A
2019-11-22 6:36 ` Chaganty, Rangasai V
2019-11-21 8:58 ` [edk2-platforms] [PATCH V2 02/14] KabylakeOpenBoardPkg: Update location of SiliconInitLib Nate DeSimone
2019-11-22 5:15 ` [edk2-devel] " Chiu, Chasel
2019-11-22 6:31 ` Kubacki, Michael A
2019-11-21 8:58 ` [edk2-platforms] [PATCH V2 03/14] KabylakeSiliconPkg: Cleanup old comments Nate DeSimone
2019-11-22 5:15 ` Chiu, Chasel
2019-11-22 6:32 ` Kubacki, Michael A
2019-11-22 6:42 ` Chaganty, Rangasai V
2019-11-21 8:58 ` [edk2-platforms] [PATCH V2 04/14] CoffeeLakeSiliconPkg: Move TcoWdtHob.h Nate DeSimone
2019-11-22 5:15 ` Chiu, Chasel
2019-11-22 6:32 ` [edk2-devel] " Kubacki, Michael A
2019-11-22 6:46 ` Chaganty, Rangasai V
2019-11-21 8:58 ` [edk2-platforms] [PATCH V2 05/14] CoffeeLakeSiliconPkg: TcoWdtHob.h Cleanup Nate DeSimone
2019-11-22 5:16 ` Chiu, Chasel
2019-11-22 6:32 ` Kubacki, Michael A
2019-11-22 6:48 ` Chaganty, Rangasai V
2019-11-21 8:58 ` [edk2-platforms] [PATCH V2 06/14] CoffeelakeSiliconPkg: Add SiliconInitLib Nate DeSimone
2019-11-22 5:16 ` Chiu, Chasel
2019-11-22 6:32 ` Kubacki, Michael A
2019-11-22 6:55 ` Chaganty, Rangasai V
2019-11-21 8:58 ` [edk2-platforms] [PATCH V2 07/14] WhiskeylakeOpenBoardPkg: Add SiliconInitLib APIs to BoardInitLib Nate DeSimone
2019-11-22 5:16 ` Chiu, Chasel [this message]
2019-11-22 6:32 ` Kubacki, Michael A
2019-11-21 8:58 ` [edk2-platforms] [PATCH V2 08/14] WhiskeylakeOpenBoardPkg: Whitespace cleanup in BoardInitLib Nate DeSimone
2019-11-22 5:16 ` Chiu, Chasel
2019-11-22 6:32 ` Kubacki, Michael A
2019-11-21 8:58 ` [edk2-platforms] [PATCH V2 09/14] WhiskeylakeOpenBoardPkg: Remove SecFspWrapperPlatformSecLib override Nate DeSimone
2019-11-22 5:17 ` Chiu, Chasel
2019-11-22 6:32 ` Kubacki, Michael A
2019-11-21 8:58 ` [edk2-platforms] [PATCH V2 10/14] MinPlatformPkg: FSP Dispatch Mode Support for PlatformSecLib Nate DeSimone
2019-11-22 5:17 ` Chiu, Chasel
2019-11-22 6:32 ` Kubacki, Michael A
2019-11-21 8:58 ` [edk2-platforms] [PATCH V2 11/14] MinPlatformPkg: Coding style cleanups in MinPlatformPkg.dec Nate DeSimone
2019-11-22 5:17 ` Chiu, Chasel
2019-11-22 6:32 ` Kubacki, Michael A
2019-11-21 8:58 ` [edk2-platforms] [PATCH V2 12/14] KabylakeOpenBoardPkg: Add support for PcdFspDispatchModeUseFspPeiMain Nate DeSimone
2019-11-22 5:18 ` Chiu, Chasel
2019-11-22 6:32 ` Kubacki, Michael A
2019-11-21 8:58 ` [edk2-platforms] [PATCH V2 13/14] KabylakeOpenBoardPkg: Remove SecFspWrapperPlatformSecLib override Nate DeSimone
2019-11-22 5:18 ` Chiu, Chasel
2019-11-22 6:32 ` Kubacki, Michael A
2019-11-21 8:58 ` [edk2-platforms] [PATCH V2 14/14] MinPlatformPkg: Remove BoardInitLib dependency from PlatformSecLib Nate DeSimone
2019-11-22 5:18 ` Chiu, Chasel
2019-11-22 6:33 ` Kubacki, Michael A
2019-11-21 17:51 ` [edk2-platforms] [PATCH V2 00/14] SecFspWrapperPlatformSecLib Cleanup Kubacki, Michael A
2019-11-22 0:51 ` Nate DeSimone
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=3C3EFB470A303B4AB093197B6777CCEC505AB8AE@PGSMSX111.gar.corp.intel.com \
--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