12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- /** @file
- This code abstracts the CPU IO Protocol which installed by some platform or chipset-specific
- PEIM that abstracts the processor-visible I/O operations.
-
- Note: This is a runtime protocol and can be used by runtime drivers after ExitBootServices().
- It is different from the PI 1.2 CPU I/O 2 Protocol, which is a boot services only protocol
- and may not be used by runtime drivers after ExitBootServices().
-
- Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved.<BR>
- This program and the accompanying materials are licensed and made available under
- the terms and conditions of the BSD License that accompanies this distribution.
- The full text of the license may be found at
- http://opensource.org/licenses/bsd-license.php.
-
- THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
- WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
-
- @par Revision Reference:
- CPU IO Protocol is defined in Framework of EFI CPU IO Protocol Spec
- Version 0.9.
-
- **/
-
- #ifndef _CPUIO_H_
- #define _CPUIO_H_
-
- #include <ipxe/efi/Protocol/CpuIo2.h>
-
- #define EFI_CPU_IO_PROTOCOL_GUID \
- { \
- 0xB0732526, 0x38C8, 0x4b40, {0x88, 0x77, 0x61, 0xC7, 0xB0, 0x6A, 0xAC, 0x45 } \
- }
-
- //
- // Framework CPU IO protocol structure is the same as CPU IO 2 protocol defined in PI 1.2 spec.
- // However, there is a significant different between the Framework CPU I/O
- // Protocol and the PI 1.2 CPU I/O 2 Protocol. The Framework one is a runtime
- // protocol, which means it can be used by runtime drivers after ExitBootServices().
- // The PI one is not runtime safe, so it is a boot services only protocol and may
- // not be used by runtime drivers after ExitBootServices().
- //
- typedef EFI_CPU_IO2_PROTOCOL EFI_CPU_IO_PROTOCOL;
-
- extern EFI_GUID gEfiCpuIoProtocolGuid;
-
- #endif
|