#ifndef _SMM_CPU_IO_H_\r
#define _SMM_CPU_IO_H_\r
\r
+///\r
+/// Note:\r
+/// To avoid name conflict between PI and Framework SMM spec, the following names defined\r
+/// in PI 1.2 SMM spec are renamed. These renamings are not yet in a public PI spec and errta.\r
+///\r
+/// EFI_SMM_CPU_IO -> EFI_SMM_CPU_IO2\r
+/// EFI_SMM_IO_ACCESS -> EFI_SMM_IO_ACCESS2\r
+///\r
+\r
#define EFI_SMM_CPU_IO_PROTOCOL_GUID \\r
{ \\r
0x3242A9D8, 0xCE70, 0x4AA0, { 0x95, 0x5D, 0x5E, 0x7B, 0x14, 0x0D, 0xE4, 0xD2 } \\r
**/\r
typedef\r
EFI_STATUS\r
-(EFIAPI *EFI_SMM_CPU_IO)(\r
+(EFIAPI *EFI_SMM_CPU_IO2)(\r
IN CONST EFI_SMM_CPU_IO_PROTOCOL *This,\r
IN EFI_SMM_IO_WIDTH Width,\r
IN UINT64 Address,\r
///\r
/// This service provides the various modalities of memory and I/O read.\r
///\r
- EFI_SMM_CPU_IO Read;\r
+ EFI_SMM_CPU_IO2 Read;\r
///\r
/// This service provides the various modalities of memory and I/O write.\r
///\r
- EFI_SMM_CPU_IO Write;\r
-} EFI_SMM_IO_ACCESS;\r
+ EFI_SMM_CPU_IO2 Write;\r
+} EFI_SMM_IO_ACCESS2;\r
\r
///\r
/// SMM CPU I/O Protocol provides CPU I/O and memory access within SMM.\r
///\r
typedef struct _EFI_SMM_CPU_IO_PROTOCOL {\r
- EFI_SMM_IO_ACCESS Mem; ///< Allows reads and writes to memory-mapped I/O space.\r
- EFI_SMM_IO_ACCESS Io; ///< Allows reads and writes to I/O space.\r
+ EFI_SMM_IO_ACCESS2 Mem; ///< Allows reads and writes to memory-mapped I/O space.\r
+ EFI_SMM_IO_ACCESS2 Io; ///< Allows reads and writes to I/O space.\r
};\r
\r
extern EFI_GUID gEfiSmmCpuIoProtocolGuid;\r