public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: Ruiyu Ni <ruiyu.ni@intel.com>
To: edk2-devel@lists.01.org
Subject: [PATCH 00/10] Formalize the reset system core design
Date: Fri,  2 Feb 2018 14:45:20 +0800	[thread overview]
Message-ID: <20180202064530.407028-1-ruiyu.ni@intel.com> (raw)

The patches add/update two core modules that perform the reset action
  ResetSystemPei and ResetSystemRuntimeDxe

With the two core modules, every time a reset action is performed in
either PEI phase or DXE phase, the accordingly registerred
reset filter/notification/handler will be triggered.

Reset filters are processed first so the final reset type and reset
data can be determined.  Reset Notifications are processed second
so all components that have registered for a Reset Notification can
perform any required clean up actions. Reset handlers are processed
third.  If there are no registered reset handlers or none of them
resets the platform, then the default reset action based on the
ResetSystemLib is performed.

https://github.com/tianocore/edk2-staging/commits/ResetSystemFinal

Bret Barkelew (1):
  MdeModulePkg/ResetSystemPei: Add reset notifications in PEI

Michael D Kinney (6):
  MdePkg/PeiServicesLib: Add PeiServicesResetSystem2()
  MdeModulePkg/PeiMain: Always attempt to use Reset2 PPI first
  MdeModulePkg/PeiMain: Cleanup whitespace in Reset.c
  MdeModulePkg/ResetSystemRuntimeDxe: Add platform filter and handler
  MdeModulePkg: Add ResetSystemLib instances that call core services
  MdeModulePkg: Add ResetUtility librray class and BASE instance

Ruiyu Ni (3):
  MdeModulePkg/ResetSystemRuntimeDxe: Add more debug message
  MdePkg/UefiRuntimeLib: Support more module types.
  MdeModulePkg: Add ResetSystemPei PEIM

 MdeModulePkg/Core/Pei/Reset/Reset.c                |  67 ++--
 MdeModulePkg/Include/Library/ResetUtilityLib.h     | 111 ++++++
 .../Include/Ppi/PlatformSpecificResetFilter.h      |  31 ++
 .../Include/Ppi/PlatformSpecificResetHandler.h     |  29 ++
 .../Ppi/PlatformSpecificResetNotification.h        |  31 ++
 .../Include/Protocol/PlatformSpecificResetFilter.h |  31 ++
 .../Protocol/PlatformSpecificResetHandler.h        |  29 ++
 .../Library/DxeResetSystemLib/DxeResetSystemLib.c  | 100 ++++++
 .../DxeResetSystemLib/DxeResetSystemLib.inf        |  40 +++
 .../DxeResetSystemLib/DxeResetSystemLib.uni        |  21 ++
 .../Library/PeiResetSystemLib/PeiResetSystemLib.c  | 100 ++++++
 .../PeiResetSystemLib/PeiResetSystemLib.inf        |  40 +++
 .../PeiResetSystemLib/PeiResetSystemLib.uni        |  21 ++
 .../Library/ResetUtilityLib/ResetUtility.c         | 221 ++++++++++++
 .../Library/ResetUtilityLib/ResetUtilityLib.inf    |  43 +++
 MdeModulePkg/MdeModulePkg.dec                      |  17 +
 MdeModulePkg/MdeModulePkg.dsc                      |   7 +
 .../Universal/ResetSystemPei/ResetSystem.c         | 371 +++++++++++++++++++++
 .../Universal/ResetSystemPei/ResetSystem.h         | 130 ++++++++
 .../ResetSystemPei.inf}                            |  45 ++-
 .../Universal/ResetSystemPei/ResetSystemPei.uni    |  20 ++
 .../ResetSystemPei/ResetSystemPeiExtra.uni         |  20 ++
 .../Universal/ResetSystemRuntimeDxe/ResetSystem.c  |  91 ++++-
 .../Universal/ResetSystemRuntimeDxe/ResetSystem.h  |   7 +
 .../ResetSystemRuntimeDxe.inf                      |   7 +-
 MdePkg/Include/Library/PeiServicesLib.h            |  24 ++
 MdePkg/Library/PeiServicesLib/PeiServicesLib.c     |  26 ++
 MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf   |   4 +-
 28 files changed, 1615 insertions(+), 69 deletions(-)
 create mode 100644 MdeModulePkg/Include/Library/ResetUtilityLib.h
 create mode 100644 MdeModulePkg/Include/Ppi/PlatformSpecificResetFilter.h
 create mode 100644 MdeModulePkg/Include/Ppi/PlatformSpecificResetHandler.h
 create mode 100644 MdeModulePkg/Include/Ppi/PlatformSpecificResetNotification.h
 create mode 100644 MdeModulePkg/Include/Protocol/PlatformSpecificResetFilter.h
 create mode 100644 MdeModulePkg/Include/Protocol/PlatformSpecificResetHandler.h
 create mode 100644 MdeModulePkg/Library/DxeResetSystemLib/DxeResetSystemLib.c
 create mode 100644 MdeModulePkg/Library/DxeResetSystemLib/DxeResetSystemLib.inf
 create mode 100644 MdeModulePkg/Library/DxeResetSystemLib/DxeResetSystemLib.uni
 create mode 100644 MdeModulePkg/Library/PeiResetSystemLib/PeiResetSystemLib.c
 create mode 100644 MdeModulePkg/Library/PeiResetSystemLib/PeiResetSystemLib.inf
 create mode 100644 MdeModulePkg/Library/PeiResetSystemLib/PeiResetSystemLib.uni
 create mode 100644 MdeModulePkg/Library/ResetUtilityLib/ResetUtility.c
 create mode 100644 MdeModulePkg/Library/ResetUtilityLib/ResetUtilityLib.inf
 create mode 100644 MdeModulePkg/Universal/ResetSystemPei/ResetSystem.c
 create mode 100644 MdeModulePkg/Universal/ResetSystemPei/ResetSystem.h
 copy MdeModulePkg/Universal/{ResetSystemRuntimeDxe/ResetSystemRuntimeDxe.inf => ResetSystemPei/ResetSystemPei.inf} (50%)
 create mode 100644 MdeModulePkg/Universal/ResetSystemPei/ResetSystemPei.uni
 create mode 100644 MdeModulePkg/Universal/ResetSystemPei/ResetSystemPeiExtra.uni

-- 
2.15.1.windows.2



             reply	other threads:[~2018-02-02  6:39 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-02-02  6:45 Ruiyu Ni [this message]
2018-02-02  6:45 ` [PATCH 01/10] MdePkg/PeiServicesLib: Add PeiServicesResetSystem2() Ruiyu Ni
2018-02-07 11:37   ` Zeng, Star
2018-02-02  6:45 ` [PATCH 02/10] MdeModulePkg/PeiMain: Always attempt to use Reset2 PPI first Ruiyu Ni
2018-02-07 11:37   ` Zeng, Star
2018-02-02  6:45 ` [PATCH 03/10] MdeModulePkg/PeiMain: Cleanup whitespace in Reset.c Ruiyu Ni
2018-02-07 11:39   ` Zeng, Star
2018-02-02  6:45 ` [PATCH 04/10] MdeModulePkg/ResetSystemRuntimeDxe: Add platform filter and handler Ruiyu Ni
2018-02-02 13:46   ` Laszlo Ersek
2018-02-06  2:56     ` Ni, Ruiyu
2018-02-07 11:44   ` Zeng, Star
2018-02-02  6:45 ` [PATCH 05/10] MdeModulePkg/ResetSystemRuntimeDxe: Add more debug message Ruiyu Ni
2018-02-07 12:04   ` Zeng, Star
2018-02-09  3:01     ` Ni, Ruiyu
2018-02-02  6:45 ` [PATCH 06/10] MdeModulePkg: Add ResetSystemLib instances that call core services Ruiyu Ni
2018-02-07 12:20   ` Zeng, Star
2018-02-09  3:00     ` Ni, Ruiyu
2018-02-02  6:45 ` [PATCH 07/10] MdeModulePkg: Add ResetUtility librray class and BASE instance Ruiyu Ni
2018-02-07 12:28   ` Zeng, Star
2018-02-08  1:36     ` Zeng, Star
2018-02-08  2:07       ` Zeng, Star
2018-02-02  6:45 ` [PATCH 08/10] MdePkg/UefiRuntimeLib: Support more module types Ruiyu Ni
2018-02-07 12:24   ` Zeng, Star
2018-02-09  3:06     ` Ni, Ruiyu
2018-02-02  6:45 ` [PATCH 09/10] MdeModulePkg: Add ResetSystemPei PEIM Ruiyu Ni
2018-02-07 12:35   ` Zeng, Star
2018-02-08  2:16     ` Zeng, Star
2018-02-09  3:12     ` Ni, Ruiyu
2018-02-02  6:45 ` [PATCH 10/10] MdeModulePkg/ResetSystemPei: Add reset notifications in PEI Ruiyu Ni
2018-02-07 12:40   ` Zeng, Star
2018-02-08  2:18     ` Zeng, Star

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-list from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20180202064530.407028-1-ruiyu.ni@intel.com \
    --to=devel@edk2.groups.io \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox