Zhichao: Which spec defines Cpu2 protocol? Thanks Liming >-----Original Message----- >From: Gao, Zhichao >Sent: Friday, May 24, 2019 1:05 PM >To: devel@edk2.groups.io >Cc: Sean Brogan <sean.bro...@microsoft.com>; Kinney, Michael D ><michael.d.kin...@intel.com>; Gao, Liming <liming....@intel.com>; Michael >Turner <michael.tur...@microsoft.com>; Bret Barkelew ><bret.barke...@microsoft.com> >Subject: [PATCH 4/6] MdePkg: Add gEfiCpu2ProtocolGuid and header file > >From: Sean Brogan <sean.bro...@microsoft.com> > >REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1400 > >Add gEfiCpu2ProtocolGuid to MdePkg.dec. >Add the header file of Cpu2 protocol: it has one interface >to enable interrupt and put cpu to sleep to wait for an >interrupt. > >Cc: Michael D Kinney <michael.d.kin...@intel.com> >Cc: Liming Gao <liming....@intel.com> >Cc: Sean Brogan <sean.bro...@microsoft.com> >Cc: Michael Turner <michael.tur...@microsoft.com> >Cc: Bret Barkelew <bret.barke...@microsoft.com> >Signed-off-by: Zhichao Gao <zhichao....@intel.com> >--- > MdePkg/Include/Protocol/Cpu2.h | 43 >++++++++++++++++++++++++++++++++++ > MdePkg/MdePkg.dec | 3 +++ > 2 files changed, 46 insertions(+) > create mode 100644 MdePkg/Include/Protocol/Cpu2.h > >diff --git a/MdePkg/Include/Protocol/Cpu2.h >b/MdePkg/Include/Protocol/Cpu2.h >new file mode 100644 >index 0000000000..cacd948140 >--- /dev/null >+++ b/MdePkg/Include/Protocol/Cpu2.h >@@ -0,0 +1,43 @@ >+/** @file >+ CPU2 Protocol >+ >+ This code abstracts the DXE core from processor implementation details. >+ >+ Copyright (c) 2006 - 2018, Microsoft Corporation. All rights reserved.<BR> >+ >+ SPDX-License-Identifier: BSD-2-Clause-Patent >+ >+**/ >+ >+#ifndef __PROTOCOL_CPU2_H__ >+#define __PROTOCOL_CPU2_H__ >+ >+#include <Uefi.h> >+ >+typedef struct _EFI_CPU2_PROTOCOL EFI_CPU2_PROTOCOL; >+ >+ >+/** >+ This function enables CPU interrupts and then waits for an interrupt to >arrive. >+ >+ @param This The EFI_CPU2_PROTOCOL instance. >+ >+ @retval EFI_SUCCESS Interrupts are enabled on the processor. >+ @retval EFI_DEVICE_ERROR Interrupts could not be enabled on the >processor. >+ >+**/ >+typedef >+EFI_STATUS >+(EFIAPI *EFI_CPU_ENABLE_AND_WAIT_FOR_INTERRUPT)( >+ IN EFI_CPU2_PROTOCOL *This >+ ); >+ >+// >+// The EFI_CPU2_PROTOCOL is used to abstract processor-specific functions >from the DXE >+// Foundation. >+// >+struct _EFI_CPU2_PROTOCOL { >+ EFI_CPU_ENABLE_AND_WAIT_FOR_INTERRUPT >EnableAndWaitForInterrupt; >+}; >+ >+#endif >diff --git a/MdePkg/MdePkg.dec b/MdePkg/MdePkg.dec >index 6c563375ee..e8c6939849 100644 >--- a/MdePkg/MdePkg.dec >+++ b/MdePkg/MdePkg.dec >@@ -1803,6 +1803,9 @@ > ## Include/Protocol/ShellDynamicCommand.h > gEfiShellDynamicCommandProtocolGuid = { 0x3c7200e9, 0x005f, 0x4ea4, >{0x87, 0xde, 0xa3, 0xdf, 0xac, 0x8a, 0x27, 0xc3 }} > >+ ## Include/Protocol/Cpu2.h >+ gEfiCpu2ProtocolGuid = { 0x55198405, 0x26C0, 0x4765, {0x8B, >0x7D, >0xBE, 0x1D, 0xF5, 0xF9, 0x97, 0x12 }} >+ > # > # [Error.gEfiMdePkgTokenSpaceGuid] > # 0x80000001 | Invalid value provided. >-- >2.21.0.windows.1
-=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#41310): https://edk2.groups.io/g/devel/message/41310 Mute This Topic: https://groups.io/mt/31741731/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-