* [PATCH 00/11] Add ResetPlatformSpecific() to ResetSystemLib
@ 2016-08-10 5:56 Ruiyu Ni
2016-08-10 5:56 ` [PATCH 01/11] MdePkg/UefiSpec.h: Align function header of ResetSystem to UEFI Spec Ruiyu Ni
` (10 more replies)
0 siblings, 11 replies; 21+ messages in thread
From: Ruiyu Ni @ 2016-08-10 5:56 UTC (permalink / raw)
To: edk2-devel
The patches add ResetPlatformSpecific() to ResetSystemLib library class
and all library instances.
The KbcResetDxe driver is removed from PcAtChipsetPkg.
Ruiyu Ni (11):
MdePkg/UefiSpec.h: Align function header of ResetSystem to UEFI Spec
MdeModulePkg: Add API ResetPlatformSpecific() to ResetSystemLib.h
MdeModulePkg/BaseResetSystemLibNull: Implement ResetPlatformSpecific
CorebootPayloadPkg/ResetSystemLib: Implement ResetPlatformSpecific
OvmfPkg/ResetSystemLib: Implement ResetPlatformSpecific
PcAtChipsetPkg/ResetSystemLib: Implement ResetPlatformSpecific
QuarkSocPkg/ResetSystemLib: Implement ResetPlatformSpecific
Vlv2TbltDevicePkg/ResetSystemLib: Implement ResetPlatformSpecific
OvmfPkg: Use MdeModulePkg/ResetSystemRuntimeDxe
PcAtChipsetPkg: Remove KbcResetDxe
MdeModulePkg/ResetSystemRuntimeDxe: Support EfiResetPlatformSpecific
.../Library/ResetSystemLib/ResetSystemLib.c | 23 ++++-
MdeModulePkg/Include/Library/ResetSystemLib.h | 22 ++++-
.../BaseResetSystemLibNull.c | 23 ++++-
.../Universal/ResetSystemRuntimeDxe/ResetSystem.c | 14 ++-
MdePkg/Include/Uefi/UefiSpec.h | 8 +-
OvmfPkg/Library/ResetSystemLib/ResetSystemLib.c | 23 ++++-
OvmfPkg/OvmfPkgIa32.dsc | 2 +-
OvmfPkg/OvmfPkgIa32.fdf | 2 +-
OvmfPkg/OvmfPkgIa32X64.dsc | 2 +-
OvmfPkg/OvmfPkgIa32X64.fdf | 2 +-
OvmfPkg/OvmfPkgX64.dsc | 2 +-
OvmfPkg/OvmfPkgX64.fdf | 2 +-
PcAtChipsetPkg/KbcResetDxe/KbcReset.uni | 27 ------
PcAtChipsetPkg/KbcResetDxe/KbcResetExtra.uni | 25 -----
PcAtChipsetPkg/KbcResetDxe/Reset.inf | 50 ----------
PcAtChipsetPkg/KbcResetDxe/ResetEntry.c | 106 ---------------------
.../Library/ResetSystemLib/ResetSystemLib.c | 21 ++++
PcAtChipsetPkg/PcAtChipsetPkg.dsc | 1 -
.../Library/ResetSystemLib/ResetSystemLib.c | 22 ++++-
.../Library/ResetSystemLib/ResetSystemLib.c | 23 ++++-
20 files changed, 172 insertions(+), 228 deletions(-)
delete mode 100644 PcAtChipsetPkg/KbcResetDxe/KbcReset.uni
delete mode 100644 PcAtChipsetPkg/KbcResetDxe/KbcResetExtra.uni
delete mode 100644 PcAtChipsetPkg/KbcResetDxe/Reset.inf
delete mode 100644 PcAtChipsetPkg/KbcResetDxe/ResetEntry.c
--
2.9.0.windows.1
^ permalink raw reply [flat|nested] 21+ messages in thread
* [PATCH 01/11] MdePkg/UefiSpec.h: Align function header of ResetSystem to UEFI Spec
2016-08-10 5:56 [PATCH 00/11] Add ResetPlatformSpecific() to ResetSystemLib Ruiyu Ni
@ 2016-08-10 5:56 ` Ruiyu Ni
2016-08-16 4:49 ` Gao, Liming
2016-08-10 5:56 ` [PATCH 02/11] MdeModulePkg: Add API ResetPlatformSpecific() to ResetSystemLib.h Ruiyu Ni
` (9 subsequent siblings)
10 siblings, 1 reply; 21+ messages in thread
From: Ruiyu Ni @ 2016-08-10 5:56 UTC (permalink / raw)
To: edk2-devel; +Cc: Liming Gao
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
Cc: Liming Gao <liming.gao@intel.com>
---
MdePkg/Include/Uefi/UefiSpec.h | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/MdePkg/Include/Uefi/UefiSpec.h b/MdePkg/Include/Uefi/UefiSpec.h
index e8feed1..57cb4e8 100644
--- a/MdePkg/Include/Uefi/UefiSpec.h
+++ b/MdePkg/Include/Uefi/UefiSpec.h
@@ -1004,11 +1004,15 @@ EFI_STATUS
@param[in] ResetType The type of reset to perform.
@param[in] ResetStatus The status code for the reset.
- @param[in] DataSize The size, in bytes, of WatchdogData.
+ @param[in] DataSize The size, in bytes, of ResetData.
@param[in] ResetData For a ResetType of EfiResetCold, EfiResetWarm, or
EfiResetShutdown the data buffer starts with a Null-terminated
string, optionally followed by additional binary data.
-
+ The string is a description that the caller may use to further
+ indicate the reason for the system reset. ResetData is only
+ valid if ResetStatus is something other than EFI_SUCCESS
+ unless the ResetType is EfiResetPlatformSpecific
+ where a minimum amount of ResetData is always required.
**/
typedef
VOID
--
2.9.0.windows.1
^ permalink raw reply related [flat|nested] 21+ messages in thread
* [PATCH 02/11] MdeModulePkg: Add API ResetPlatformSpecific() to ResetSystemLib.h
2016-08-10 5:56 [PATCH 00/11] Add ResetPlatformSpecific() to ResetSystemLib Ruiyu Ni
2016-08-10 5:56 ` [PATCH 01/11] MdePkg/UefiSpec.h: Align function header of ResetSystem to UEFI Spec Ruiyu Ni
@ 2016-08-10 5:56 ` Ruiyu Ni
2016-08-10 5:56 ` [PATCH 03/11] MdeModulePkg/BaseResetSystemLibNull: Implement ResetPlatformSpecific Ruiyu Ni
` (8 subsequent siblings)
10 siblings, 0 replies; 21+ messages in thread
From: Ruiyu Ni @ 2016-08-10 5:56 UTC (permalink / raw)
To: edk2-devel; +Cc: Feng Tian, Amy Chan
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
Cc: Feng Tian <feng.tian@intel.com>
Cc: Amy Chan <amy.chan@intel.com>
---
MdeModulePkg/Include/Library/ResetSystemLib.h | 22 ++++++++++++++++++++--
1 file changed, 20 insertions(+), 2 deletions(-)
diff --git a/MdeModulePkg/Include/Library/ResetSystemLib.h b/MdeModulePkg/Include/Library/ResetSystemLib.h
index f952934..34f1131 100644
--- a/MdeModulePkg/Include/Library/ResetSystemLib.h
+++ b/MdeModulePkg/Include/Library/ResetSystemLib.h
@@ -2,7 +2,7 @@
System reset Library Services. This library class defines a set of
methods that reset the whole system.
-Copyright (c) 2005 - 2010, Intel Corporation. All rights reserved.<BR>
+Copyright (c) 2005 - 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
@@ -64,5 +64,23 @@ EFIAPI
EnterS3WithImmediateWake (
VOID
);
-
+
+/**
+ This function causes a systemwide reset. The exact type of the reset is defined
+ by the EFI_GUID that follows the Null-terminated Unicode string passed into ResetData.
+ If the platform does not recognize the EFI_GUID in ResetData the platform must pick a
+ supported reset type to perform.The platform may optionally log the parameters from
+ any non-normal reset that occurs.
+
+ @param[in] DataSize The size, in bytes, of ResetData.
+ @param[in] ResetData The data buffer starts with a Null-terminated string, followed
+ by the EFI_GUID.
+**/
+VOID
+EFIAPI
+ResetPlatformSpecific (
+ IN UINTN DataSize,
+ IN VOID *ResetData
+ );
+
#endif
--
2.9.0.windows.1
^ permalink raw reply related [flat|nested] 21+ messages in thread
* [PATCH 03/11] MdeModulePkg/BaseResetSystemLibNull: Implement ResetPlatformSpecific
2016-08-10 5:56 [PATCH 00/11] Add ResetPlatformSpecific() to ResetSystemLib Ruiyu Ni
2016-08-10 5:56 ` [PATCH 01/11] MdePkg/UefiSpec.h: Align function header of ResetSystem to UEFI Spec Ruiyu Ni
2016-08-10 5:56 ` [PATCH 02/11] MdeModulePkg: Add API ResetPlatformSpecific() to ResetSystemLib.h Ruiyu Ni
@ 2016-08-10 5:56 ` Ruiyu Ni
2016-08-23 3:21 ` Tian, Feng
2016-08-10 5:56 ` [PATCH 04/11] CorebootPayloadPkg/ResetSystemLib: " Ruiyu Ni
` (7 subsequent siblings)
10 siblings, 1 reply; 21+ messages in thread
From: Ruiyu Ni @ 2016-08-10 5:56 UTC (permalink / raw)
To: edk2-devel; +Cc: Feng Tian, Amy Chan
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
Cc: Feng Tian <feng.tian@intel.com>
Cc: Amy Chan <amy.chan@intel.com>
---
.../BaseResetSystemLibNull.c | 23 +++++++++++++++++++++-
1 file changed, 22 insertions(+), 1 deletion(-)
diff --git a/MdeModulePkg/Library/BaseResetSystemLibNull/BaseResetSystemLibNull.c b/MdeModulePkg/Library/BaseResetSystemLibNull/BaseResetSystemLibNull.c
index d21a774..b233254 100644
--- a/MdeModulePkg/Library/BaseResetSystemLibNull/BaseResetSystemLibNull.c
+++ b/MdeModulePkg/Library/BaseResetSystemLibNull/BaseResetSystemLibNull.c
@@ -1,7 +1,7 @@
/** @file
Null Reset System Library instance that only generates ASSERT() conditions.
- Copyright (c) 2006 - 2009, Intel Corporation. All rights reserved.<BR>
+ Copyright (c) 2006 - 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
which accompanies this distribution. The full text of the license may be found at
@@ -77,3 +77,24 @@ EnterS3WithImmediateWake (
{
ASSERT (FALSE);
}
+
+/**
+ This function causes a systemwide reset. The exact type of the reset is defined
+ by the EFI_GUID that follows the Null-terminated Unicode string passed into ResetData.
+ If the platform does not recognize the EFI_GUID in ResetData the platform must pick a
+ supported reset type to perform.The platform may optionally log the parameters from
+ any non-normal reset that occurs.
+
+ @param[in] DataSize The size, in bytes, of ResetData.
+ @param[in] ResetData The data buffer starts with a Null-terminated string, followed
+ by the EFI_GUID.
+**/
+VOID
+EFIAPI
+ResetPlatformSpecific (
+ IN UINTN DataSize,
+ IN VOID *ResetData
+ )
+{
+ ResetCold ();
+}
--
2.9.0.windows.1
^ permalink raw reply related [flat|nested] 21+ messages in thread
* [PATCH 04/11] CorebootPayloadPkg/ResetSystemLib: Implement ResetPlatformSpecific
2016-08-10 5:56 [PATCH 00/11] Add ResetPlatformSpecific() to ResetSystemLib Ruiyu Ni
` (2 preceding siblings ...)
2016-08-10 5:56 ` [PATCH 03/11] MdeModulePkg/BaseResetSystemLibNull: Implement ResetPlatformSpecific Ruiyu Ni
@ 2016-08-10 5:56 ` Ruiyu Ni
2016-08-11 16:09 ` Ma, Maurice
2016-08-10 5:56 ` [PATCH 05/11] OvmfPkg/ResetSystemLib: " Ruiyu Ni
` (6 subsequent siblings)
10 siblings, 1 reply; 21+ messages in thread
From: Ruiyu Ni @ 2016-08-10 5:56 UTC (permalink / raw)
To: edk2-devel; +Cc: Maurice Ma, Prince Agyeman
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
Cc: Maurice Ma <maurice.ma@intel.com>
Cc: Prince Agyeman <prince.agyeman@intel.com>
---
.../Library/ResetSystemLib/ResetSystemLib.c | 23 +++++++++++++++++++++-
1 file changed, 22 insertions(+), 1 deletion(-)
diff --git a/CorebootPayloadPkg/Library/ResetSystemLib/ResetSystemLib.c b/CorebootPayloadPkg/Library/ResetSystemLib/ResetSystemLib.c
index 55f5609..f6621bf 100644
--- a/CorebootPayloadPkg/Library/ResetSystemLib/ResetSystemLib.c
+++ b/CorebootPayloadPkg/Library/ResetSystemLib/ResetSystemLib.c
@@ -1,7 +1,7 @@
/** @file
Reset System Library functions for coreboot
- Copyright (c) 2014, Intel Corporation. All rights reserved.<BR>
+ Copyright (c) 2014 - 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
which accompanies this distribution. The full text of the license may be found at
@@ -161,3 +161,24 @@ EnterS3WithImmediateWake (
AcpiPmControl (5);
ASSERT (FALSE);
}
+
+/**
+ This function causes a systemwide reset. The exact type of the reset is defined
+ by the EFI_GUID that follows the Null-terminated Unicode string passed into ResetData.
+ If the platform does not recognize the EFI_GUID in ResetData the platform must pick a
+ supported reset type to perform.The platform may optionally log the parameters from
+ any non-normal reset that occurs.
+
+ @param[in] DataSize The size, in bytes, of ResetData.
+ @param[in] ResetData The data buffer starts with a Null-terminated string, followed
+ by the EFI_GUID.
+**/
+VOID
+EFIAPI
+ResetPlatformSpecific (
+ IN UINTN DataSize,
+ IN VOID *ResetData
+ )
+{
+ ResetCold ();
+}
--
2.9.0.windows.1
^ permalink raw reply related [flat|nested] 21+ messages in thread
* [PATCH 05/11] OvmfPkg/ResetSystemLib: Implement ResetPlatformSpecific
2016-08-10 5:56 [PATCH 00/11] Add ResetPlatformSpecific() to ResetSystemLib Ruiyu Ni
` (3 preceding siblings ...)
2016-08-10 5:56 ` [PATCH 04/11] CorebootPayloadPkg/ResetSystemLib: " Ruiyu Ni
@ 2016-08-10 5:56 ` Ruiyu Ni
2016-08-10 5:56 ` [PATCH 06/11] PcAtChipsetPkg/ResetSystemLib: " Ruiyu Ni
` (5 subsequent siblings)
10 siblings, 0 replies; 21+ messages in thread
From: Ruiyu Ni @ 2016-08-10 5:56 UTC (permalink / raw)
To: edk2-devel; +Cc: Jordan Justen, Laszlo Ersek
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Cc: Laszlo Ersek <lersek@redhat.com>
---
OvmfPkg/Library/ResetSystemLib/ResetSystemLib.c | 23 ++++++++++++++++++++++-
1 file changed, 22 insertions(+), 1 deletion(-)
diff --git a/OvmfPkg/Library/ResetSystemLib/ResetSystemLib.c b/OvmfPkg/Library/ResetSystemLib/ResetSystemLib.c
index 399f547..3710415 100644
--- a/OvmfPkg/Library/ResetSystemLib/ResetSystemLib.c
+++ b/OvmfPkg/Library/ResetSystemLib/ResetSystemLib.c
@@ -1,7 +1,7 @@
/** @file
Reset System Library functions for OVMF
- Copyright (c) 2006 - 2013, Intel Corporation. All rights reserved.<BR>
+ Copyright (c) 2006 - 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
which accompanies this distribution. The full text of the license may be found at
@@ -125,3 +125,24 @@ EnterS3WithImmediateWake (
AcpiPmControl (1);
ASSERT (FALSE);
}
+
+/**
+ This function causes a systemwide reset. The exact type of the reset is defined
+ by the EFI_GUID that follows the Null-terminated Unicode string passed into ResetData.
+ If the platform does not recognize the EFI_GUID in ResetData the platform must pick a
+ supported reset type to perform.The platform may optionally log the parameters from
+ any non-normal reset that occurs.
+
+ @param[in] DataSize The size, in bytes, of ResetData.
+ @param[in] ResetData The data buffer starts with a Null-terminated string, followed
+ by the EFI_GUID.
+**/
+VOID
+EFIAPI
+ResetPlatformSpecific (
+ IN UINTN DataSize,
+ IN VOID *ResetData
+ )
+{
+ ResetCold ();
+}
--
2.9.0.windows.1
^ permalink raw reply related [flat|nested] 21+ messages in thread
* [PATCH 06/11] PcAtChipsetPkg/ResetSystemLib: Implement ResetPlatformSpecific
2016-08-10 5:56 [PATCH 00/11] Add ResetPlatformSpecific() to ResetSystemLib Ruiyu Ni
` (4 preceding siblings ...)
2016-08-10 5:56 ` [PATCH 05/11] OvmfPkg/ResetSystemLib: " Ruiyu Ni
@ 2016-08-10 5:56 ` Ruiyu Ni
2016-08-10 5:56 ` [PATCH 07/11] QuarkSocPkg/ResetSystemLib: " Ruiyu Ni
` (4 subsequent siblings)
10 siblings, 0 replies; 21+ messages in thread
From: Ruiyu Ni @ 2016-08-10 5:56 UTC (permalink / raw)
To: edk2-devel; +Cc: Feng Tian, Amy Chan
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
Cc: Feng Tian <feng.tian@intel.com>
Cc: Amy Chan <amy.chan@intel.com>
---
.../Library/ResetSystemLib/ResetSystemLib.c | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)
diff --git a/PcAtChipsetPkg/Library/ResetSystemLib/ResetSystemLib.c b/PcAtChipsetPkg/Library/ResetSystemLib/ResetSystemLib.c
index b3b2efb..70f700a 100644
--- a/PcAtChipsetPkg/Library/ResetSystemLib/ResetSystemLib.c
+++ b/PcAtChipsetPkg/Library/ResetSystemLib/ResetSystemLib.c
@@ -84,3 +84,24 @@ EnterS3WithImmediateWake (
{
ASSERT (FALSE);
}
+
+/**
+ This function causes a systemwide reset. The exact type of the reset is defined
+ by the EFI_GUID that follows the Null-terminated Unicode string passed into ResetData.
+ If the platform does not recognize the EFI_GUID in ResetData the platform must pick a
+ supported reset type to perform.The platform may optionally log the parameters from
+ any non-normal reset that occurs.
+
+ @param[in] DataSize The size, in bytes, of ResetData.
+ @param[in] ResetData The data buffer starts with a Null-terminated string, followed
+ by the EFI_GUID.
+**/
+VOID
+EFIAPI
+ResetPlatformSpecific (
+ IN UINTN DataSize,
+ IN VOID *ResetData
+ )
+{
+ ResetCold ();
+}
--
2.9.0.windows.1
^ permalink raw reply related [flat|nested] 21+ messages in thread
* [PATCH 07/11] QuarkSocPkg/ResetSystemLib: Implement ResetPlatformSpecific
2016-08-10 5:56 [PATCH 00/11] Add ResetPlatformSpecific() to ResetSystemLib Ruiyu Ni
` (5 preceding siblings ...)
2016-08-10 5:56 ` [PATCH 06/11] PcAtChipsetPkg/ResetSystemLib: " Ruiyu Ni
@ 2016-08-10 5:56 ` Ruiyu Ni
2016-08-10 16:28 ` Kinney, Michael D
2016-08-10 5:56 ` [PATCH 08/11] Vlv2TbltDevicePkg/ResetSystemLib: " Ruiyu Ni
` (3 subsequent siblings)
10 siblings, 1 reply; 21+ messages in thread
From: Ruiyu Ni @ 2016-08-10 5:56 UTC (permalink / raw)
To: edk2-devel; +Cc: Michael D Kinney, Kelly Steele
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
Cc: Kelly Steele <kelly.steele@intel.com>
---
.../Library/ResetSystemLib/ResetSystemLib.c | 22 +++++++++++++++++++++-
1 file changed, 21 insertions(+), 1 deletion(-)
diff --git a/QuarkSocPkg/QuarkNorthCluster/Library/ResetSystemLib/ResetSystemLib.c b/QuarkSocPkg/QuarkNorthCluster/Library/ResetSystemLib/ResetSystemLib.c
index c2ad7f3..3aa0f6d 100644
--- a/QuarkSocPkg/QuarkNorthCluster/Library/ResetSystemLib/ResetSystemLib.c
+++ b/QuarkSocPkg/QuarkNorthCluster/Library/ResetSystemLib/ResetSystemLib.c
@@ -2,7 +2,7 @@
System reset Library Services. This library class provides a set of
methods to reset whole system with manipulate QNC.
-Copyright (c) 2013-2015 Intel Corporation.
+Copyright (c) 2013-2016 Intel Corporation.
This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License
@@ -320,3 +320,23 @@ VOID
}
}
+/**
+ This function causes a systemwide reset. The exact type of the reset is defined
+ by the EFI_GUID that follows the Null-terminated Unicode string passed into ResetData.
+ If the platform does not recognize the EFI_GUID in ResetData the platform must pick a
+ supported reset type to perform.The platform may optionally log the parameters from
+ any non-normal reset that occurs.
+
+ @param[in] DataSize The size, in bytes, of ResetData.
+ @param[in] ResetData The data buffer starts with a Null-terminated string, followed
+ by the EFI_GUID.
+**/
+VOID
+EFIAPI
+ResetPlatformSpecific (
+ IN UINTN DataSize,
+ IN VOID *ResetData
+ )
+{
+ ResetCold ();
+}
--
2.9.0.windows.1
^ permalink raw reply related [flat|nested] 21+ messages in thread
* [PATCH 08/11] Vlv2TbltDevicePkg/ResetSystemLib: Implement ResetPlatformSpecific
2016-08-10 5:56 [PATCH 00/11] Add ResetPlatformSpecific() to ResetSystemLib Ruiyu Ni
` (6 preceding siblings ...)
2016-08-10 5:56 ` [PATCH 07/11] QuarkSocPkg/ResetSystemLib: " Ruiyu Ni
@ 2016-08-10 5:56 ` Ruiyu Ni
2016-08-11 2:22 ` Wei, David
2016-08-10 5:56 ` [PATCH 09/11] OvmfPkg: Use MdeModulePkg/ResetSystemRuntimeDxe Ruiyu Ni
` (2 subsequent siblings)
10 siblings, 1 reply; 21+ messages in thread
From: Ruiyu Ni @ 2016-08-10 5:56 UTC (permalink / raw)
To: edk2-devel; +Cc: David Wei
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
Cc: David Wei <david.wei@intel.com>
---
.../Library/ResetSystemLib/ResetSystemLib.c | 23 ++++++++++++++++++++--
1 file changed, 21 insertions(+), 2 deletions(-)
diff --git a/Vlv2TbltDevicePkg/Library/ResetSystemLib/ResetSystemLib.c b/Vlv2TbltDevicePkg/Library/ResetSystemLib/ResetSystemLib.c
index 1a6da83..77f1b8b 100644
--- a/Vlv2TbltDevicePkg/Library/ResetSystemLib/ResetSystemLib.c
+++ b/Vlv2TbltDevicePkg/Library/ResetSystemLib/ResetSystemLib.c
@@ -1,7 +1,6 @@
/** @file
-Copyright (c) 2007 - 2014, Intel Corporation. All rights reserved.<BR>
-
+ Copyright (c) 2007 - 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
@@ -176,3 +175,23 @@ EnterS3WithImmediateWake (
ASSERT (FALSE);
}
+/**
+ This function causes a systemwide reset. The exact type of the reset is defined
+ by the EFI_GUID that follows the Null-terminated Unicode string passed into ResetData.
+ If the platform does not recognize the EFI_GUID in ResetData the platform must pick a
+ supported reset type to perform.The platform may optionally log the parameters from
+ any non-normal reset that occurs.
+
+ @param[in] DataSize The size, in bytes, of ResetData.
+ @param[in] ResetData The data buffer starts with a Null-terminated string, followed
+ by the EFI_GUID.
+**/
+VOID
+EFIAPI
+ResetPlatformSpecific (
+ IN UINTN DataSize,
+ IN VOID *ResetData
+ )
+{
+ ResetCold ();
+}
--
2.9.0.windows.1
^ permalink raw reply related [flat|nested] 21+ messages in thread
* [PATCH 09/11] OvmfPkg: Use MdeModulePkg/ResetSystemRuntimeDxe
2016-08-10 5:56 [PATCH 00/11] Add ResetPlatformSpecific() to ResetSystemLib Ruiyu Ni
` (7 preceding siblings ...)
2016-08-10 5:56 ` [PATCH 08/11] Vlv2TbltDevicePkg/ResetSystemLib: " Ruiyu Ni
@ 2016-08-10 5:56 ` Ruiyu Ni
2016-08-10 5:56 ` [PATCH 10/11] PcAtChipsetPkg: Remove KbcResetDxe Ruiyu Ni
2016-08-10 5:56 ` [PATCH 11/11] MdeModulePkg/ResetSystemRuntimeDxe: Support EfiResetPlatformSpecific Ruiyu Ni
10 siblings, 0 replies; 21+ messages in thread
From: Ruiyu Ni @ 2016-08-10 5:56 UTC (permalink / raw)
To: edk2-devel; +Cc: Jordan Justen, Laszlo Ersek
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Cc: Laszlo Ersek <lersek@redhat.com>
---
OvmfPkg/OvmfPkgIa32.dsc | 2 +-
OvmfPkg/OvmfPkgIa32.fdf | 2 +-
OvmfPkg/OvmfPkgIa32X64.dsc | 2 +-
OvmfPkg/OvmfPkgIa32X64.fdf | 2 +-
OvmfPkg/OvmfPkgX64.dsc | 2 +-
OvmfPkg/OvmfPkgX64.fdf | 2 +-
6 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/OvmfPkg/OvmfPkgIa32.dsc b/OvmfPkg/OvmfPkgIa32.dsc
index aeb87b9..fb14315 100644
--- a/OvmfPkg/OvmfPkgIa32.dsc
+++ b/OvmfPkg/OvmfPkgIa32.dsc
@@ -569,7 +569,7 @@ [Components]
<LibraryClasses>
PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
}
- PcAtChipsetPkg/KbcResetDxe/Reset.inf
+ MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystemRuntimeDxe.inf
MdeModulePkg/Universal/Metronome/Metronome.inf
PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe/PcatRealTimeClockRuntimeDxe.inf
MdeModulePkg/Universal/DriverHealthManagerDxe/DriverHealthManagerDxe.inf
diff --git a/OvmfPkg/OvmfPkgIa32.fdf b/OvmfPkg/OvmfPkgIa32.fdf
index b4b0a22..044300c 100644
--- a/OvmfPkg/OvmfPkgIa32.fdf
+++ b/OvmfPkg/OvmfPkgIa32.fdf
@@ -215,7 +215,7 @@ [FV.DXEFV]
INF OvmfPkg/PciHotPlugInitDxe/PciHotPlugInit.inf
INF MdeModulePkg/Bus/Pci/PciHostBridgeDxe/PciHostBridgeDxe.inf
INF MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf
-INF PcAtChipsetPkg/KbcResetDxe/Reset.inf
+INF MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystemRuntimeDxe.inf
INF MdeModulePkg/Universal/Metronome/Metronome.inf
INF PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe/PcatRealTimeClockRuntimeDxe.inf
diff --git a/OvmfPkg/OvmfPkgIa32X64.dsc b/OvmfPkg/OvmfPkgIa32X64.dsc
index 44da638..10701d5 100644
--- a/OvmfPkg/OvmfPkgIa32X64.dsc
+++ b/OvmfPkg/OvmfPkgIa32X64.dsc
@@ -578,7 +578,7 @@ [Components.X64]
<LibraryClasses>
PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
}
- PcAtChipsetPkg/KbcResetDxe/Reset.inf
+ MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystemRuntimeDxe.inf
MdeModulePkg/Universal/Metronome/Metronome.inf
PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe/PcatRealTimeClockRuntimeDxe.inf
MdeModulePkg/Universal/DriverHealthManagerDxe/DriverHealthManagerDxe.inf
diff --git a/OvmfPkg/OvmfPkgIa32X64.fdf b/OvmfPkg/OvmfPkgIa32X64.fdf
index 552ab2a..e8c68e5 100644
--- a/OvmfPkg/OvmfPkgIa32X64.fdf
+++ b/OvmfPkg/OvmfPkgIa32X64.fdf
@@ -215,7 +215,7 @@ [FV.DXEFV]
INF OvmfPkg/PciHotPlugInitDxe/PciHotPlugInit.inf
INF MdeModulePkg/Bus/Pci/PciHostBridgeDxe/PciHostBridgeDxe.inf
INF MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf
-INF PcAtChipsetPkg/KbcResetDxe/Reset.inf
+INF MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystemRuntimeDxe.inf
INF MdeModulePkg/Universal/Metronome/Metronome.inf
INF PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe/PcatRealTimeClockRuntimeDxe.inf
diff --git a/OvmfPkg/OvmfPkgX64.dsc b/OvmfPkg/OvmfPkgX64.dsc
index 89cd3a1..386cfea 100644
--- a/OvmfPkg/OvmfPkgX64.dsc
+++ b/OvmfPkg/OvmfPkgX64.dsc
@@ -576,7 +576,7 @@ [Components]
<LibraryClasses>
PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
}
- PcAtChipsetPkg/KbcResetDxe/Reset.inf
+ MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystemRuntimeDxe.inf
MdeModulePkg/Universal/Metronome/Metronome.inf
PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe/PcatRealTimeClockRuntimeDxe.inf
MdeModulePkg/Universal/DriverHealthManagerDxe/DriverHealthManagerDxe.inf
diff --git a/OvmfPkg/OvmfPkgX64.fdf b/OvmfPkg/OvmfPkgX64.fdf
index 28b98a9..8864b5a 100644
--- a/OvmfPkg/OvmfPkgX64.fdf
+++ b/OvmfPkg/OvmfPkgX64.fdf
@@ -215,7 +215,7 @@ [FV.DXEFV]
INF OvmfPkg/PciHotPlugInitDxe/PciHotPlugInit.inf
INF MdeModulePkg/Bus/Pci/PciHostBridgeDxe/PciHostBridgeDxe.inf
INF MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf
-INF PcAtChipsetPkg/KbcResetDxe/Reset.inf
+INF MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystemRuntimeDxe.inf
INF MdeModulePkg/Universal/Metronome/Metronome.inf
INF PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe/PcatRealTimeClockRuntimeDxe.inf
--
2.9.0.windows.1
^ permalink raw reply related [flat|nested] 21+ messages in thread
* [PATCH 10/11] PcAtChipsetPkg: Remove KbcResetDxe
2016-08-10 5:56 [PATCH 00/11] Add ResetPlatformSpecific() to ResetSystemLib Ruiyu Ni
` (8 preceding siblings ...)
2016-08-10 5:56 ` [PATCH 09/11] OvmfPkg: Use MdeModulePkg/ResetSystemRuntimeDxe Ruiyu Ni
@ 2016-08-10 5:56 ` Ruiyu Ni
2016-08-10 5:56 ` [PATCH 11/11] MdeModulePkg/ResetSystemRuntimeDxe: Support EfiResetPlatformSpecific Ruiyu Ni
10 siblings, 0 replies; 21+ messages in thread
From: Ruiyu Ni @ 2016-08-10 5:56 UTC (permalink / raw)
To: edk2-devel; +Cc: Feng Tian, Amy Chan
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
Cc: Feng Tian <feng.tian@intel.com>
Cc: Amy Chan <amy.chan@intel.com>
---
PcAtChipsetPkg/KbcResetDxe/KbcReset.uni | 27 -------
| 25 -------
PcAtChipsetPkg/KbcResetDxe/Reset.inf | 50 -------------
PcAtChipsetPkg/KbcResetDxe/ResetEntry.c | 106 ---------------------------
PcAtChipsetPkg/PcAtChipsetPkg.dsc | 1 -
5 files changed, 209 deletions(-)
delete mode 100644 PcAtChipsetPkg/KbcResetDxe/KbcReset.uni
delete mode 100644 PcAtChipsetPkg/KbcResetDxe/KbcResetExtra.uni
delete mode 100644 PcAtChipsetPkg/KbcResetDxe/Reset.inf
delete mode 100644 PcAtChipsetPkg/KbcResetDxe/ResetEntry.c
diff --git a/PcAtChipsetPkg/KbcResetDxe/KbcReset.uni b/PcAtChipsetPkg/KbcResetDxe/KbcReset.uni
deleted file mode 100644
index 5535dac..0000000
--- a/PcAtChipsetPkg/KbcResetDxe/KbcReset.uni
+++ /dev/null
@@ -1,27 +0,0 @@
-// /** @file
-// This driver implements Reset Architectural Protocol.
-//
-// It should depend on the ResetSystemLib instance that is implemented based on KBC.
-//
-// Copyright (c) 2006 - 2014, 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
-// which accompanies this distribution. The full text of the license may be found at
-// http://opensource.org/licenses/bsd-license.php
-//
-// THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
-// WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
-//
-// Module Name:
-// Reset.inf
-//
-// Abstract:
-//
-// **/
-
-
-#string STR_MODULE_ABSTRACT #language en-US "This driver implements Reset Architectural Protocol"
-
-#string STR_MODULE_DESCRIPTION #language en-US "It should depend on the ResetSystemLib instance that is implemented based on KBC."
-
diff --git a/PcAtChipsetPkg/KbcResetDxe/KbcResetExtra.uni b/PcAtChipsetPkg/KbcResetDxe/KbcResetExtra.uni
deleted file mode 100644
index 2ad684e..0000000
--- a/PcAtChipsetPkg/KbcResetDxe/KbcResetExtra.uni
+++ /dev/null
@@ -1,25 +0,0 @@
-// /** @file
-// KbcReset Localized Strings and Content
-//
-// Copyright (c) 2013 - 2014, 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
-// which accompanies this distribution. The full text of the license may be found at
-// http://opensource.org/licenses/bsd-license.php
-//
-// THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
-// WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
-//
-// Module Name:
-// Reset.inf
-//
-// Abstract:
-//
-// **/
-
-#string STR_PROPERTIES_MODULE_NAME
-#language en-US
-"Keyboard Controller Reset DXE Driver"
-
-
diff --git a/PcAtChipsetPkg/KbcResetDxe/Reset.inf b/PcAtChipsetPkg/KbcResetDxe/Reset.inf
deleted file mode 100644
index b54b08c..0000000
--- a/PcAtChipsetPkg/KbcResetDxe/Reset.inf
+++ /dev/null
@@ -1,50 +0,0 @@
-## @file
-# This driver implements Reset Architectural Protocol.
-#
-# It should depend on the ResetSystemLib instance that is implemented based on KBC.
-#
-# Copyright (c) 2006 - 2014, 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
-# which accompanies this distribution. The full text of the license may be found at
-# http://opensource.org/licenses/bsd-license.php
-#
-# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
-# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
-#
-# Module Name:
-# Reset.inf
-#
-# Abstract:
-#
-##
-[Defines]
- INF_VERSION = 0x00010005
- BASE_NAME = KbcReset
- MODULE_UNI_FILE = KbcReset.uni
- FILE_GUID = 6F0198AA-1F1D-426D-AE3E-39AB633FCC28
- MODULE_TYPE = DXE_RUNTIME_DRIVER
- VERSION_STRING = 1.0
- ENTRY_POINT = InitializeReset
-
-[Packages]
- MdePkg/MdePkg.dec
- MdeModulePkg/MdeModulePkg.dec
-
-[LibraryClasses]
- UefiDriverEntryPoint
- DebugLib
- UefiBootServicesTableLib
- ResetSystemLib
-
-[Sources]
- ResetEntry.c
-
-[Protocols]
- gEfiResetArchProtocolGuid ## PRODUCES
-
-[Depex]
- TRUE
-
-[UserExtensions.TianoCore."ExtraFiles"]
- KbcResetExtra.uni
diff --git a/PcAtChipsetPkg/KbcResetDxe/ResetEntry.c b/PcAtChipsetPkg/KbcResetDxe/ResetEntry.c
deleted file mode 100644
index 03b4250..0000000
--- a/PcAtChipsetPkg/KbcResetDxe/ResetEntry.c
+++ /dev/null
@@ -1,106 +0,0 @@
-/** @file
- Driver entry for KbcReset driver.
-
-Copyright (c) 2009 - 2010, 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
-which accompanies this distribution. The full text of the license may be found at
-http://opensource.org/licenses/bsd-license.php
-
-THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
-WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
-**/
-
-#include <PiDxe.h>
-
-#include <Library/DebugLib.h>
-#include <Library/UefiBootServicesTableLib.h>
-#include <Library/ResetSystemLib.h>
-
-#include <Protocol/Reset.h>
-
-//
-// The handle onto which the Reset Architectural Protocol is installed
-//
-EFI_HANDLE mResetHandle = NULL;
-
-/**
- Reset the system.
-
- @param ResetType warm or cold
- @param ResetStatus possible cause of reset
- @param DataSize Size of ResetData in bytes
- @param ResetData Optional Unicode string
-
-**/
-VOID
-EFIAPI
-KbcResetSystem (
- IN EFI_RESET_TYPE ResetType,
- IN EFI_STATUS ResetStatus,
- IN UINTN DataSize,
- IN VOID *ResetData OPTIONAL
- )
-{
- switch (ResetType) {
- case EfiResetWarm:
- ResetWarm ();
- break;
- case EfiResetCold:
- ResetCold ();
- break;
- case EfiResetShutdown:
- ResetShutdown ();
- break;
- default:
- return;
- }
-
- //
- // Given we should have reset getting here would be bad
- //
- ASSERT (FALSE);
-}
-
-/**
- Initialize the state information for the Reset Architectural Protocol.
-
- @param ImageHandle Handle of the loaded driver
- @param SystemTable Pointer to the System Table
-
- @retval EFI_SUCCESS Thread can be successfully created
- @retval EFI_OUT_OF_RESOURCES Cannot allocate protocol data structure
- @retval EFI_DEVICE_ERROR Cannot create the timer service
-
-**/
-EFI_STATUS
-EFIAPI
-InitializeReset (
- IN EFI_HANDLE ImageHandle,
- IN EFI_SYSTEM_TABLE *SystemTable
- )
-{
- EFI_STATUS Status;
-
- //
- // Make sure the Reset Architectural Protocol is not already installed in the system
- //
- ASSERT_PROTOCOL_ALREADY_INSTALLED (NULL, &gEfiResetArchProtocolGuid);
-
- //
- // Hook the runtime service table
- //
- SystemTable->RuntimeServices->ResetSystem = KbcResetSystem;
-
- //
- // Now install the Reset RT AP on a new handle
- //
- Status = gBS->InstallMultipleProtocolInterfaces (
- &mResetHandle,
- &gEfiResetArchProtocolGuid, NULL,
- NULL
- );
- ASSERT_EFI_ERROR (Status);
-
- return Status;
-}
diff --git a/PcAtChipsetPkg/PcAtChipsetPkg.dsc b/PcAtChipsetPkg/PcAtChipsetPkg.dsc
index 25bb894..b740f00 100644
--- a/PcAtChipsetPkg/PcAtChipsetPkg.dsc
+++ b/PcAtChipsetPkg/PcAtChipsetPkg.dsc
@@ -52,7 +52,6 @@ [Components]
PcAtChipsetPkg/HpetTimerDxe/HpetTimerDxe.inf
PcAtChipsetPkg/8259InterruptControllerDxe/8259.inf
PcAtChipsetPkg/IsaAcpiDxe/IsaAcpi.inf
- PcAtChipsetPkg/KbcResetDxe/Reset.inf
PcAtChipsetPkg/Library/SerialIoLib/SerialIoLib.inf
PcAtChipsetPkg/Library/ResetSystemLib/ResetSystemLib.inf
PcAtChipsetPkg/Library/BaseIoApicLib/BaseIoApicLib.inf
--
2.9.0.windows.1
^ permalink raw reply related [flat|nested] 21+ messages in thread
* [PATCH 11/11] MdeModulePkg/ResetSystemRuntimeDxe: Support EfiResetPlatformSpecific
2016-08-10 5:56 [PATCH 00/11] Add ResetPlatformSpecific() to ResetSystemLib Ruiyu Ni
` (9 preceding siblings ...)
2016-08-10 5:56 ` [PATCH 10/11] PcAtChipsetPkg: Remove KbcResetDxe Ruiyu Ni
@ 2016-08-10 5:56 ` Ruiyu Ni
2016-08-10 17:33 ` Jordan Justen
10 siblings, 1 reply; 21+ messages in thread
From: Ruiyu Ni @ 2016-08-10 5:56 UTC (permalink / raw)
To: edk2-devel; +Cc: Feng Tian, Amy Chan
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
Cc: Feng Tian <feng.tian@intel.com>
Cc: Amy Chan <amy.chan@intel.com>
---
MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystem.c | 14 +++++++++++---
1 file changed, 11 insertions(+), 3 deletions(-)
diff --git a/MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystem.c b/MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystem.c
index aa1ca16..f61e65e 100644
--- a/MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystem.c
+++ b/MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystem.c
@@ -1,7 +1,7 @@
/** @file
Reset Architectural Protocol implementation
- Copyright (c) 2006 - 2012, Intel Corporation. All rights reserved.<BR>
+ Copyright (c) 2006 - 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
@@ -86,11 +86,15 @@ DoS3 (
@param[in] ResetType The type of reset to perform.
@param[in] ResetStatus The status code for the reset.
- @param[in] DataSize The size, in bytes, of WatchdogData.
+ @param[in] DataSize The size, in bytes, of ResetData.
@param[in] ResetData For a ResetType of EfiResetCold, EfiResetWarm, or
EfiResetShutdown the data buffer starts with a Null-terminated
string, optionally followed by additional binary data.
-
+ The string is a description that the caller may use to further
+ indicate the reason for the system reset. ResetData is only
+ valid if ResetStatus is something other than EFI_SUCCESS
+ unless the ResetType is EfiResetPlatformSpecific
+ where a minimum amount of ResetData is always required.
**/
VOID
EFIAPI
@@ -144,6 +148,10 @@ ResetSystem (
ResetShutdown ();
return ;
+ case EfiResetPlatformSpecific:
+ ResetPlatformSpecific (DataSize, ResetData);
+ return;
+
default:
return ;
}
--
2.9.0.windows.1
^ permalink raw reply related [flat|nested] 21+ messages in thread
* Re: [PATCH 07/11] QuarkSocPkg/ResetSystemLib: Implement ResetPlatformSpecific
2016-08-10 5:56 ` [PATCH 07/11] QuarkSocPkg/ResetSystemLib: " Ruiyu Ni
@ 2016-08-10 16:28 ` Kinney, Michael D
0 siblings, 0 replies; 21+ messages in thread
From: Kinney, Michael D @ 2016-08-10 16:28 UTC (permalink / raw)
To: Ni, Ruiyu, edk2-devel@lists.01.org, Kinney, Michael D
Reviewed-by: Michael D Kinney <michael.d.kinney@intel.com>
> -----Original Message-----
> From: Ni, Ruiyu
> Sent: Tuesday, August 9, 2016 10:56 PM
> To: edk2-devel@lists.01.org
> Cc: Kinney, Michael D <michael.d.kinney@intel.com>; Steele, Kelly
> <kelly.steele@intel.com>
> Subject: [PATCH 07/11] QuarkSocPkg/ResetSystemLib: Implement ResetPlatformSpecific
>
> Contributed-under: TianoCore Contribution Agreement 1.0
> Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
> Cc: Michael D Kinney <michael.d.kinney@intel.com>
> Cc: Kelly Steele <kelly.steele@intel.com>
> ---
> .../Library/ResetSystemLib/ResetSystemLib.c | 22 +++++++++++++++++++++-
> 1 file changed, 21 insertions(+), 1 deletion(-)
>
> diff --git a/QuarkSocPkg/QuarkNorthCluster/Library/ResetSystemLib/ResetSystemLib.c
> b/QuarkSocPkg/QuarkNorthCluster/Library/ResetSystemLib/ResetSystemLib.c
> index c2ad7f3..3aa0f6d 100644
> --- a/QuarkSocPkg/QuarkNorthCluster/Library/ResetSystemLib/ResetSystemLib.c
> +++ b/QuarkSocPkg/QuarkNorthCluster/Library/ResetSystemLib/ResetSystemLib.c
> @@ -2,7 +2,7 @@
> System reset Library Services. This library class provides a set of
> methods to reset whole system with manipulate QNC.
>
> -Copyright (c) 2013-2015 Intel Corporation.
> +Copyright (c) 2013-2016 Intel Corporation.
>
> This program and the accompanying materials
> are licensed and made available under the terms and conditions of the BSD License
> @@ -320,3 +320,23 @@ VOID
> }
> }
>
> +/**
> + This function causes a systemwide reset. The exact type of the reset is defined
> + by the EFI_GUID that follows the Null-terminated Unicode string passed into
> ResetData.
> + If the platform does not recognize the EFI_GUID in ResetData the platform must
> pick a
> + supported reset type to perform.The platform may optionally log the parameters
> from
> + any non-normal reset that occurs.
> +
> + @param[in] DataSize The size, in bytes, of ResetData.
> + @param[in] ResetData The data buffer starts with a Null-terminated string,
> followed
> + by the EFI_GUID.
> +**/
> +VOID
> +EFIAPI
> +ResetPlatformSpecific (
> + IN UINTN DataSize,
> + IN VOID *ResetData
> + )
> +{
> + ResetCold ();
> +}
> --
> 2.9.0.windows.1
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [PATCH 11/11] MdeModulePkg/ResetSystemRuntimeDxe: Support EfiResetPlatformSpecific
2016-08-10 5:56 ` [PATCH 11/11] MdeModulePkg/ResetSystemRuntimeDxe: Support EfiResetPlatformSpecific Ruiyu Ni
@ 2016-08-10 17:33 ` Jordan Justen
2016-08-11 2:43 ` Ni, Ruiyu
0 siblings, 1 reply; 21+ messages in thread
From: Jordan Justen @ 2016-08-10 17:33 UTC (permalink / raw)
To: Ruiyu Ni, edk2-devel; +Cc: Feng Tian, Amy Chan
On 2016-08-09 22:56:11, Ruiyu Ni wrote:
> Contributed-under: TianoCore Contribution Agreement 1.0
> Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
> Cc: Feng Tian <feng.tian@intel.com>
> Cc: Amy Chan <amy.chan@intel.com>
> ---
> MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystem.c | 14 +++++++++++---
> 1 file changed, 11 insertions(+), 3 deletions(-)
>
> diff --git a/MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystem.c b/MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystem.c
> index aa1ca16..f61e65e 100644
> --- a/MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystem.c
> +++ b/MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystem.c
> @@ -1,7 +1,7 @@
> /** @file
> Reset Architectural Protocol implementation
>
> - Copyright (c) 2006 - 2012, Intel Corporation. All rights reserved.<BR>
> + Copyright (c) 2006 - 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
> @@ -86,11 +86,15 @@ DoS3 (
>
> @param[in] ResetType The type of reset to perform.
> @param[in] ResetStatus The status code for the reset.
> - @param[in] DataSize The size, in bytes, of WatchdogData.
> + @param[in] DataSize The size, in bytes, of ResetData.
> @param[in] ResetData For a ResetType of EfiResetCold, EfiResetWarm, or
> EfiResetShutdown the data buffer starts with a Null-terminated
> string, optionally followed by additional binary data.
> -
> + The string is a description that the caller may use to further
> + indicate the reason for the system reset. ResetData is only
> + valid if ResetStatus is something other than EFI_SUCCESS
> + unless the ResetType is EfiResetPlatformSpecific
> + where a minimum amount of ResetData is always required.
Most of the patches in this series have lines that are longer than 80
columns. Can you fix that?
I think you should move patch 11 before patch 09 "OvmfPkg: Use
MdeModulePkg/ResetSystemRuntimeDxe". I think this should allow reset
to continue working through the entire series for OVMF. (right?)
With those changes,
Series Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
> **/
> VOID
> EFIAPI
> @@ -144,6 +148,10 @@ ResetSystem (
> ResetShutdown ();
> return ;
>
> + case EfiResetPlatformSpecific:
> + ResetPlatformSpecific (DataSize, ResetData);
> + return;
> +
> default:
> return ;
> }
> --
> 2.9.0.windows.1
>
> _______________________________________________
> edk2-devel mailing list
> edk2-devel@lists.01.org
> https://lists.01.org/mailman/listinfo/edk2-devel
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [PATCH 08/11] Vlv2TbltDevicePkg/ResetSystemLib: Implement ResetPlatformSpecific
2016-08-10 5:56 ` [PATCH 08/11] Vlv2TbltDevicePkg/ResetSystemLib: " Ruiyu Ni
@ 2016-08-11 2:22 ` Wei, David
0 siblings, 0 replies; 21+ messages in thread
From: Wei, David @ 2016-08-11 2:22 UTC (permalink / raw)
To: Ni, Ruiyu, edk2-devel@lists.01.org; +Cc: Ni, Ruiyu
Reviewed-by: David Wei <david.wei@intel.com>
Thanks,
David Wei
-----Original Message-----
From: Ni, Ruiyu
Sent: Wednesday, August 10, 2016 1:56 PM
To: edk2-devel@lists.01.org
Cc: Wei, David <david.wei@intel.com>
Subject: [PATCH 08/11] Vlv2TbltDevicePkg/ResetSystemLib: Implement ResetPlatformSpecific
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
Cc: David Wei <david.wei@intel.com>
---
.../Library/ResetSystemLib/ResetSystemLib.c | 23 ++++++++++++++++++++--
1 file changed, 21 insertions(+), 2 deletions(-)
diff --git a/Vlv2TbltDevicePkg/Library/ResetSystemLib/ResetSystemLib.c b/Vlv2TbltDevicePkg/Library/ResetSystemLib/ResetSystemLib.c
index 1a6da83..77f1b8b 100644
--- a/Vlv2TbltDevicePkg/Library/ResetSystemLib/ResetSystemLib.c
+++ b/Vlv2TbltDevicePkg/Library/ResetSystemLib/ResetSystemLib.c
@@ -1,7 +1,6 @@
/** @file
-Copyright (c) 2007 - 2014, Intel Corporation. All rights reserved.<BR>
-
+ Copyright (c) 2007 - 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
@@ -176,3 +175,23 @@ EnterS3WithImmediateWake (
ASSERT (FALSE);
}
+/**
+ This function causes a systemwide reset. The exact type of the reset is defined
+ by the EFI_GUID that follows the Null-terminated Unicode string passed into ResetData.
+ If the platform does not recognize the EFI_GUID in ResetData the platform must pick a
+ supported reset type to perform.The platform may optionally log the parameters from
+ any non-normal reset that occurs.
+
+ @param[in] DataSize The size, in bytes, of ResetData.
+ @param[in] ResetData The data buffer starts with a Null-terminated string, followed
+ by the EFI_GUID.
+**/
+VOID
+EFIAPI
+ResetPlatformSpecific (
+ IN UINTN DataSize,
+ IN VOID *ResetData
+ )
+{
+ ResetCold ();
+}
--
2.9.0.windows.1
^ permalink raw reply related [flat|nested] 21+ messages in thread
* Re: [PATCH 11/11] MdeModulePkg/ResetSystemRuntimeDxe: Support EfiResetPlatformSpecific
2016-08-10 17:33 ` Jordan Justen
@ 2016-08-11 2:43 ` Ni, Ruiyu
2016-08-11 6:05 ` Jordan Justen
0 siblings, 1 reply; 21+ messages in thread
From: Ni, Ruiyu @ 2016-08-11 2:43 UTC (permalink / raw)
To: Justen, Jordan L, edk2-devel@lists.01.org; +Cc: Tian, Feng, Chan, Amy
Thanks/Ray
> -----Original Message-----
> From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of
> Jordan Justen
> Sent: Thursday, August 11, 2016 1:33 AM
> To: Ni, Ruiyu <ruiyu.ni@intel.com>; edk2-devel@lists.01.org
> Cc: Tian, Feng <feng.tian@intel.com>; Chan, Amy <amy.chan@intel.com>
> Subject: Re: [edk2] [PATCH 11/11]
> MdeModulePkg/ResetSystemRuntimeDxe: Support EfiResetPlatformSpecific
>
> On 2016-08-09 22:56:11, Ruiyu Ni wrote:
> > Contributed-under: TianoCore Contribution Agreement 1.0
> > Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
> > Cc: Feng Tian <feng.tian@intel.com>
> > Cc: Amy Chan <amy.chan@intel.com>
> > ---
> > MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystem.c | 14
> > +++++++++++---
> > 1 file changed, 11 insertions(+), 3 deletions(-)
> >
> > diff --git
> > a/MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystem.c
> > b/MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystem.c
> > index aa1ca16..f61e65e 100644
> > --- a/MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystem.c
> > +++
> b/MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystem.c
> > @@ -1,7 +1,7 @@
> > /** @file
> > Reset Architectural Protocol implementation
> >
> > - Copyright (c) 2006 - 2012, Intel Corporation. All rights
> > reserved.<BR>
> > + Copyright (c) 2006 - 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 @@ -86,11 +86,15 @@ DoS3 (
> >
> > @param[in] ResetType The type of reset to perform.
> > @param[in] ResetStatus The status code for the reset.
> > - @param[in] DataSize The size, in bytes, of WatchdogData.
> > + @param[in] DataSize The size, in bytes, of ResetData.
> > @param[in] ResetData For a ResetType of EfiResetCold,
> EfiResetWarm, or
> > EfiResetShutdown the data buffer starts with a Null-
> terminated
> > string, optionally followed by additional binary data.
> > -
> > + The string is a description that the caller may use to
> further
> > + indicate the reason for the system reset. ResetData is only
> > + valid if ResetStatus is something other than EFI_SUCCESS
> > + unless the ResetType is EfiResetPlatformSpecific
> > + where a minimum amount of ResetData is always
> required.
>
> Most of the patches in this series have lines that are longer than 80 columns.
> Can you fix that?
Do we have rule to limit the line to 80 columns? I saw many files have long
lines.
Or I can change OvmfPkg changes to follow the 80 rule. What do you think?
>
> I think you should move patch 11 before patch 09 "OvmfPkg: Use
> MdeModulePkg/ResetSystemRuntimeDxe". I think this should allow reset to
> continue working through the entire series for OVMF. (right?)
Reset works using my current order.
But I agree moving #11 before #9 can move ResetPlatformSpecific support
earilier, and group the ResetPlatformSpecific patches together. I will do that.
>
> With those changes,
>
> Series Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
>
> > **/
> > VOID
> > EFIAPI
> > @@ -144,6 +148,10 @@ ResetSystem (
> > ResetShutdown ();
> > return ;
> >
> > + case EfiResetPlatformSpecific:
> > + ResetPlatformSpecific (DataSize, ResetData);
> > + return;
> > +
> > default:
> > return ;
> > }
> > --
> > 2.9.0.windows.1
> >
> > _______________________________________________
> > edk2-devel mailing list
> > edk2-devel@lists.01.org
> > https://lists.01.org/mailman/listinfo/edk2-devel
> _______________________________________________
> edk2-devel mailing list
> edk2-devel@lists.01.org
> https://lists.01.org/mailman/listinfo/edk2-devel
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [PATCH 11/11] MdeModulePkg/ResetSystemRuntimeDxe: Support EfiResetPlatformSpecific
2016-08-11 2:43 ` Ni, Ruiyu
@ 2016-08-11 6:05 ` Jordan Justen
0 siblings, 0 replies; 21+ messages in thread
From: Jordan Justen @ 2016-08-11 6:05 UTC (permalink / raw)
To: Ni, Ruiyu, edk2-devel@lists.01.org; +Cc: Tian, Feng, Chan, Amy
On 2016-08-10 19:43:03, Ni, Ruiyu wrote:
>
> > -----Original Message-----
> > From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of
> > Jordan Justen
> >
> > On 2016-08-09 22:56:11, Ruiyu Ni wrote:
> > > + indicate the reason for the system reset. ResetData is only
> > > + valid if ResetStatus is something other than EFI_SUCCESS
> > > + unless the ResetType is EfiResetPlatformSpecific
> > > + where a minimum amount of ResetData is always
> > required.
> >
> > Most of the patches in this series have lines that are longer than 80 columns.
> > Can you fix that?
>
> Do we have rule to limit the line to 80 columns? I saw many files have long
> lines.
> Or I can change OvmfPkg changes to follow the 80 rule. What do you think?
Yes, it is in the code style document. You should update all patches
for it. It looks like most of them will just be copy/paste.
>
> >
> > I think you should move patch 11 before patch 09 "OvmfPkg: Use
> > MdeModulePkg/ResetSystemRuntimeDxe". I think this should allow reset to
> > continue working through the entire series for OVMF. (right?)
>
> Reset works using my current order.
> But I agree moving #11 before #9 can move ResetPlatformSpecific support
> earilier, and group the ResetPlatformSpecific patches together. I will do that.
Oh, I see. I guess this patch updates the ResetPlatformSpecific type,
so it probably won't be too important for OVMF. I think it might be a
little better earlier, but you can decide if you want to move it or
not.
-Jordan
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [PATCH 04/11] CorebootPayloadPkg/ResetSystemLib: Implement ResetPlatformSpecific
2016-08-10 5:56 ` [PATCH 04/11] CorebootPayloadPkg/ResetSystemLib: " Ruiyu Ni
@ 2016-08-11 16:09 ` Ma, Maurice
0 siblings, 0 replies; 21+ messages in thread
From: Ma, Maurice @ 2016-08-11 16:09 UTC (permalink / raw)
To: Ni, Ruiyu; +Cc: Agyeman, Prince, edk2-devel@lists.01.org
It looks good to me.
Reviewed by: Maurice Ma <maurice.ma@intel.com>
Regards,
Maurice
-----Original Message-----
From: Ni, Ruiyu
Sent: Tuesday, August 09, 2016 10:56 PM
To: edk2-devel@lists.01.org
Cc: Ma, Maurice; Agyeman, Prince
Subject: [PATCH 04/11] CorebootPayloadPkg/ResetSystemLib: Implement ResetPlatformSpecific
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
Cc: Maurice Ma <maurice.ma@intel.com>
Cc: Prince Agyeman <prince.agyeman@intel.com>
---
.../Library/ResetSystemLib/ResetSystemLib.c | 23 +++++++++++++++++++++-
1 file changed, 22 insertions(+), 1 deletion(-)
diff --git a/CorebootPayloadPkg/Library/ResetSystemLib/ResetSystemLib.c b/CorebootPayloadPkg/Library/ResetSystemLib/ResetSystemLib.c
index 55f5609..f6621bf 100644
--- a/CorebootPayloadPkg/Library/ResetSystemLib/ResetSystemLib.c
+++ b/CorebootPayloadPkg/Library/ResetSystemLib/ResetSystemLib.c
@@ -1,7 +1,7 @@
/** @file
Reset System Library functions for coreboot
- Copyright (c) 2014, Intel Corporation. All rights reserved.<BR>
+ Copyright (c) 2014 - 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
which accompanies this distribution. The full text of the license may be found at @@ -161,3 +161,24 @@ EnterS3WithImmediateWake (
AcpiPmControl (5);
ASSERT (FALSE);
}
+
+/**
+ This function causes a systemwide reset. The exact type of the reset
+is defined
+ by the EFI_GUID that follows the Null-terminated Unicode string passed into ResetData.
+ If the platform does not recognize the EFI_GUID in ResetData the
+platform must pick a
+ supported reset type to perform.The platform may optionally log the
+parameters from
+ any non-normal reset that occurs.
+
+ @param[in] DataSize The size, in bytes, of ResetData.
+ @param[in] ResetData The data buffer starts with a Null-terminated string, followed
+ by the EFI_GUID.
+**/
+VOID
+EFIAPI
+ResetPlatformSpecific (
+ IN UINTN DataSize,
+ IN VOID *ResetData
+ )
+{
+ ResetCold ();
+}
--
2.9.0.windows.1
^ permalink raw reply related [flat|nested] 21+ messages in thread
* Re: [PATCH 01/11] MdePkg/UefiSpec.h: Align function header of ResetSystem to UEFI Spec
2016-08-10 5:56 ` [PATCH 01/11] MdePkg/UefiSpec.h: Align function header of ResetSystem to UEFI Spec Ruiyu Ni
@ 2016-08-16 4:49 ` Gao, Liming
0 siblings, 0 replies; 21+ messages in thread
From: Gao, Liming @ 2016-08-16 4:49 UTC (permalink / raw)
To: Ni, Ruiyu, edk2-devel@lists.01.org
Reviewed-by: Liming Gao <liming.gao@intel.com>
> -----Original Message-----
> From: Ni, Ruiyu
> Sent: Wednesday, August 10, 2016 1:56 PM
> To: edk2-devel@lists.01.org
> Cc: Gao, Liming <liming.gao@intel.com>
> Subject: [PATCH 01/11] MdePkg/UefiSpec.h: Align function header of
> ResetSystem to UEFI Spec
>
> Contributed-under: TianoCore Contribution Agreement 1.0
> Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
> Cc: Liming Gao <liming.gao@intel.com>
> ---
> MdePkg/Include/Uefi/UefiSpec.h | 8 ++++++--
> 1 file changed, 6 insertions(+), 2 deletions(-)
>
> diff --git a/MdePkg/Include/Uefi/UefiSpec.h
> b/MdePkg/Include/Uefi/UefiSpec.h
> index e8feed1..57cb4e8 100644
> --- a/MdePkg/Include/Uefi/UefiSpec.h
> +++ b/MdePkg/Include/Uefi/UefiSpec.h
> @@ -1004,11 +1004,15 @@ EFI_STATUS
>
> @param[in] ResetType The type of reset to perform.
> @param[in] ResetStatus The status code for the reset.
> - @param[in] DataSize The size, in bytes, of WatchdogData.
> + @param[in] DataSize The size, in bytes, of ResetData.
> @param[in] ResetData For a ResetType of EfiResetCold, EfiResetWarm,
> or
> EfiResetShutdown the data buffer starts with a Null-
> terminated
> string, optionally followed by additional binary data.
> -
> + The string is a description that the caller may use to further
> + indicate the reason for the system reset. ResetData is only
> + valid if ResetStatus is something other than EFI_SUCCESS
> + unless the ResetType is EfiResetPlatformSpecific
> + where a minimum amount of ResetData is always required.
> **/
> typedef
> VOID
> --
> 2.9.0.windows.1
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [PATCH 03/11] MdeModulePkg/BaseResetSystemLibNull: Implement ResetPlatformSpecific
2016-08-10 5:56 ` [PATCH 03/11] MdeModulePkg/BaseResetSystemLibNull: Implement ResetPlatformSpecific Ruiyu Ni
@ 2016-08-23 3:21 ` Tian, Feng
2016-08-23 4:56 ` Ni, Ruiyu
0 siblings, 1 reply; 21+ messages in thread
From: Tian, Feng @ 2016-08-23 3:21 UTC (permalink / raw)
To: Ni, Ruiyu, edk2-devel@lists.01.org; +Cc: Chan, Amy, Tian, Feng
Do you need directly assert in ResetPlatformSpecific() for this NULL instance? Other series look good to me
Reviewed-by: Feng Tian <feng.tian@intel.com>
Thanks
Feng
-----Original Message-----
From: Ni, Ruiyu
Sent: Wednesday, August 10, 2016 1:56 PM
To: edk2-devel@lists.01.org
Cc: Tian, Feng <feng.tian@intel.com>; Chan, Amy <amy.chan@intel.com>
Subject: [PATCH 03/11] MdeModulePkg/BaseResetSystemLibNull: Implement ResetPlatformSpecific
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
Cc: Feng Tian <feng.tian@intel.com>
Cc: Amy Chan <amy.chan@intel.com>
---
.../BaseResetSystemLibNull.c | 23 +++++++++++++++++++++-
1 file changed, 22 insertions(+), 1 deletion(-)
diff --git a/MdeModulePkg/Library/BaseResetSystemLibNull/BaseResetSystemLibNull.c b/MdeModulePkg/Library/BaseResetSystemLibNull/BaseResetSystemLibNull.c
index d21a774..b233254 100644
--- a/MdeModulePkg/Library/BaseResetSystemLibNull/BaseResetSystemLibNull.c
+++ b/MdeModulePkg/Library/BaseResetSystemLibNull/BaseResetSystemLibNull
+++ .c
@@ -1,7 +1,7 @@
/** @file
Null Reset System Library instance that only generates ASSERT() conditions.
- Copyright (c) 2006 - 2009, Intel Corporation. All rights reserved.<BR>
+ Copyright (c) 2006 - 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
which accompanies this distribution. The full text of the license may be found at @@ -77,3 +77,24 @@ EnterS3WithImmediateWake ( {
ASSERT (FALSE);
}
+
+/**
+ This function causes a systemwide reset. The exact type of the reset
+is defined
+ by the EFI_GUID that follows the Null-terminated Unicode string passed into ResetData.
+ If the platform does not recognize the EFI_GUID in ResetData the
+platform must pick a
+ supported reset type to perform.The platform may optionally log the
+parameters from
+ any non-normal reset that occurs.
+
+ @param[in] DataSize The size, in bytes, of ResetData.
+ @param[in] ResetData The data buffer starts with a Null-terminated string, followed
+ by the EFI_GUID.
+**/
+VOID
+EFIAPI
+ResetPlatformSpecific (
+ IN UINTN DataSize,
+ IN VOID *ResetData
+ )
+{
+ ResetCold ();
+}
--
2.9.0.windows.1
^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [PATCH 03/11] MdeModulePkg/BaseResetSystemLibNull: Implement ResetPlatformSpecific
2016-08-23 3:21 ` Tian, Feng
@ 2016-08-23 4:56 ` Ni, Ruiyu
0 siblings, 0 replies; 21+ messages in thread
From: Ni, Ruiyu @ 2016-08-23 4:56 UTC (permalink / raw)
To: Tian, Feng, edk2-devel@lists.01.org; +Cc: Chan, Amy
Feng,
The spec says " If the platform does not recognize the EFI_GUID in ResetData
the platform must pick a supported reset type to perform".
For the NULL instance of ResetSystemLib, I treat it as an implementation for a
Certain platform, then it's ok to let it pick a supported reset type to perform.
Thanks/Ray
> -----Original Message-----
> From: Tian, Feng
> Sent: Tuesday, August 23, 2016 11:22 AM
> To: Ni, Ruiyu <ruiyu.ni@intel.com>; edk2-devel@lists.01.org
> Cc: Chan, Amy <amy.chan@intel.com>; Tian, Feng <feng.tian@intel.com>
> Subject: RE: [PATCH 03/11] MdeModulePkg/BaseResetSystemLibNull:
> Implement ResetPlatformSpecific
>
> Do you need directly assert in ResetPlatformSpecific() for this NULL instance?
> Other series look good to me
>
> Reviewed-by: Feng Tian <feng.tian@intel.com>
>
> Thanks
> Feng
>
> -----Original Message-----
> From: Ni, Ruiyu
> Sent: Wednesday, August 10, 2016 1:56 PM
> To: edk2-devel@lists.01.org
> Cc: Tian, Feng <feng.tian@intel.com>; Chan, Amy <amy.chan@intel.com>
> Subject: [PATCH 03/11] MdeModulePkg/BaseResetSystemLibNull:
> Implement ResetPlatformSpecific
>
> Contributed-under: TianoCore Contribution Agreement 1.0
> Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
> Cc: Feng Tian <feng.tian@intel.com>
> Cc: Amy Chan <amy.chan@intel.com>
> ---
> .../BaseResetSystemLibNull.c | 23 +++++++++++++++++++++-
> 1 file changed, 22 insertions(+), 1 deletion(-)
>
> diff --git
> a/MdeModulePkg/Library/BaseResetSystemLibNull/BaseResetSystemLibNul
> l.c
> b/MdeModulePkg/Library/BaseResetSystemLibNull/BaseResetSystemLibNul
> l.c
> index d21a774..b233254 100644
> ---
> a/MdeModulePkg/Library/BaseResetSystemLibNull/BaseResetSystemLibNul
> l.c
> +++
> b/MdeModulePkg/Library/BaseResetSystemLibNull/BaseResetSystemLibNul
> l
> +++ .c
> @@ -1,7 +1,7 @@
> /** @file
> Null Reset System Library instance that only generates ASSERT() conditions.
>
> - Copyright (c) 2006 - 2009, Intel Corporation. All rights reserved.<BR>
> + Copyright (c) 2006 - 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
> which accompanies this distribution. The full text of the license may be
> found at @@ -77,3 +77,24 @@ EnterS3WithImmediateWake ( {
> ASSERT (FALSE);
> }
> +
> +/**
> + This function causes a systemwide reset. The exact type of the reset
> +is defined
> + by the EFI_GUID that follows the Null-terminated Unicode string passed
> into ResetData.
> + If the platform does not recognize the EFI_GUID in ResetData the
> +platform must pick a
> + supported reset type to perform.The platform may optionally log the
> +parameters from
> + any non-normal reset that occurs.
> +
> + @param[in] DataSize The size, in bytes, of ResetData.
> + @param[in] ResetData The data buffer starts with a Null-terminated
> string, followed
> + by the EFI_GUID.
> +**/
> +VOID
> +EFIAPI
> +ResetPlatformSpecific (
> + IN UINTN DataSize,
> + IN VOID *ResetData
> + )
> +{
> + ResetCold ();
> +}
> --
> 2.9.0.windows.1
^ permalink raw reply [flat|nested] 21+ messages in thread
end of thread, other threads:[~2016-08-23 4:56 UTC | newest]
Thread overview: 21+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-08-10 5:56 [PATCH 00/11] Add ResetPlatformSpecific() to ResetSystemLib Ruiyu Ni
2016-08-10 5:56 ` [PATCH 01/11] MdePkg/UefiSpec.h: Align function header of ResetSystem to UEFI Spec Ruiyu Ni
2016-08-16 4:49 ` Gao, Liming
2016-08-10 5:56 ` [PATCH 02/11] MdeModulePkg: Add API ResetPlatformSpecific() to ResetSystemLib.h Ruiyu Ni
2016-08-10 5:56 ` [PATCH 03/11] MdeModulePkg/BaseResetSystemLibNull: Implement ResetPlatformSpecific Ruiyu Ni
2016-08-23 3:21 ` Tian, Feng
2016-08-23 4:56 ` Ni, Ruiyu
2016-08-10 5:56 ` [PATCH 04/11] CorebootPayloadPkg/ResetSystemLib: " Ruiyu Ni
2016-08-11 16:09 ` Ma, Maurice
2016-08-10 5:56 ` [PATCH 05/11] OvmfPkg/ResetSystemLib: " Ruiyu Ni
2016-08-10 5:56 ` [PATCH 06/11] PcAtChipsetPkg/ResetSystemLib: " Ruiyu Ni
2016-08-10 5:56 ` [PATCH 07/11] QuarkSocPkg/ResetSystemLib: " Ruiyu Ni
2016-08-10 16:28 ` Kinney, Michael D
2016-08-10 5:56 ` [PATCH 08/11] Vlv2TbltDevicePkg/ResetSystemLib: " Ruiyu Ni
2016-08-11 2:22 ` Wei, David
2016-08-10 5:56 ` [PATCH 09/11] OvmfPkg: Use MdeModulePkg/ResetSystemRuntimeDxe Ruiyu Ni
2016-08-10 5:56 ` [PATCH 10/11] PcAtChipsetPkg: Remove KbcResetDxe Ruiyu Ni
2016-08-10 5:56 ` [PATCH 11/11] MdeModulePkg/ResetSystemRuntimeDxe: Support EfiResetPlatformSpecific Ruiyu Ni
2016-08-10 17:33 ` Jordan Justen
2016-08-11 2:43 ` Ni, Ruiyu
2016-08-11 6:05 ` Jordan Justen
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox