[edk2-devel] [PATCH 4/6] MdePkg: Add gEfiCpu2ProtocolGuid and header file

Yao, Jiewen jiewen.yao at intel.com
Fri May 24 05:38:53 UTC 2019


Sorry, it is CPU2 not CPU_IO2.

Right, I did not find CPU2 protocol in PI spec today.


> -----Original Message-----
> From: Yao, Jiewen
> Sent: Thursday, May 23, 2019 10:35 PM
> To: devel at edk2.groups.io; Gao, Zhichao <zhichao.gao at intel.com>; Gao,
> Liming <liming.gao at intel.com>
> Cc: Sean Brogan <sean.brogan at microsoft.com>; Kinney, Michael D
> <michael.d.kinney at intel.com>; Michael Turner
> <Michael.Turner at microsoft.com>; Bret Barkelew
> <Bret.Barkelew at microsoft.com>
> Subject: RE: [edk2-devel] [PATCH 4/6] MdePkg: Add gEfiCpu2ProtocolGuid
> and header file
> 
> EFI_CPU_IO2_PROCOL is defined in PI spec Volume 5 Chapter 15 CPU I/O
> Protocol.
> 
> Thank you
> Yao jiewen
> 
> > -----Original Message-----
> > From: devel at edk2.groups.io [mailto:devel at edk2.groups.io] On Behalf Of
> > Gao, Zhichao
> > Sent: Thursday, May 23, 2019 10:28 PM
> > To: Gao, Liming <liming.gao at intel.com>; devel at edk2.groups.io
> > Cc: Sean Brogan <sean.brogan at microsoft.com>; Kinney, Michael D
> > <michael.d.kinney at intel.com>; Michael Turner
> > <Michael.Turner at microsoft.com>; Bret Barkelew
> > <Bret.Barkelew at microsoft.com>
> > Subject: Re: [edk2-devel] [PATCH 4/6] MdePkg: Add gEfiCpu2ProtocolGuid
> > and header file
> >
> > 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 <zhichao.gao at intel.com>; devel at edk2.groups.io
> > > Cc: Sean Brogan <sean.brogan at microsoft.com>; Kinney, Michael D
> > > <michael.d.kinney at intel.com>; Michael Turner
> > > <Michael.Turner at microsoft.com>; Bret Barkelew
> > > <Bret.Barkelew at microsoft.com>
> > > Subject: RE: [PATCH 4/6] MdePkg: Add gEfiCpu2ProtocolGuid and header
> > file
> > >
> > > Zhichao:
> > >   Which spec defines Cpu2 protocol?
> > >
> > > Thanks
> > > Liming
> > > >-----Original Message-----
> > > >From: Gao, Zhichao
> > > >Sent: Friday, May 24, 2019 1:05 PM
> > > >To: devel at edk2.groups.io
> > > >Cc: Sean Brogan <sean.brogan at microsoft.com>; Kinney, Michael D
> > > ><michael.d.kinney at intel.com>; Gao, Liming <liming.gao at intel.com>;
> > > >Michael Turner <Michael.Turner at microsoft.com>; Bret Barkelew
> > > ><Bret.Barkelew at microsoft.com>
> > > >Subject: [PATCH 4/6] MdePkg: Add gEfiCpu2ProtocolGuid and header
> file
> > > >
> > > >From: Sean Brogan <sean.brogan at 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.kinney at intel.com>
> > > >Cc: Liming Gao <liming.gao at intel.com>
> > > >Cc: Sean Brogan <sean.brogan at microsoft.com>
> > > >Cc: Michael Turner <Michael.Turner at microsoft.com>
> > > >Cc: Bret Barkelew <Bret.Barkelew at microsoft.com>
> > > >Signed-off-by: Zhichao Gao <zhichao.gao at 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 (#41315): https://edk2.groups.io/g/devel/message/41315
Mute This Topic: https://groups.io/mt/31741731/1813853
Group Owner: devel+owner at edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [edk2-devel-archive at redhat.com]
-=-=-=-=-=-=-=-=-=-=-=-





More information about the edk2-devel-archive mailing list