]> git.proxmox.com Git - mirror_edk2.git/blob - IntelFrameworkPkg/Include/Protocol/CpuIo.h
Update framework CPU I/O protocol to solve some symbol duplication and conflict issue...
[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 - 2009, Intel Corporation
10 All rights reserved. This program and the accompanying materials
11 are licensed and made available under the terms and conditions of the BSD License
12 which accompanies this distribution. The full text of the license may be found at
13 http://opensource.org/licenses/bsd-license.php
14
15 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
16 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
17
18 @par Revision Reference:
19 CPU IO Protocol is defined in Framework of EFI CPU IO Protocol Spec
20 Version 0.9
21
22 **/
23
24 #ifndef _CPUIO_H_
25 #define _CPUIO_H_
26
27 #include <Protocol/CpuIo2.h>
28
29 #define EFI_CPU_IO_PROTOCOL_GUID \
30 { \
31 0xB0732526, 0x38C8, 0x4b40, {0x88, 0x77, 0x61, 0xC7, 0xB0, 0x6A, 0xAC, 0x45 } \
32 }
33
34 //
35 // Framework CPU IO protocol structure is the same as CPU IO 2 protocol defined in PI 1.2 spec.
36 // However, there is a significant different between the Framework CPU I/O
37 // Protocol and the PI 1.2 CPU I/O 2 Protocol. The Framework one is a runtime
38 // protocol, which means it can be used by runtime drivers after ExitBootServices().
39 // The PI one is not runtime safe, so it is a boot services only protocol and may
40 // not be used by runtime drivers after ExitBootServices().
41 //
42 typedef EFI_CPU_IO2_PROTOCOL EFI_CPU_IO_PROTOCOL;
43
44 extern EFI_GUID gEfiCpuIoProtocolGuid;
45
46 #endif