TianoCore EDK2 master
Loading...
Searching...
No Matches
MmCpuIo.h File Reference

Go to the source code of this file.

Data Structures

struct  EFI_MM_IO_ACCESS
 
struct  _EFI_MM_CPU_IO_PROTOCOL
 

Macros

#define EFI_MM_CPU_IO_PROTOCOL_GUID
 

Typedefs

typedef struct _EFI_MM_CPU_IO_PROTOCOL EFI_MM_CPU_IO_PROTOCOL
 
typedef EFI_STATUS(EFIAPI * EFI_MM_CPU_IO) (IN CONST EFI_MM_CPU_IO_PROTOCOL *This, IN EFI_MM_IO_WIDTH Width, IN UINT64 Address, IN UINTN Count, IN OUT VOID *Buffer)
 

Enumerations

enum  EFI_MM_IO_WIDTH { MM_IO_UINT8 = 0 , MM_IO_UINT16 = 1 , MM_IO_UINT32 = 2 , MM_IO_UINT64 = 3 }
 

Variables

EFI_GUID gEfiMmCpuIoProtocolGuid
 

Detailed Description

MM CPU I/O 2 protocol as defined in the PI 1.5 specification.

This protocol provides CPU I/O and memory access within MM.

Copyright (c) 2017, Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent

Definition in file MmCpuIo.h.

Macro Definition Documentation

◆ EFI_MM_CPU_IO_PROTOCOL_GUID

#define EFI_MM_CPU_IO_PROTOCOL_GUID
Value:
{ \
0x3242A9D8, 0xCE70, 0x4AA0, { 0x95, 0x5D, 0x5E, 0x7B, 0x14, 0x0D, 0xE4, 0xD2 } \
}

Definition at line 14 of file MmCpuIo.h.

Typedef Documentation

◆ EFI_MM_CPU_IO

typedef EFI_STATUS(EFIAPI * EFI_MM_CPU_IO) (IN CONST EFI_MM_CPU_IO_PROTOCOL *This, IN EFI_MM_IO_WIDTH Width, IN UINT64 Address, IN UINTN Count, IN OUT VOID *Buffer)

Provides the basic memory and I/O interfaces used toabstract accesses to devices.

The I/O operations are carried out exactly as requested. The caller is responsible for any alignment and I/O width issues that the bus, device, platform, or type of I/O might require.

Parameters
[in]ThisThe EFI_MM_CPU_IO_PROTOCOL instance.
[in]WidthSignifies the width of the I/O operations.
[in]AddressThe base address of the I/O operations. The caller is responsible for aligning the Address if required.
[in]CountThe number of I/O operations to perform.
[in,out]BufferFor read operations, the destination buffer to store the results. For write operations, the source buffer from which to write data.
Return values
EFI_SUCCESSThe data was read from or written to the device.
EFI_UNSUPPORTEDThe Address is not valid for this system.
EFI_INVALID_PARAMETERWidth or Count, or both, were invalid.
EFI_OUT_OF_RESOURCESThe request could not be completed due to a lack of resources.

Definition at line 54 of file MmCpuIo.h.

◆ EFI_MM_CPU_IO_PROTOCOL

Definition at line 19 of file MmCpuIo.h.

Enumeration Type Documentation

◆ EFI_MM_IO_WIDTH

Width of the MM CPU I/O operations

Definition at line 24 of file MmCpuIo.h.