Date
1 - 4 of 4
[Patch] Vlv2TbltDevicePkg:Signal EndOfDxe Event.
lushifex <shifeix.a.lu@...>
According to PI spec,EndOfDxe Event should be signaled
before DxeSmmReadyToLock protocol installation.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: lushifex <shifeix.a.lu@...>
---
.../Library/PlatformBdsLib/BdsPlatform.c | 37 +++++++++++++++++++++-
.../Library/PlatformBdsLib/PlatformBdsLib.inf | 3 +-
2 files changed, 38 insertions(+), 2 deletions(-)
diff --git a/Vlv2TbltDevicePkg/Library/PlatformBdsLib/BdsPlatform.c b/Vlv2TbltDevicePkg/Library/PlatformBdsLib/BdsPlatform.c
index 195d734..5df3396 100644
--- a/Vlv2TbltDevicePkg/Library/PlatformBdsLib/BdsPlatform.c
+++ b/Vlv2TbltDevicePkg/Library/PlatformBdsLib/BdsPlatform.c
@@ -1,8 +1,8 @@
/** @file
- Copyright (c) 2004 - 2015, Intel Corporation. All rights reserved.<BR>
+ Copyright (c) 2004 - 2016, Intel Corporation. All rights reserved.<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
@@ -203,10 +203,29 @@ ShellImageCallback (
{
BdsSetConsoleMode (TRUE);
DEBUG ((EFI_D_INFO, "BdsEntry ShellImageCallback \n"));
}
+/**
+ An empty function to pass error checking of CreateEventEx ().
+
+ @param Event Event whose notification function is being invoked.
+ @param Context Pointer to the notification function's context,
+ which is implementation-dependent.
+
+**/
+STATIC
+VOID
+EFIAPI
+EmptyCallbackFunction (
+ IN EFI_EVENT Event,
+ IN VOID *Context
+ )
+{
+ return;
+}
+
//
// BDS Platform Functions
//
/**
Platform Bds init. Incude the platform firmware vendor, revision
@@ -223,12 +242,28 @@ PlatformBdsInit (
VOID
)
{
EFI_STATUS Status;
EFI_EVENT ShellImageEvent;
+ EFI_EVENT EndOfDxeEvent;
EFI_GUID ShellEnvProtocol = SHELL_ENVIRONMENT_INTERFACE_PROTOCOL;
+ //
+ // Signal EndOfDxe PI Event
+ //
+ Status = gBS->CreateEventEx (
+ EVT_NOTIFY_SIGNAL,
+ TPL_CALLBACK,
+ EmptyCallbackFunction,
+ NULL,
+ &gEfiEndOfDxeEventGroupGuid,
+ &EndOfDxeEvent
+ );
+ if (!EFI_ERROR (Status)) {
+ gBS->SignalEvent (EndOfDxeEvent);
+ }
+
#ifdef __GNUC__
SerialPortWrite((UINT8 *)">>>>BdsEntry[GCC]\r\n", 19);
#else
SerialPortWrite((UINT8 *)">>>>BdsEntry\r\n", 14);
#endif
diff --git a/Vlv2TbltDevicePkg/Library/PlatformBdsLib/PlatformBdsLib.inf b/Vlv2TbltDevicePkg/Library/PlatformBdsLib/PlatformBdsLib.inf
index 45578e8..c64bab9 100644
--- a/Vlv2TbltDevicePkg/Library/PlatformBdsLib/PlatformBdsLib.inf
+++ b/Vlv2TbltDevicePkg/Library/PlatformBdsLib/PlatformBdsLib.inf
@@ -1,9 +1,9 @@
#/** @file
# Component name for module PlatformBootManagerLib
#
-# Copyright (c) 2008 - 2015, Intel Corporation. All rights reserved.<BR>
+# Copyright (c) 2008 - 2016, Intel Corporation. All rights reserved.<BR>
#
# This program and the accompanying materials are licensed and made available under
# the terms and conditions of the BSD License that accompanies this distribution.
# The full text of the license may be found at
# http://opensource.org/licenses/bsd-license.php.
@@ -95,10 +95,11 @@
gEfiMemoryTypeInformationGuid
gEfiCapsuleVendorGuid
gEfiGlobalVariableGuid
gEfiNormalSetupGuid
gEfiPartTypeSystemPartGuid
+ gEfiEndOfDxeEventGroupGuid
[Pcd]
gPlatformModuleTokenSpaceGuid.PcdFlashFvRecovery2Base
gPlatformModuleTokenSpaceGuid.PcdFlashFvMainBase
gPlatformModuleTokenSpaceGuid.PcdFlashFvRecoveryBase
--
2.6.2.windows.1
before DxeSmmReadyToLock protocol installation.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: lushifex <shifeix.a.lu@...>
---
.../Library/PlatformBdsLib/BdsPlatform.c | 37 +++++++++++++++++++++-
.../Library/PlatformBdsLib/PlatformBdsLib.inf | 3 +-
2 files changed, 38 insertions(+), 2 deletions(-)
diff --git a/Vlv2TbltDevicePkg/Library/PlatformBdsLib/BdsPlatform.c b/Vlv2TbltDevicePkg/Library/PlatformBdsLib/BdsPlatform.c
index 195d734..5df3396 100644
--- a/Vlv2TbltDevicePkg/Library/PlatformBdsLib/BdsPlatform.c
+++ b/Vlv2TbltDevicePkg/Library/PlatformBdsLib/BdsPlatform.c
@@ -1,8 +1,8 @@
/** @file
- Copyright (c) 2004 - 2015, Intel Corporation. All rights reserved.<BR>
+ Copyright (c) 2004 - 2016, Intel Corporation. All rights reserved.<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
@@ -203,10 +203,29 @@ ShellImageCallback (
{
BdsSetConsoleMode (TRUE);
DEBUG ((EFI_D_INFO, "BdsEntry ShellImageCallback \n"));
}
+/**
+ An empty function to pass error checking of CreateEventEx ().
+
+ @param Event Event whose notification function is being invoked.
+ @param Context Pointer to the notification function's context,
+ which is implementation-dependent.
+
+**/
+STATIC
+VOID
+EFIAPI
+EmptyCallbackFunction (
+ IN EFI_EVENT Event,
+ IN VOID *Context
+ )
+{
+ return;
+}
+
//
// BDS Platform Functions
//
/**
Platform Bds init. Incude the platform firmware vendor, revision
@@ -223,12 +242,28 @@ PlatformBdsInit (
VOID
)
{
EFI_STATUS Status;
EFI_EVENT ShellImageEvent;
+ EFI_EVENT EndOfDxeEvent;
EFI_GUID ShellEnvProtocol = SHELL_ENVIRONMENT_INTERFACE_PROTOCOL;
+ //
+ // Signal EndOfDxe PI Event
+ //
+ Status = gBS->CreateEventEx (
+ EVT_NOTIFY_SIGNAL,
+ TPL_CALLBACK,
+ EmptyCallbackFunction,
+ NULL,
+ &gEfiEndOfDxeEventGroupGuid,
+ &EndOfDxeEvent
+ );
+ if (!EFI_ERROR (Status)) {
+ gBS->SignalEvent (EndOfDxeEvent);
+ }
+
#ifdef __GNUC__
SerialPortWrite((UINT8 *)">>>>BdsEntry[GCC]\r\n", 19);
#else
SerialPortWrite((UINT8 *)">>>>BdsEntry\r\n", 14);
#endif
diff --git a/Vlv2TbltDevicePkg/Library/PlatformBdsLib/PlatformBdsLib.inf b/Vlv2TbltDevicePkg/Library/PlatformBdsLib/PlatformBdsLib.inf
index 45578e8..c64bab9 100644
--- a/Vlv2TbltDevicePkg/Library/PlatformBdsLib/PlatformBdsLib.inf
+++ b/Vlv2TbltDevicePkg/Library/PlatformBdsLib/PlatformBdsLib.inf
@@ -1,9 +1,9 @@
#/** @file
# Component name for module PlatformBootManagerLib
#
-# Copyright (c) 2008 - 2015, Intel Corporation. All rights reserved.<BR>
+# Copyright (c) 2008 - 2016, Intel Corporation. All rights reserved.<BR>
#
# This program and the accompanying materials are licensed and made available under
# the terms and conditions of the BSD License that accompanies this distribution.
# The full text of the license may be found at
# http://opensource.org/licenses/bsd-license.php.
@@ -95,10 +95,11 @@
gEfiMemoryTypeInformationGuid
gEfiCapsuleVendorGuid
gEfiGlobalVariableGuid
gEfiNormalSetupGuid
gEfiPartTypeSystemPartGuid
+ gEfiEndOfDxeEventGroupGuid
[Pcd]
gPlatformModuleTokenSpaceGuid.PcdFlashFvRecovery2Base
gPlatformModuleTokenSpaceGuid.PcdFlashFvMainBase
gPlatformModuleTokenSpaceGuid.PcdFlashFvRecoveryBase
--
2.6.2.windows.1
Wei, David <david.wei@...>
Reviewed-by: David Wei <david.wei@...>
Thanks,
David Wei
Intel SSG BIOS Team
toggle quoted message
Show quoted text
Thanks,
David Wei
Intel SSG BIOS Team
-----Original Message-----
From: Lu, ShifeiX A
Sent: Friday, July 29, 2016 10:27 AM
To: edk2-devel@...
Cc: Wei; Wei, David <david.wei@...>
Subject: [Patch] Vlv2TbltDevicePkg:Signal EndOfDxe Event.
According to PI spec,EndOfDxe Event should be signaled
before DxeSmmReadyToLock protocol installation.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: lushifex <shifeix.a.lu@...>
---
.../Library/PlatformBdsLib/BdsPlatform.c | 37 +++++++++++++++++++++-
.../Library/PlatformBdsLib/PlatformBdsLib.inf | 3 +-
2 files changed, 38 insertions(+), 2 deletions(-)
diff --git a/Vlv2TbltDevicePkg/Library/PlatformBdsLib/BdsPlatform.c b/Vlv2TbltDevicePkg/Library/PlatformBdsLib/BdsPlatform.c
index 195d734..5df3396 100644
--- a/Vlv2TbltDevicePkg/Library/PlatformBdsLib/BdsPlatform.c
+++ b/Vlv2TbltDevicePkg/Library/PlatformBdsLib/BdsPlatform.c
@@ -1,8 +1,8 @@
/** @file
- Copyright (c) 2004 - 2015, Intel Corporation. All rights reserved.<BR>
+ Copyright (c) 2004 - 2016, Intel Corporation. All rights reserved.<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
@@ -203,10 +203,29 @@ ShellImageCallback (
{
BdsSetConsoleMode (TRUE);
DEBUG ((EFI_D_INFO, "BdsEntry ShellImageCallback \n"));
}
+/**
+ An empty function to pass error checking of CreateEventEx ().
+
+ @param Event Event whose notification function is being invoked.
+ @param Context Pointer to the notification function's context,
+ which is implementation-dependent.
+
+**/
+STATIC
+VOID
+EFIAPI
+EmptyCallbackFunction (
+ IN EFI_EVENT Event,
+ IN VOID *Context
+ )
+{
+ return;
+}
+
//
// BDS Platform Functions
//
/**
Platform Bds init. Incude the platform firmware vendor, revision
@@ -223,12 +242,28 @@ PlatformBdsInit (
VOID
)
{
EFI_STATUS Status;
EFI_EVENT ShellImageEvent;
+ EFI_EVENT EndOfDxeEvent;
EFI_GUID ShellEnvProtocol = SHELL_ENVIRONMENT_INTERFACE_PROTOCOL;
+ //
+ // Signal EndOfDxe PI Event
+ //
+ Status = gBS->CreateEventEx (
+ EVT_NOTIFY_SIGNAL,
+ TPL_CALLBACK,
+ EmptyCallbackFunction,
+ NULL,
+ &gEfiEndOfDxeEventGroupGuid,
+ &EndOfDxeEvent
+ );
+ if (!EFI_ERROR (Status)) {
+ gBS->SignalEvent (EndOfDxeEvent);
+ }
+
#ifdef __GNUC__
SerialPortWrite((UINT8 *)">>>>BdsEntry[GCC]\r\n", 19);
#else
SerialPortWrite((UINT8 *)">>>>BdsEntry\r\n", 14);
#endif
diff --git a/Vlv2TbltDevicePkg/Library/PlatformBdsLib/PlatformBdsLib.inf b/Vlv2TbltDevicePkg/Library/PlatformBdsLib/PlatformBdsLib.inf
index 45578e8..c64bab9 100644
--- a/Vlv2TbltDevicePkg/Library/PlatformBdsLib/PlatformBdsLib.inf
+++ b/Vlv2TbltDevicePkg/Library/PlatformBdsLib/PlatformBdsLib.inf
@@ -1,9 +1,9 @@
#/** @file
# Component name for module PlatformBootManagerLib
#
-# Copyright (c) 2008 - 2015, Intel Corporation. All rights reserved.<BR>
+# Copyright (c) 2008 - 2016, Intel Corporation. All rights reserved.<BR>
#
# This program and the accompanying materials are licensed and made available under
# the terms and conditions of the BSD License that accompanies this distribution.
# The full text of the license may be found at
# http://opensource.org/licenses/bsd-license.php.
@@ -95,10 +95,11 @@
gEfiMemoryTypeInformationGuid
gEfiCapsuleVendorGuid
gEfiGlobalVariableGuid
gEfiNormalSetupGuid
gEfiPartTypeSystemPartGuid
+ gEfiEndOfDxeEventGroupGuid
[Pcd]
gPlatformModuleTokenSpaceGuid.PcdFlashFvRecovery2Base
gPlatformModuleTokenSpaceGuid.PcdFlashFvMainBase
gPlatformModuleTokenSpaceGuid.PcdFlashFvRecoveryBase
--
2.6.2.windows.1
From: Lu, ShifeiX A
Sent: Friday, July 29, 2016 10:27 AM
To: edk2-devel@...
Cc: Wei; Wei, David <david.wei@...>
Subject: [Patch] Vlv2TbltDevicePkg:Signal EndOfDxe Event.
According to PI spec,EndOfDxe Event should be signaled
before DxeSmmReadyToLock protocol installation.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: lushifex <shifeix.a.lu@...>
---
.../Library/PlatformBdsLib/BdsPlatform.c | 37 +++++++++++++++++++++-
.../Library/PlatformBdsLib/PlatformBdsLib.inf | 3 +-
2 files changed, 38 insertions(+), 2 deletions(-)
diff --git a/Vlv2TbltDevicePkg/Library/PlatformBdsLib/BdsPlatform.c b/Vlv2TbltDevicePkg/Library/PlatformBdsLib/BdsPlatform.c
index 195d734..5df3396 100644
--- a/Vlv2TbltDevicePkg/Library/PlatformBdsLib/BdsPlatform.c
+++ b/Vlv2TbltDevicePkg/Library/PlatformBdsLib/BdsPlatform.c
@@ -1,8 +1,8 @@
/** @file
- Copyright (c) 2004 - 2015, Intel Corporation. All rights reserved.<BR>
+ Copyright (c) 2004 - 2016, Intel Corporation. All rights reserved.<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
@@ -203,10 +203,29 @@ ShellImageCallback (
{
BdsSetConsoleMode (TRUE);
DEBUG ((EFI_D_INFO, "BdsEntry ShellImageCallback \n"));
}
+/**
+ An empty function to pass error checking of CreateEventEx ().
+
+ @param Event Event whose notification function is being invoked.
+ @param Context Pointer to the notification function's context,
+ which is implementation-dependent.
+
+**/
+STATIC
+VOID
+EFIAPI
+EmptyCallbackFunction (
+ IN EFI_EVENT Event,
+ IN VOID *Context
+ )
+{
+ return;
+}
+
//
// BDS Platform Functions
//
/**
Platform Bds init. Incude the platform firmware vendor, revision
@@ -223,12 +242,28 @@ PlatformBdsInit (
VOID
)
{
EFI_STATUS Status;
EFI_EVENT ShellImageEvent;
+ EFI_EVENT EndOfDxeEvent;
EFI_GUID ShellEnvProtocol = SHELL_ENVIRONMENT_INTERFACE_PROTOCOL;
+ //
+ // Signal EndOfDxe PI Event
+ //
+ Status = gBS->CreateEventEx (
+ EVT_NOTIFY_SIGNAL,
+ TPL_CALLBACK,
+ EmptyCallbackFunction,
+ NULL,
+ &gEfiEndOfDxeEventGroupGuid,
+ &EndOfDxeEvent
+ );
+ if (!EFI_ERROR (Status)) {
+ gBS->SignalEvent (EndOfDxeEvent);
+ }
+
#ifdef __GNUC__
SerialPortWrite((UINT8 *)">>>>BdsEntry[GCC]\r\n", 19);
#else
SerialPortWrite((UINT8 *)">>>>BdsEntry\r\n", 14);
#endif
diff --git a/Vlv2TbltDevicePkg/Library/PlatformBdsLib/PlatformBdsLib.inf b/Vlv2TbltDevicePkg/Library/PlatformBdsLib/PlatformBdsLib.inf
index 45578e8..c64bab9 100644
--- a/Vlv2TbltDevicePkg/Library/PlatformBdsLib/PlatformBdsLib.inf
+++ b/Vlv2TbltDevicePkg/Library/PlatformBdsLib/PlatformBdsLib.inf
@@ -1,9 +1,9 @@
#/** @file
# Component name for module PlatformBootManagerLib
#
-# Copyright (c) 2008 - 2015, Intel Corporation. All rights reserved.<BR>
+# Copyright (c) 2008 - 2016, Intel Corporation. All rights reserved.<BR>
#
# This program and the accompanying materials are licensed and made available under
# the terms and conditions of the BSD License that accompanies this distribution.
# The full text of the license may be found at
# http://opensource.org/licenses/bsd-license.php.
@@ -95,10 +95,11 @@
gEfiMemoryTypeInformationGuid
gEfiCapsuleVendorGuid
gEfiGlobalVariableGuid
gEfiNormalSetupGuid
gEfiPartTypeSystemPartGuid
+ gEfiEndOfDxeEventGroupGuid
[Pcd]
gPlatformModuleTokenSpaceGuid.PcdFlashFvRecovery2Base
gPlatformModuleTokenSpaceGuid.PcdFlashFvMainBase
gPlatformModuleTokenSpaceGuid.PcdFlashFvRecoveryBase
--
2.6.2.windows.1
Laszlo Ersek
On 07/29/16 04:31, Wei, David wrote:
Please refer to the following commits:
ca8f50e88e03 MdePkg/UefiLib: move InternalEmptyFunction to UefiLib.c
772fb7cb13de MdePkg/UefiLib: introduce EfiEventGroupSignal
ff55dd3befb4 IntelFrameworkPkg/FrameworkUefiLib: move InternalEmptyFunction to UefiLib.c
6212b9481d82 IntelFrameworkPkg/FrameworkUefiLib: implement EfiEventGroupSignal
dfc9514794fc ArmVirtPkg/PlatformIntelBdsLib: rebase to EfiEventGroupSignal
36e8e6992d0c OvmfPkg/PlatformBdsLib: rebase to EfiEventGroupSignal
Thanks
Laszlo
Reviewed-by: David Wei <david.wei@...>I recommend using the new EfiEventGroupSignal() function from UefiLib instead.
Thanks,
David Wei
Intel SSG BIOS Team
Please refer to the following commits:
ca8f50e88e03 MdePkg/UefiLib: move InternalEmptyFunction to UefiLib.c
772fb7cb13de MdePkg/UefiLib: introduce EfiEventGroupSignal
ff55dd3befb4 IntelFrameworkPkg/FrameworkUefiLib: move InternalEmptyFunction to UefiLib.c
6212b9481d82 IntelFrameworkPkg/FrameworkUefiLib: implement EfiEventGroupSignal
dfc9514794fc ArmVirtPkg/PlatformIntelBdsLib: rebase to EfiEventGroupSignal
36e8e6992d0c OvmfPkg/PlatformBdsLib: rebase to EfiEventGroupSignal
Thanks
Laszlo
-----Original Message-----
From: Lu, ShifeiX A
Sent: Friday, July 29, 2016 10:27 AM
To: edk2-devel@...
Cc: Wei; Wei, David <david.wei@...>
Subject: [Patch] Vlv2TbltDevicePkg:Signal EndOfDxe Event.
According to PI spec,EndOfDxe Event should be signaled
before DxeSmmReadyToLock protocol installation.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: lushifex <shifeix.a.lu@...>
---
.../Library/PlatformBdsLib/BdsPlatform.c | 37 +++++++++++++++++++++-
.../Library/PlatformBdsLib/PlatformBdsLib.inf | 3 +-
2 files changed, 38 insertions(+), 2 deletions(-)
diff --git a/Vlv2TbltDevicePkg/Library/PlatformBdsLib/BdsPlatform.c b/Vlv2TbltDevicePkg/Library/PlatformBdsLib/BdsPlatform.c
index 195d734..5df3396 100644
--- a/Vlv2TbltDevicePkg/Library/PlatformBdsLib/BdsPlatform.c
+++ b/Vlv2TbltDevicePkg/Library/PlatformBdsLib/BdsPlatform.c
@@ -1,8 +1,8 @@
/** @file
- Copyright (c) 2004 - 2015, Intel Corporation. All rights reserved.<BR>
+ Copyright (c) 2004 - 2016, Intel Corporation. All rights reserved.<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
@@ -203,10 +203,29 @@ ShellImageCallback (
{
BdsSetConsoleMode (TRUE);
DEBUG ((EFI_D_INFO, "BdsEntry ShellImageCallback \n"));
}
+/**
+ An empty function to pass error checking of CreateEventEx ().
+
+ @param Event Event whose notification function is being invoked.
+ @param Context Pointer to the notification function's context,
+ which is implementation-dependent.
+
+**/
+STATIC
+VOID
+EFIAPI
+EmptyCallbackFunction (
+ IN EFI_EVENT Event,
+ IN VOID *Context
+ )
+{
+ return;
+}
+
//
// BDS Platform Functions
//
/**
Platform Bds init. Incude the platform firmware vendor, revision
@@ -223,12 +242,28 @@ PlatformBdsInit (
VOID
)
{
EFI_STATUS Status;
EFI_EVENT ShellImageEvent;
+ EFI_EVENT EndOfDxeEvent;
EFI_GUID ShellEnvProtocol = SHELL_ENVIRONMENT_INTERFACE_PROTOCOL;
+ //
+ // Signal EndOfDxe PI Event
+ //
+ Status = gBS->CreateEventEx (
+ EVT_NOTIFY_SIGNAL,
+ TPL_CALLBACK,
+ EmptyCallbackFunction,
+ NULL,
+ &gEfiEndOfDxeEventGroupGuid,
+ &EndOfDxeEvent
+ );
+ if (!EFI_ERROR (Status)) {
+ gBS->SignalEvent (EndOfDxeEvent);
+ }
+
#ifdef __GNUC__
SerialPortWrite((UINT8 *)">>>>BdsEntry[GCC]\r\n", 19);
#else
SerialPortWrite((UINT8 *)">>>>BdsEntry\r\n", 14);
#endif
diff --git a/Vlv2TbltDevicePkg/Library/PlatformBdsLib/PlatformBdsLib.inf b/Vlv2TbltDevicePkg/Library/PlatformBdsLib/PlatformBdsLib.inf
index 45578e8..c64bab9 100644
--- a/Vlv2TbltDevicePkg/Library/PlatformBdsLib/PlatformBdsLib.inf
+++ b/Vlv2TbltDevicePkg/Library/PlatformBdsLib/PlatformBdsLib.inf
@@ -1,9 +1,9 @@
#/** @file
# Component name for module PlatformBootManagerLib
#
-# Copyright (c) 2008 - 2015, Intel Corporation. All rights reserved.<BR>
+# Copyright (c) 2008 - 2016, Intel Corporation. All rights reserved.<BR>
#
# This program and the accompanying materials are licensed and made available under
# the terms and conditions of the BSD License that accompanies this distribution.
# The full text of the license may be found at
# http://opensource.org/licenses/bsd-license.php.
@@ -95,10 +95,11 @@
gEfiMemoryTypeInformationGuid
gEfiCapsuleVendorGuid
gEfiGlobalVariableGuid
gEfiNormalSetupGuid
gEfiPartTypeSystemPartGuid
+ gEfiEndOfDxeEventGroupGuid
[Pcd]
gPlatformModuleTokenSpaceGuid.PcdFlashFvRecovery2Base
gPlatformModuleTokenSpaceGuid.PcdFlashFvMainBase
gPlatformModuleTokenSpaceGuid.PcdFlashFvRecoveryBase
Lu, ShifeiX A <shifeix.a.lu@...>
Thanks Laszlo!
I will follow it.
Shifei
toggle quoted message
Show quoted text
I will follow it.
Shifei
-----Original Message-----
From: edk2-devel [mailto:edk2-devel-bounces@...] On Behalf Of Laszlo Ersek
Sent: Friday, July 29, 2016 3:51 PM
To: Wei, David; Lu, ShifeiX A
Cc: edk2-devel@...
Subject: Re: [edk2] [Patch] Vlv2TbltDevicePkg:Signal EndOfDxe Event.
On 07/29/16 04:31, Wei, David wrote:
Please refer to the following commits:
ca8f50e88e03 MdePkg/UefiLib: move InternalEmptyFunction to UefiLib.c 772fb7cb13de MdePkg/UefiLib: introduce EfiEventGroupSignal
ff55dd3befb4 IntelFrameworkPkg/FrameworkUefiLib: move InternalEmptyFunction to UefiLib.c
6212b9481d82 IntelFrameworkPkg/FrameworkUefiLib: implement EfiEventGroupSignal dfc9514794fc ArmVirtPkg/PlatformIntelBdsLib: rebase to EfiEventGroupSignal 36e8e6992d0c OvmfPkg/PlatformBdsLib: rebase to EfiEventGroupSignal
Thanks
Laszlo
edk2-devel mailing list
edk2-devel@...
https://lists.01.org/mailman/listinfo/edk2-devel
From: edk2-devel [mailto:edk2-devel-bounces@...] On Behalf Of Laszlo Ersek
Sent: Friday, July 29, 2016 3:51 PM
To: Wei, David; Lu, ShifeiX A
Cc: edk2-devel@...
Subject: Re: [edk2] [Patch] Vlv2TbltDevicePkg:Signal EndOfDxe Event.
On 07/29/16 04:31, Wei, David wrote:
Reviewed-by: David Wei <david.wei@...>I recommend using the new EfiEventGroupSignal() function from UefiLib instead.
Thanks,
David Wei
Intel SSG BIOS Team
Please refer to the following commits:
ca8f50e88e03 MdePkg/UefiLib: move InternalEmptyFunction to UefiLib.c 772fb7cb13de MdePkg/UefiLib: introduce EfiEventGroupSignal
ff55dd3befb4 IntelFrameworkPkg/FrameworkUefiLib: move InternalEmptyFunction to UefiLib.c
6212b9481d82 IntelFrameworkPkg/FrameworkUefiLib: implement EfiEventGroupSignal dfc9514794fc ArmVirtPkg/PlatformIntelBdsLib: rebase to EfiEventGroupSignal 36e8e6992d0c OvmfPkg/PlatformBdsLib: rebase to EfiEventGroupSignal
Thanks
Laszlo
-----Original Message-----_______________________________________________
From: Lu, ShifeiX A
Sent: Friday, July 29, 2016 10:27 AM
To: edk2-devel@...
Cc: Wei; Wei, David <david.wei@...>
Subject: [Patch] Vlv2TbltDevicePkg:Signal EndOfDxe Event.
According to PI spec,EndOfDxe Event should be signaled before
DxeSmmReadyToLock protocol installation.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: lushifex <shifeix.a.lu@...>
---
.../Library/PlatformBdsLib/BdsPlatform.c | 37 +++++++++++++++++++++-
.../Library/PlatformBdsLib/PlatformBdsLib.inf | 3 +-
2 files changed, 38 insertions(+), 2 deletions(-)
diff --git a/Vlv2TbltDevicePkg/Library/PlatformBdsLib/BdsPlatform.c
b/Vlv2TbltDevicePkg/Library/PlatformBdsLib/BdsPlatform.c
index 195d734..5df3396 100644
--- a/Vlv2TbltDevicePkg/Library/PlatformBdsLib/BdsPlatform.c
+++ b/Vlv2TbltDevicePkg/Library/PlatformBdsLib/BdsPlatform.c
@@ -1,8 +1,8 @@
/** @file
- Copyright (c) 2004 - 2015, Intel Corporation. All rights
reserved.<BR>
+ Copyright (c) 2004 - 2016, Intel Corporation. All rights
+ reserved.<BR>
This program and the accompanying materials are licensed and made
available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
@@ -203,10 +203,29 @@ ShellImageCallback ( {
BdsSetConsoleMode (TRUE);
DEBUG ((EFI_D_INFO, "BdsEntry ShellImageCallback \n")); }
+/**
+ An empty function to pass error checking of CreateEventEx ().
+
+ @param Event Event whose notification function is being invoked.
+ @param Context Pointer to the notification function's context,
+ which is implementation-dependent.
+
+**/
+STATIC
+VOID
+EFIAPI
+EmptyCallbackFunction (
+ IN EFI_EVENT Event,
+ IN VOID *Context
+ )
+{
+ return;
+}
+
//
// BDS Platform Functions
//
/**
Platform Bds init. Incude the platform firmware vendor, revision @@
-223,12 +242,28 @@ PlatformBdsInit (
VOID
)
{
EFI_STATUS Status;
EFI_EVENT ShellImageEvent;
+ EFI_EVENT EndOfDxeEvent;
EFI_GUID ShellEnvProtocol = SHELL_ENVIRONMENT_INTERFACE_PROTOCOL;
+ //
+ // Signal EndOfDxe PI Event
+ //
+ Status = gBS->CreateEventEx (
+ EVT_NOTIFY_SIGNAL,
+ TPL_CALLBACK,
+ EmptyCallbackFunction,
+ NULL,
+ &gEfiEndOfDxeEventGroupGuid,
+ &EndOfDxeEvent
+ );
+ if (!EFI_ERROR (Status)) {
+ gBS->SignalEvent (EndOfDxeEvent); }
+
#ifdef __GNUC__
SerialPortWrite((UINT8 *)">>>>BdsEntry[GCC]\r\n", 19);
#else
SerialPortWrite((UINT8 *)">>>>BdsEntry\r\n", 14);
#endif
diff --git
a/Vlv2TbltDevicePkg/Library/PlatformBdsLib/PlatformBdsLib.inf
b/Vlv2TbltDevicePkg/Library/PlatformBdsLib/PlatformBdsLib.inf
index 45578e8..c64bab9 100644
--- a/Vlv2TbltDevicePkg/Library/PlatformBdsLib/PlatformBdsLib.inf
+++ b/Vlv2TbltDevicePkg/Library/PlatformBdsLib/PlatformBdsLib.inf
@@ -1,9 +1,9 @@
#/** @file
# Component name for module PlatformBootManagerLib # -# Copyright
(c) 2008 - 2015, Intel Corporation. All rights reserved.<BR>
+# Copyright (c) 2008 - 2016, Intel Corporation. All rights
+reserved.<BR>
#
# This program and the accompanying materials are licensed and made
available under
# the terms and conditions of the BSD License that accompanies this distribution.
# The full text of the license may be found at
# http://opensource.org/licenses/bsd-license.php.
@@ -95,10 +95,11 @@
gEfiMemoryTypeInformationGuid
gEfiCapsuleVendorGuid
gEfiGlobalVariableGuid
gEfiNormalSetupGuid
gEfiPartTypeSystemPartGuid
+ gEfiEndOfDxeEventGroupGuid
[Pcd]
gPlatformModuleTokenSpaceGuid.PcdFlashFvRecovery2Base
gPlatformModuleTokenSpaceGuid.PcdFlashFvMainBase
gPlatformModuleTokenSpaceGuid.PcdFlashFvRecoveryBase
edk2-devel mailing list
edk2-devel@...
https://lists.01.org/mailman/listinfo/edk2-devel