]> git.proxmox.com Git - mirror_edk2.git/blob - IntelFrameworkPkg/Include/Protocol/CpuIo.h
Remove IntelFrameworkModulePkg
[mirror_edk2.git] / IntelFrameworkPkg / Include / Protocol / CpuIo.h
1 /** @file
2 This code abstracts the CPU IO Protocol which installed by some platform or chipset-specific
3 PEIM that abstracts the processor-visible I/O operations.
4
5 Note: This is a runtime protocol and can be used by runtime drivers after ExitBootServices().
6 It is different from the PI 1.2 CPU I/O 2 Protocol, which is a boot services only protocol
7 and may not be used by runtime drivers after ExitBootServices().
8
9 Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved.<BR>
10 SPDX-License-Identifier: BSD-2-Clause-Patent
11
12 @par Revision Reference:
13 CPU IO Protocol is defined in Framework of EFI CPU IO Protocol Spec
14 Version 0.9.
15
16 **/
17
18 #ifndef _CPUIO_H_
19 #define _CPUIO_H_
20
21 #include <Protocol/CpuIo2.h>
22
23 #define EFI_CPU_IO_PROTOCOL_GUID \
24 { \
25 0xB0732526, 0x38C8, 0x4b40, {0x88, 0x77, 0x61, 0xC7, 0xB0, 0x6A, 0xAC, 0x45 } \
26 }
27
28 //
29 // Framework CPU IO protocol structure is the same as CPU IO 2 protocol defined in PI 1.2 spec.
30 // However, there is a significant different between the Framework CPU I/O
31 // Protocol and the PI 1.2 CPU I/O 2 Protocol. The Framework one is a runtime
32 // protocol, which means it can be used by runtime drivers after ExitBootServices().
33 // The PI one is not runtime safe, so it is a boot services only protocol and may
34 // not be used by runtime drivers after ExitBootServices().
35 //
36 typedef EFI_CPU_IO2_PROTOCOL EFI_CPU_IO_PROTOCOL;
37
38 extern EFI_GUID gEfiCpuIoProtocolGuid;
39
40 #endif