From mboxrd@z Thu Jan 1 00:00:00 1970 Authentication-Results: mx.groups.io; dkim=missing; spf=pass (domain: intel.com, ip: 192.55.52.115, mailfrom: zhichao.gao@intel.com) Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by groups.io with SMTP; Thu, 23 May 2019 22:28:14 -0700 X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by fmsmga103.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 23 May 2019 22:28:14 -0700 X-ExtLoop1: 1 Received: from fmsmsx108.amr.corp.intel.com ([10.18.124.206]) by fmsmga008.fm.intel.com with ESMTP; 23 May 2019 22:28:14 -0700 Received: from shsmsx153.ccr.corp.intel.com (10.239.6.53) by FMSMSX108.amr.corp.intel.com (10.18.124.206) with Microsoft SMTP Server (TLS) id 14.3.408.0; Thu, 23 May 2019 22:28:13 -0700 Received: from shsmsx101.ccr.corp.intel.com ([169.254.1.129]) by SHSMSX153.ccr.corp.intel.com ([169.254.12.150]) with mapi id 14.03.0415.000; Fri, 24 May 2019 13:27:54 +0800 From: "Gao, Zhichao" To: "Gao, Liming" , "devel@edk2.groups.io" CC: Sean Brogan , "Kinney, Michael D" , Michael Turner , Bret Barkelew Subject: Re: [PATCH 4/6] MdePkg: Add gEfiCpu2ProtocolGuid and header file Thread-Topic: [PATCH 4/6] MdePkg: Add gEfiCpu2ProtocolGuid and header file Thread-Index: AQHVEe43cVfT5QubU0qrGKnShhhXTqZ5vLxwgAAB1oA= Date: Fri, 24 May 2019 05:27:53 +0000 Message-ID: <3CE959C139B4C44DBEA1810E3AA6F9000B7D4EB7@SHSMSX101.ccr.corp.intel.com> References: <20190524050437.38616-1-zhichao.gao@intel.com> <20190524050437.38616-5-zhichao.gao@intel.com> <4A89E2EF3DFEDB4C8BFDE51014F606A14E450A9D@SHSMSX104.ccr.corp.intel.com> In-Reply-To: <4A89E2EF3DFEDB4C8BFDE51014F606A14E450A9D@SHSMSX104.ccr.corp.intel.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.239.127.40] MIME-Version: 1.0 Return-Path: zhichao.gao@intel.com Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable I have found it in UEFP spec and PI spec. It is not defined in these specs. So I think maybe no spec has already defined it. Thanks, Zhichao > -----Original Message----- > From: Gao, Liming > Sent: Friday, May 24, 2019 1:20 PM > To: Gao, Zhichao ; devel@edk2.groups.io > Cc: Sean Brogan ; Kinney, Michael D > ; Michael Turner > ; Bret Barkelew > > Subject: RE: [PATCH 4/6] MdePkg: Add gEfiCpu2ProtocolGuid and header file >=20 > Zhichao: > Which spec defines Cpu2 protocol? >=20 > Thanks > Liming > >-----Original Message----- > >From: Gao, Zhichao > >Sent: Friday, May 24, 2019 1:05 PM > >To: devel@edk2.groups.io > >Cc: Sean Brogan ; Kinney, Michael D > >; Gao, Liming ; > >Michael Turner ; Bret Barkelew > > > >Subject: [PATCH 4/6] MdePkg: Add gEfiCpu2ProtocolGuid and header file > > > >From: Sean Brogan > > > >REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3D1400 > > > >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 > >Cc: Liming Gao > >Cc: Sean Brogan > >Cc: Michael Turner > >Cc: Bret Barkelew > >Signed-off-by: Zhichao Gao > >--- > > 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 detail= s. > >+ > >+ Copyright (c) 2006 - 2018, Microsoft Corporation. All rights > >+ reserved.
> >+ > >+ SPDX-License-Identifier: BSD-2-Clause-Patent > >+ > >+**/ > >+ > >+#ifndef __PROTOCOL_CPU2_H__ > >+#define __PROTOCOL_CPU2_H__ > >+ > >+#include > >+ > >+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 =3D { 0x3c7200e9, 0x005f, 0x4ea4= , > >{0x87, 0xde, 0xa3, 0xdf, 0xac, 0x8a, 0x27, 0xc3 }} > > > >+ ## Include/Protocol/Cpu2.h > >+ gEfiCpu2ProtocolGuid =3D { 0x55198405, 0x26C0, 0x4765= , {0x8B, > 0x7D, > >0xBE, 0x1D, 0xF5, 0xF9, 0x97, 0x12 }} > >+ > > # > > # [Error.gEfiMdePkgTokenSpaceGuid] > > # 0x80000001 | Invalid value provided. > >-- > >2.21.0.windows.1