[edk2-devel] [PATCH] UpXtreme: Enable USB DCI debug

Heng Luo heng.luo at intel.com
Mon Dec 14 01:31:19 UTC 2020


Thank Nate, I will send out patch V2 for review.

> -----Original Message-----
> From: Desimone, Nathaniel L <nathaniel.l.desimone at intel.com>
> Sent: Wednesday, December 9, 2020 6:30 PM
> To: Luo, Heng <heng.luo at intel.com>; devel at edk2.groups.io
> Cc: Chiu, Chasel <chasel.chiu at intel.com>
> Subject: RE: [PATCH] UpXtreme: Enable USB DCI debug
> 
> Hi Heng,
> 
> Please add a DynamicEx PCD to control the enable/disable of DCI to
> WhiskeyLakeOpenBoardPkg. It is probably not a good idea from a security
> standpoint to have the default configuration leave JTAG enabled and open.
> Other than that, look's good!
> 
> Thanks,
> Nate
> 
> > -----Original Message-----
> > From: Luo, Heng <heng.luo at intel.com>
> > Sent: Thursday, November 19, 2020 9:23 PM
> > To: devel at edk2.groups.io
> > Cc: Chiu, Chasel <chasel.chiu at intel.com>; Desimone, Nathaniel L
> > <nathaniel.l.desimone at intel.com>
> > Subject: [PATCH] UpXtreme: Enable USB DCI debug
> >
> > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3081
> >
> > Allow to debug BIOS via DCI cable.
> >
> > Cc: Chasel Chiu <chasel.chiu at intel.com>
> > Cc: Nate DeSimone <nathaniel.l.desimone at intel.com>
> > Signed-off-by: Heng Luo <heng.luo at intel.com>
> > ---
> >
> >
> Platform/Intel/WhiskeylakeOpenBoardPkg/Policy/Library/PeiPolicyUpdateLi
> > b/PeiPchPolicyUpdatePreMem.c                    | 1 -
> >
> >
> Platform/Intel/WhiskeylakeOpenBoardPkg/UpXtreme/Library/PeiPolicyBoar
> > dConfigLib/PeiCpuPolicyBoardConfig.c              | 5 +++++
> >
> >
> Platform/Intel/WhiskeylakeOpenBoardPkg/UpXtreme/Library/PeiPolicyBoar
> > dConfigLib/PeiPchPolicyBoardConfigPreMem.c        | 7 +++++++
> >
> >
> Platform/Intel/WhiskeylakeOpenBoardPkg/UpXtreme/Library/PeiPolicyBoar
> > dConfigLib/PeiPolicyBoardConfigLib.inf            | 1 +
> >
> >
> Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/PeiPol
> > icyBoardConfigLib/PeiPchPolicyBoardConfigPreMem.c | 6 ++++++
> >
> >
> Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/PeiPol
> > icyBoardConfigLib/PeiPolicyBoardConfigLib.inf     | 1 +
> >  6 files changed, 20 insertions(+), 1 deletion(-)
> >
> > diff --git
> > a/Platform/Intel/WhiskeylakeOpenBoardPkg/Policy/Library/PeiPolicyUpdat
> > e
> > Lib/PeiPchPolicyUpdatePreMem.c
> > b/Platform/Intel/WhiskeylakeOpenBoardPkg/Policy/Library/PeiPolicyUpdat
> > e
> > Lib/PeiPchPolicyUpdatePreMem.c
> > index 2d48b09175..ac5b583f89 100644
> > ---
> > a/Platform/Intel/WhiskeylakeOpenBoardPkg/Policy/Library/PeiPolicyUpdat
> > e
> > Lib/PeiPchPolicyUpdatePreMem.c
> > +++
> > b/Platform/Intel/WhiskeylakeOpenBoardPkg/Policy/Library/PeiPolicyUpdat
> > e
> > Lib/PeiPchPolicyUpdatePreMem.c
> > @@ -83,7 +83,6 @@ UpdatePeiPchPolicyPreMem (
> >    Status = GetConfigBlock ((VOID *) SiPreMemPolicy,
> > &gIshPreMemConfigGuid, (VOID *) &IshPreMemConfig);
> >
> >    ASSERT_EFI_ERROR (Status);
> >
> >
> >
> > -  DciPreMemConfig->DciUsb3TypecUfpDbg = 2;
> >
> >    PchTraceHubPreMemConfig->MemReg0Size = 3;
> >
> >    PchTraceHubPreMemConfig->MemReg1Size = 3;
> >
> >    //
> >
> > diff --git
> >
> a/Platform/Intel/WhiskeylakeOpenBoardPkg/UpXtreme/Library/PeiPolicyBo
> > ardConfigLib/PeiCpuPolicyBoardConfig.c
> >
> b/Platform/Intel/WhiskeylakeOpenBoardPkg/UpXtreme/Library/PeiPolicyBo
> > ardConfigLib/PeiCpuPolicyBoardConfig.c
> > index d1d1920823..d4c5136c0a 100644
> > ---
> >
> a/Platform/Intel/WhiskeylakeOpenBoardPkg/UpXtreme/Library/PeiPolicyBo
> > ardConfigLib/PeiCpuPolicyBoardConfig.c
> > +++
> >
> b/Platform/Intel/WhiskeylakeOpenBoardPkg/UpXtreme/Library/PeiPolicyBo
> > ardConfigLib/PeiCpuPolicyBoardConfig.c
> > @@ -44,6 +44,11 @@ UpdatePeiCpuPolicyBoardConfig (
> >    Status = GetConfigBlock ((VOID *) SiPolicyPpi, &gCpuConfigGuid,
> > (VOID *) &CpuConfig);
> >
> >    ASSERT_EFI_ERROR (Status);
> >
> >
> >
> > +  //
> >
> > +  //Enable processor debug features
> >
> > +  //
> >
> > +  CpuConfig->DebugInterfaceEnable = 1;
> >
> > +
> >
> >    return Status;
> >
> >  }
> >
> >
> >
> > diff --git
> >
> a/Platform/Intel/WhiskeylakeOpenBoardPkg/UpXtreme/Library/PeiPolicyBo
> > ardConfigLib/PeiPchPolicyBoardConfigPreMem.c
> >
> b/Platform/Intel/WhiskeylakeOpenBoardPkg/UpXtreme/Library/PeiPolicyBo
> > ardConfigLib/PeiPchPolicyBoardConfigPreMem.c
> > index 01bb75525b..c79718f4ee 100644
> > ---
> >
> a/Platform/Intel/WhiskeylakeOpenBoardPkg/UpXtreme/Library/PeiPolicyBo
> > ardConfigLib/PeiPchPolicyBoardConfigPreMem.c
> > +++
> >
> b/Platform/Intel/WhiskeylakeOpenBoardPkg/UpXtreme/Library/PeiPolicyBo
> > ardConfigLib/PeiPchPolicyBoardConfigPreMem.c
> > @@ -25,12 +25,19 @@ UpdatePeiPchPolicyBoardConfigPreMem (  {
> >
> >    EFI_STATUS                         Status;
> >
> >    PCH_GENERAL_PREMEM_CONFIG          *PchGeneralPreMemConfig;
> >
> > +  PCH_DCI_PREMEM_CONFIG              *DciPreMemConfig;
> >
> >
> >
> >    DEBUG((DEBUG_INFO, "Updating PCH Policy by board config in Pre
> > Mem\n"));
> >
> >
> >
> >    Status = GetConfigBlock ((VOID *) SiPreMemPolicyPpi,
> > &gPchGeneralPreMemConfigGuid, (VOID *) &PchGeneralPreMemConfig);
> >
> >    ASSERT_EFI_ERROR (Status);
> >
> >
> >
> > +  Status = GetConfigBlock ((VOID *) SiPreMemPolicyPpi,
> > &gDciPreMemConfigGuid, (VOID *) &DciPreMemConfig);
> >
> > +  ASSERT_EFI_ERROR (Status);
> >
> > +
> >
> > +  DciPreMemConfig->PlatformDebugConsent = 3;
> >
> > +  DciPreMemConfig->DciUsb3TypecUfpDbg = 1;
> >
> > +
> >
> >    return Status;
> >
> >  }
> >
> >
> >
> > diff --git
> >
> a/Platform/Intel/WhiskeylakeOpenBoardPkg/UpXtreme/Library/PeiPolicyBo
> > ardConfigLib/PeiPolicyBoardConfigLib.inf
> >
> b/Platform/Intel/WhiskeylakeOpenBoardPkg/UpXtreme/Library/PeiPolicyBo
> > ardConfigLib/PeiPolicyBoardConfigLib.inf
> > index aaf0abbf04..affb322c59 100644
> > ---
> >
> a/Platform/Intel/WhiskeylakeOpenBoardPkg/UpXtreme/Library/PeiPolicyBo
> > ardConfigLib/PeiPolicyBoardConfigLib.inf
> > +++
> >
> b/Platform/Intel/WhiskeylakeOpenBoardPkg/UpXtreme/Library/PeiPolicyBo
> > ardConfigLib/PeiPolicyBoardConfigLib.inf
> > @@ -54,6 +54,7 @@
> >    gPchGeneralConfigGuid                         ## CONSUMES
> >
> >    gEfiTpmDeviceInstanceTpm20DtpmGuid
> >
> >    gEfiTpmDeviceInstanceTpm12Guid
> >
> > +  gDciPreMemConfigGuid
> >
> >
> >
> >  [Ppis]
> >
> >    gEfiPeiReadOnlyVariable2PpiGuid               ## CONSUMES
> >
> > diff --git
> > a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Pei
> > PolicyBoardConfigLib/PeiPchPolicyBoardConfigPreMem.c
> > b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Pei
> > PolicyBoardConfigLib/PeiPchPolicyBoardConfigPreMem.c
> > index 00cf73dfd9..5d75bc5e1c 100644
> > ---
> > a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Pei
> > PolicyBoardConfigLib/PeiPchPolicyBoardConfigPreMem.c
> > +++
> > b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Pei
> > PolicyBoardConfigLib/PeiPchPolicyBoardConfigPreMem.c
> > @@ -25,12 +25,18 @@ UpdatePeiPchPolicyBoardConfigPreMem (  {
> >
> >    EFI_STATUS                         Status;
> >
> >    PCH_GENERAL_PREMEM_CONFIG          *PchGeneralPreMemConfig;
> >
> > +  PCH_DCI_PREMEM_CONFIG              *DciPreMemConfig;
> >
> >
> >
> >    DEBUG((DEBUG_INFO, "Updating PCH Policy by board config in Pre
> > Mem\n"));
> >
> >
> >
> >    Status = GetConfigBlock ((VOID *) SiPreMemPolicyPpi,
> > &gPchGeneralPreMemConfigGuid, (VOID *) &PchGeneralPreMemConfig);
> >
> >    ASSERT_EFI_ERROR (Status);
> >
> >
> >
> > +  Status = GetConfigBlock ((VOID *) SiPreMemPolicyPpi,
> > &gDciPreMemConfigGuid, (VOID *) &DciPreMemConfig);
> >
> > +  ASSERT_EFI_ERROR (Status);
> >
> > +
> >
> > +  DciPreMemConfig->DciUsb3TypecUfpDbg = 2;
> >
> > +
> >
> >    return Status;
> >
> >  }
> >
> >
> >
> > diff --git
> > a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Pei
> > PolicyBoardConfigLib/PeiPolicyBoardConfigLib.inf
> > b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Pei
> > PolicyBoardConfigLib/PeiPolicyBoardConfigLib.inf
> > index 15ef223050..5de11d62e4 100644
> > ---
> > a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Pei
> > PolicyBoardConfigLib/PeiPolicyBoardConfigLib.inf
> > +++
> > b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/Library/Pei
> > PolicyBoardConfigLib/PeiPolicyBoardConfigLib.inf
> > @@ -54,6 +54,7 @@
> >    gPchGeneralConfigGuid                         ## CONSUMES
> >
> >    gEfiTpmDeviceInstanceTpm20DtpmGuid
> >
> >    gEfiTpmDeviceInstanceTpm12Guid
> >
> > +  gDciPreMemConfigGuid
> >
> >
> >
> >  [Ppis]
> >
> >    gEfiPeiReadOnlyVariable2PpiGuid               ## CONSUMES
> >
> > --
> > 2.24.0.windows.2



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#68746): https://edk2.groups.io/g/devel/message/68746
Mute This Topic: https://groups.io/mt/78383406/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