I don't see how it would be less risky to include new code rather than using the existing and well-tested solution for the same problem.
On Thu, 23 Aug 2018, 11:51 Ming, <ming.hu...@linaro.org> wrote: > Hi Leif, > > Is it ok replace with ConsolePrefDxe after ERP 18.08? > > > On 8/22/2018 10:49 AM, Ming wrote: > > > > > > On 8/22/2018 5:11 AM, Leif Lindholm wrote: > >> On Thu, Aug 16, 2018 at 08:12:35PM +0800, Ming Huang wrote: > >>> If install SPCR table, KVM will not output while install or boot > >>> some OS, like ubuntu, so add SPCR switch setup item and set it > >>> disable by default. > >> > >> This one was supposed to be replaced with > >> EmbeddedPkg/Drivers/ConsolePrefDxe, right? > > > > Yes, I will take a look ConsolePrefDxe and replace with it after ERP > 18.08. > > > >> > >> / > >> Leif > >> > >>> Contributed-under: TianoCore Contribution Agreement 1.1 > >>> Signed-off-by: Ming Huang <ming.hu...@linaro.org> > >>> Signed-off-by: Heyi Guo <heyi....@linaro.org> > >>> --- > >>> Silicon/Hisilicon/Drivers/HisiAcpiPlatformDxe/AcpiPlatformDxe.inf | > 1 + > >>> Silicon/Hisilicon/Drivers/HisiAcpiPlatformDxe/UpdateAcpiTable.c | > 24 ++++++++++++++++++++ > >>> 2 files changed, 25 insertions(+) > >>> > >>> diff --git > a/Silicon/Hisilicon/Drivers/HisiAcpiPlatformDxe/AcpiPlatformDxe.inf > b/Silicon/Hisilicon/Drivers/HisiAcpiPlatformDxe/AcpiPlatformDxe.inf > >>> index 281a4f2ebd..3d133aff85 100644 > >>> --- a/Silicon/Hisilicon/Drivers/HisiAcpiPlatformDxe/AcpiPlatformDxe.inf > >>> +++ b/Silicon/Hisilicon/Drivers/HisiAcpiPlatformDxe/AcpiPlatformDxe.inf > >>> @@ -51,6 +51,7 @@ > >>> > >>> [Guids] > >>> gHisiEfiMemoryMapGuid > >>> + gOemConfigGuid > >>> > >>> [Pcd] > >>> gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiTableStorageFile ## > CONSUMES > >>> diff --git > a/Silicon/Hisilicon/Drivers/HisiAcpiPlatformDxe/UpdateAcpiTable.c > b/Silicon/Hisilicon/Drivers/HisiAcpiPlatformDxe/UpdateAcpiTable.c > >>> index 54f49977c3..32878ca4f9 100644 > >>> --- a/Silicon/Hisilicon/Drivers/HisiAcpiPlatformDxe/UpdateAcpiTable.c > >>> +++ b/Silicon/Hisilicon/Drivers/HisiAcpiPlatformDxe/UpdateAcpiTable.c > >>> @@ -16,8 +16,10 @@ > >>> #include <Library/DebugLib.h> > >>> #include <Library/HobLib.h> > >>> #include <Library/HwMemInitLib.h> > >>> +#include <Library/OemConfigData.h> > >>> #include <Library/OemMiscLib.h> > >>> #include <Library/UefiBootServicesTableLib.h> > >>> +#include <Library/UefiRuntimeServicesTableLib.h> > >>> #include <Library/UefiLib.h> > >>> > >>> #define CORECOUNT(X) ((X) * CORE_NUM_PER_SOCKET) > >>> @@ -114,6 +116,25 @@ UpdateSlit ( > >>> return EFI_SUCCESS; > >>> } > >>> > >>> +STATIC > >>> +EFI_STATUS > >>> +IsNeedSpcr ( > >>> + IN OUT EFI_ACPI_DESCRIPTION_HEADER *Table > >>> + ) > >>> +{ > >>> + EFI_STATUS Status; > >>> + OEM_CONFIG_DATA SetupData; > >>> + UINTN DataSize = sizeof (OEM_CONFIG_DATA); > >>> + > >>> + Status = gRT->GetVariable (OEM_CONFIG_NAME, &gOemConfigGuid, NULL, > &DataSize, &SetupData); > >>> + if (!EFI_ERROR (Status) && (SetupData.EnableSpcr == FALSE)) { > >>> + return EFI_ABORTED; > >>> + } > >>> + > >>> + return EFI_SUCCESS; > >>> +} > >>> + > >>> + > >>> EFI_STATUS > >>> UpdateAcpiTable ( > >>> IN OUT EFI_ACPI_DESCRIPTION_HEADER *TableHeader > >>> @@ -130,6 +151,9 @@ UpdateAcpiTable ( > >>> case EFI_ACPI_6_0_SYSTEM_LOCALITY_INFORMATION_TABLE_SIGNATURE: > >>> Status = UpdateSlit (TableHeader); > >>> break; > >>> + case EFI_ACPI_6_2_SERIAL_PORT_CONSOLE_REDIRECTION_TABLE_SIGNATURE: > >>> + Status = IsNeedSpcr (TableHeader); > >>> + break; > >>> } > >>> return Status; > >>> } > >>> -- > >>> 2.17.0 > >>> > _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel