One minor comment. This library type is DXE_SMM_DRIVER. It should include <PiSmm.h>, not <Base.h>
With this change, Reviewed-by: Liming Gao <liming....@intel.com>. >-----Original Message----- >From: edk2-devel [mailto:edk2-devel-boun...@lists.01.org] On Behalf Of >Jiewen Yao >Sent: Thursday, February 09, 2017 12:30 AM >To: edk2-devel@lists.01.org >Cc: Kinney, Michael D <michael.d.kin...@intel.com>; Laszlo Ersek ><ler...@redhat.com>; Gao, Liming <liming....@intel.com> >Subject: [edk2] [PATCH 02/12] MdePkg/SmiHandlerProfileLibNull: Add NULL >instance. > >Cc: Michael D Kinney <michael.d.kin...@intel.com> >Cc: Liming Gao <liming....@intel.com> >Cc: Laszlo Ersek <ler...@redhat.com> >Contributed-under: TianoCore Contribution Agreement 1.0 >Signed-off-by: Jiewen Yao <jiewen....@intel.com> >--- > MdePkg/Library/SmiHandlerProfileLibNull/SmiHandlerProfileLibNull.c | 72 >++++++++++++++++++++ > MdePkg/Library/SmiHandlerProfileLibNull/SmiHandlerProfileLibNull.inf | 36 >++++++++++ > MdePkg/Library/SmiHandlerProfileLibNull/SmiHandlerProfileLibNull.uni | 21 >++++++ > 3 files changed, 129 insertions(+) > >diff --git >a/MdePkg/Library/SmiHandlerProfileLibNull/SmiHandlerProfileLibNull.c >b/MdePkg/Library/SmiHandlerProfileLibNull/SmiHandlerProfileLibNull.c >new file mode 100644 >index 0000000..207482a >--- /dev/null >+++ b/MdePkg/Library/SmiHandlerProfileLibNull/SmiHandlerProfileLibNull.c >@@ -0,0 +1,72 @@ >+/** @file >+ NULL instance of SmiHandlerProfile Library. >+ >+ Copyright (c) 2017, 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 <Base.h> >+#include <Library/SmiHandlerProfileLib.h> >+ >+/** >+ This function is called by SmmChildDispatcher module to report >+ a new SMI handler is registered, to SmmCore. >+ >+ @param HandlerGuid The GUID to identify the type of the handler. >+ For the SmmChildDispatch protocol, the HandlerGuid >+ must be the GUID of SmmChildDispatch protocol. >+ @param Handler The SMI handler. >+ @param CallerAddress The address of the module who registers the SMI >handler. >+ @param Context The context of the SMI handler. >+ For the SmmChildDispatch protocol, the Context >+ must match the one defined for SmmChildDispatch >protocol. >+ @param ContextSize The size of the context in bytes. >+ For the SmmChildDispatch protocol, the Context >+ must match the one defined for SmmChildDispatch >protocol. >+ >+ @retval EFI_SUCCESS The information is recorded. >+ @retval EFI_UNSUPPORTED The feature is unsupported. >+ @retval EFI_OUT_OF_RESOURCES There is no enough resource to record >the information. >+**/ >+EFI_STATUS >+EFIAPI >+SmiHandlerProfileRegisterHandler ( >+ IN EFI_GUID *HandlerGuid, >+ IN EFI_SMM_HANDLER_ENTRY_POINT2 Handler, >+ IN PHYSICAL_ADDRESS CallerAddress, >+ IN VOID *Context, OPTIONAL >+ IN UINTN ContextSize OPTIONAL >+ ) >+{ >+ return EFI_UNSUPPORTED; >+} >+ >+/** >+ This function is called by SmmChildDispatcher module to report >+ an existing SMI handler is unregistered, to SmmCore. >+ >+ @param HandlerGuid The GUID to identify the type of the handler. >+ For the SmmChildDispatch protocol, the HandlerGuid >+ must be the GUID of SmmChildDispatch protocol. >+ @param Handler The SMI handler. >+ >+ @retval EFI_SUCCESS The original record is removed. >+ @retval EFI_UNSUPPORTED The feature is unsupported. >+ @retval EFI_NOT_FOUND There is no record for the HandlerGuid and >handler. >+**/ >+EFI_STATUS >+EFIAPI >+SmiHandlerProfileUnregisterHandler ( >+ IN EFI_GUID *HandlerGuid, >+ IN EFI_SMM_HANDLER_ENTRY_POINT2 Handler >+ ) >+{ >+ return EFI_UNSUPPORTED; >+} >diff --git >a/MdePkg/Library/SmiHandlerProfileLibNull/SmiHandlerProfileLibNull.inf >b/MdePkg/Library/SmiHandlerProfileLibNull/SmiHandlerProfileLibNull.inf >new file mode 100644 >index 0000000..8220834 >--- /dev/null >+++ b/MdePkg/Library/SmiHandlerProfileLibNull/SmiHandlerProfileLibNull.inf >@@ -0,0 +1,36 @@ >+## @file >+# NULL instance of SmiHandlerProfile Library. >+# >+# Copyright (c) 2017, 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. >+# >+# >+## >+ >+[Defines] >+ INF_VERSION = 0x00010005 >+ BASE_NAME = SmiHandlerProfileLibNull >+ MODULE_UNI_FILE = SmiHandlerProfileLibNull.uni >+ FILE_GUID = B43D1B52-6251-4E6F-82EC-A599A5EE94C1 >+ MODULE_TYPE = DXE_SMM_DRIVER >+ VERSION_STRING = 1.0 >+ LIBRARY_CLASS = SmiHandlerProfileLib|DXE_SMM_DRIVER >SMM_CORE >+ >+# >+# The following information is for reference only and not required by the >build tools. >+# >+# VALID_ARCHITECTURES = IA32 X64 IPF EBC >+# >+ >+[Sources] >+ SmiHandlerProfileLibNull.c >+ >+[Packages] >+ MdePkg/MdePkg.dec >+ >diff --git >a/MdePkg/Library/SmiHandlerProfileLibNull/SmiHandlerProfileLibNull.uni >b/MdePkg/Library/SmiHandlerProfileLibNull/SmiHandlerProfileLibNull.uni >new file mode 100644 >index 0000000..fa3ba63 >--- /dev/null >+++ b/MdePkg/Library/SmiHandlerProfileLibNull/SmiHandlerProfileLibNull.uni >@@ -0,0 +1,21 @@ >+// /** @file >+// NULL instance of SmiHandlerProfile Library. >+// >+// NULL instance of SmiHandlerProfile Library. >+// >+// Copyright (c) 2017, 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. >+// >+// **/ >+ >+ >+#string STR_MODULE_ABSTRACT #language en-US "NULL instance of >SmiHandlerProfile Library" >+ >+#string STR_MODULE_DESCRIPTION #language en-US "NULL instance of >SmiHandlerProfile Library." >+ >-- >2.7.4.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