MdePkg/Include/Ppi/CpuIo.h File Reference


Data Structures

struct  EFI_PEI_CPU_IO_PPI_ACCESS
struct  _EFI_PEI_CPU_IO_PPI

Defines

#define EFI_PEI_CPU_IO_PPI_INSTALLED_GUID   { 0xe6af1f7b, 0xfc3f, 0x46da, {0xa8, 0x28, 0xa3, 0xb4, 0x57, 0xa4, 0x42, 0x82 } }

Typedefs

typedef struct _EFI_PEI_CPU_IO_PPI EFI_PEI_CPU_IO_PPI
typedef EFI_STATUS(EFIAPI * EFI_PEI_CPU_IO_PPI_IO_MEM )(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN EFI_PEI_CPU_IO_PPI_WIDTH Width, IN UINT64 Address, IN UINTN Count, IN OUT VOID *Buffer)
typedef UINT8(EFIAPI * EFI_PEI_CPU_IO_PPI_IO_READ8 )(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN UINT64 Address)
typedef UINT16(EFIAPI * EFI_PEI_CPU_IO_PPI_IO_READ16 )(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN UINT64 Address)
typedef UINT32(EFIAPI * EFI_PEI_CPU_IO_PPI_IO_READ32 )(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN UINT64 Address)
typedef UINT64(EFIAPI * EFI_PEI_CPU_IO_PPI_IO_READ64 )(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN UINT64 Address)
typedef VOID(EFIAPI * EFI_PEI_CPU_IO_PPI_IO_WRITE8 )(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN UINT64 Address, IN UINT8 Data)
typedef VOID(EFIAPI * EFI_PEI_CPU_IO_PPI_IO_WRITE16 )(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN UINT64 Address, IN UINT16 Data)
typedef VOID(EFIAPI * EFI_PEI_CPU_IO_PPI_IO_WRITE32 )(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN UINT64 Address, IN UINT32 Data)
typedef VOID(EFIAPI * EFI_PEI_CPU_IO_PPI_IO_WRITE64 )(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN UINT64 Address, IN UINT64 Data)
typedef UINT8(EFIAPI * EFI_PEI_CPU_IO_PPI_MEM_READ8 )(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN UINT64 Address)
typedef UINT16(EFIAPI * EFI_PEI_CPU_IO_PPI_MEM_READ16 )(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN UINT64 Address)
typedef UINT32(EFIAPI * EFI_PEI_CPU_IO_PPI_MEM_READ32 )(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN UINT64 Address)
typedef UINT64(EFIAPI * EFI_PEI_CPU_IO_PPI_MEM_READ64 )(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN UINT64 Address)
typedef VOID(EFIAPI * EFI_PEI_CPU_IO_PPI_MEM_WRITE8 )(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN UINT64 Address, IN UINT8 Data)
typedef VOID(EFIAPI * EFI_PEI_CPU_IO_PPI_MEM_WRITE16 )(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN UINT64 Address, IN UINT16 Data)
typedef VOID(EFIAPI * EFI_PEI_CPU_IO_PPI_MEM_WRITE32 )(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN UINT64 Address, IN UINT32 Data)
typedef VOID(EFIAPI * EFI_PEI_CPU_IO_PPI_MEM_WRITE64 )(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN UINT64 Address, IN UINT64 Data)

Enumerations

enum  EFI_PEI_CPU_IO_PPI_WIDTH {
  EfiPeiCpuIoWidthUint8, EfiPeiCpuIoWidthUint16, EfiPeiCpuIoWidthUint32, EfiPeiCpuIoWidthUint64,
  EfiPeiCpuIoWidthFifoUint8, EfiPeiCpuIoWidthFifoUint16, EfiPeiCpuIoWidthFifoUint32, EfiPeiCpuIoWidthFifoUint64,
  EfiPeiCpuIoWidthFillUint8, EfiPeiCpuIoWidthFillUint16, EfiPeiCpuIoWidthFillUint32, EfiPeiCpuIoWidthFillUint64,
  EfiPeiCpuIoWidthMaximum
}

Variables

EFI_GUID gEfiPeiCpuIoPpiInstalledGuid

Detailed Description

This PPI provides a set of memory and I/O-based services. The perspective of the services is that of the processor, not the bus or system.

Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved.
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.

Revision Reference:
This PPI is introduced in PI Version 1.0.

Define Documentation

#define EFI_PEI_CPU_IO_PPI_INSTALLED_GUID   { 0xe6af1f7b, 0xfc3f, 0x46da, {0xa8, 0x28, 0xa3, 0xb4, 0x57, 0xa4, 0x42, 0x82 } }


Typedef Documentation

typedef EFI_STATUS(EFIAPI * EFI_PEI_CPU_IO_PPI_IO_MEM)(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN EFI_PEI_CPU_IO_PPI_WIDTH Width, IN UINT64 Address, IN UINTN Count, IN OUT VOID *Buffer)

Memory-based access services and I/O-based access services.

Parameters:
[in] PeiServices An indirect pointer to the PEI Services Table published by the PEI Foundation.
[in] This The pointer to local data for the interface.
[in] Width The width of the access. Enumerated in bytes.
[in] Address The physical address of the access.
[in] Count The number of accesses to perform.
[in,out] Buffer A pointer to the buffer of data.
Return values:
EFI_SUCCESS The function completed successfully.
EFI_NOT_YET_AVAILABLE The service has not been installed.

typedef UINT16(EFIAPI * EFI_PEI_CPU_IO_PPI_IO_READ16)(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN UINT64 Address)

16-bit I/O read operations.

Parameters:
[in] PeiServices An indirect pointer to the PEI Services Table published by the PEI Foundation.
[in] This The pointer to local data for the interface.
[in] Address The physical address of the access.
Returns:
A 16-bit value returned from the I/O space.

typedef UINT32(EFIAPI * EFI_PEI_CPU_IO_PPI_IO_READ32)(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN UINT64 Address)

32-bit I/O read operations.

Parameters:
[in] PeiServices An indirect pointer to the PEI Services Table published by the PEI Foundation.
[in] This The pointer to local data for the interface.
[in] Address The physical address of the access.
Returns:
A 32-bit value returned from the I/O space.

typedef UINT64(EFIAPI * EFI_PEI_CPU_IO_PPI_IO_READ64)(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN UINT64 Address)

64-bit I/O read operations.

Parameters:
[in] PeiServices An indirect pointer to the PEI Services Table published by the PEI Foundation.
[in] This The pointer to local data for the interface.
[in] Address The physical address of the access.
Returns:
A 64-bit value returned from the I/O space.

typedef UINT8(EFIAPI * EFI_PEI_CPU_IO_PPI_IO_READ8)(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN UINT64 Address)

8-bit I/O read operations.

Parameters:
[in] PeiServices An indirect pointer to the PEI Services Table published by the PEI Foundation.
[in] This The pointer to local data for the interface.
[in] Address The physical address of the access.
Returns:
An 8-bit value returned from the I/O space.

typedef VOID(EFIAPI * EFI_PEI_CPU_IO_PPI_IO_WRITE16)(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN UINT64 Address, IN UINT16 Data)

16-bit I/O write operations.

Parameters:
[in] PeiServices An indirect pointer to the PEI Services Table published by the PEI Foundation.
[in] This The pointer to local data for the interface.
[in] Address The physical address of the access.
[in] Data The data to write.

typedef VOID(EFIAPI * EFI_PEI_CPU_IO_PPI_IO_WRITE32)(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN UINT64 Address, IN UINT32 Data)

32-bit I/O write operations.

Parameters:
[in] PeiServices An indirect pointer to the PEI Services Table published by the PEI Foundation.
[in] This The pointer to local data for the interface.
[in] Address The physical address of the access.
[in] Data The data to write.

typedef VOID(EFIAPI * EFI_PEI_CPU_IO_PPI_IO_WRITE64)(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN UINT64 Address, IN UINT64 Data)

64-bit I/O write operations.

Parameters:
[in] PeiServices An indirect pointer to the PEI Services Table published by the PEI Foundation.
[in] This The pointer to local data for the interface.
[in] Address The physical address of the access.
[in] Data The data to write.

typedef VOID(EFIAPI * EFI_PEI_CPU_IO_PPI_IO_WRITE8)(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN UINT64 Address, IN UINT8 Data)

8-bit I/O write operations.

Parameters:
[in] PeiServices An indirect pointer to the PEI Services Table published by the PEI Foundation.
[in] This The pointer to local data for the interface.
[in] Address The physical address of the access.
[in] Data The data to write.

typedef UINT16(EFIAPI * EFI_PEI_CPU_IO_PPI_MEM_READ16)(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN UINT64 Address)

16-bit memory read operations.

Parameters:
[in] PeiServices An indirect pointer to the PEI Services Table published by the PEI Foundation.
[in] This The pointer to local data for the interface.
[in] Address The physical address of the access.
Returns:
A 16-bit value returned from the memory space.

typedef UINT32(EFIAPI * EFI_PEI_CPU_IO_PPI_MEM_READ32)(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN UINT64 Address)

32-bit memory read operations.

Parameters:
[in] PeiServices An indirect pointer to the PEI Services Table published by the PEI Foundation.
[in] This The pointer to local data for the interface.
[in] Address The physical address of the access.
Returns:
A 32-bit value returned from the memory space.

typedef UINT64(EFIAPI * EFI_PEI_CPU_IO_PPI_MEM_READ64)(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN UINT64 Address)

64-bit memory read operations.

Parameters:
[in] PeiServices An indirect pointer to the PEI Services Table published by the PEI Foundation.
[in] This The pointer to local data for the interface.
[in] Address The physical address of the access.
Returns:
A 64-bit value returned from the memory space.

typedef UINT8(EFIAPI * EFI_PEI_CPU_IO_PPI_MEM_READ8)(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN UINT64 Address)

8-bit memory read operations.

Parameters:
[in] PeiServices An indirect pointer to the PEI Services Table published by the PEI Foundation.
[in] This The pointer to local data for the interface.
[in] Address The physical address of the access.
Returns:
An 8-bit value returned from the memory space.

typedef VOID(EFIAPI * EFI_PEI_CPU_IO_PPI_MEM_WRITE16)(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN UINT64 Address, IN UINT16 Data)

16-bit memory write operations.

Parameters:
[in] PeiServices An indirect pointer to the PEI Services Table published by the PEI Foundation.
[in] This The pointer to local data for the interface.
[in] Address The physical address of the access.
[in] Data The data to write.

typedef VOID(EFIAPI * EFI_PEI_CPU_IO_PPI_MEM_WRITE32)(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN UINT64 Address, IN UINT32 Data)

32-bit memory write operations.

Parameters:
[in] PeiServices An indirect pointer to the PEI Services Table published by the PEI Foundation.
[in] This The pointer to local data for the interface.
[in] Address The physical address of the access.
[in] Data The data to write.

typedef VOID(EFIAPI * EFI_PEI_CPU_IO_PPI_MEM_WRITE64)(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN UINT64 Address, IN UINT64 Data)

64-bit memory write operations.

Parameters:
[in] PeiServices An indirect pointer to the PEI Services Table published by the PEI Foundation.
[in] This The pointer to local data for the interface.
[in] Address The physical address of the access.
[in] Data The data to write.

typedef VOID(EFIAPI * EFI_PEI_CPU_IO_PPI_MEM_WRITE8)(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN UINT64 Address, IN UINT8 Data)

8-bit memory write operations.

Parameters:
[in] PeiServices An indirect pointer to the PEI Services Table published by the PEI Foundation.
[in] This The pointer to local data for the interface.
[in] Address The physical address of the access.
[in] Data The data to write.


Enumeration Type Documentation

EFI_PEI_CPU_IO_PPI_WIDTH.

Enumerator:
EfiPeiCpuIoWidthUint8 
EfiPeiCpuIoWidthUint16 
EfiPeiCpuIoWidthUint32 
EfiPeiCpuIoWidthUint64 
EfiPeiCpuIoWidthFifoUint8 
EfiPeiCpuIoWidthFifoUint16 
EfiPeiCpuIoWidthFifoUint32 
EfiPeiCpuIoWidthFifoUint64 
EfiPeiCpuIoWidthFillUint8 
EfiPeiCpuIoWidthFillUint16 
EfiPeiCpuIoWidthFillUint32 
EfiPeiCpuIoWidthFillUint64 
EfiPeiCpuIoWidthMaximum 


Variable Documentation


Generated on Wed Sep 23 16:24:22 2015 for MdePkg[ALL] by  doxygen 1.5.7.1