Data Structures | |
struct | EFI_SMM_IO_ACCESS |
struct | _EFI_SMM_CPU_IO_INTERFACE |
Defines | |
#define | EFI_SMM_CPU_IO_GUID |
Typedefs | |
typedef struct _EFI_SMM_CPU_IO_INTERFACE | EFI_SMM_CPU_IO_INTERFACE |
typedef EFI_STATUS(EFIAPI * | EFI_SMM_CPU_IO )(IN EFI_SMM_CPU_IO_INTERFACE *This, IN EFI_SMM_IO_WIDTH Width, IN UINT64 Address, IN UINTN Count, IN OUT VOID *Buffer) |
Variables | |
EFI_GUID | gEfiSmmCpuIoGuid |
This protocol provides CPU I/O and memory access within SMM.
Copyright (c) 2009 - 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.
#define EFI_SMM_CPU_IO_GUID |
Value:
{ \ 0x5f439a0b, 0x45d8, 0x4682, {0xa4, 0xf4, 0xf0, 0x57, 0x6b, 0x51, 0x34, 0x41} \ }
typedef EFI_STATUS(EFIAPI * EFI_SMM_CPU_IO)(IN EFI_SMM_CPU_IO_INTERFACE *This, IN EFI_SMM_IO_WIDTH Width, IN UINT64 Address, IN UINTN Count, IN OUT VOID *Buffer) |
Provides the basic memory and I/O interfaces used to abstract 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.
[in] | This | The EFI_SMM_CPU_IO_INTERFACE instance. |
[in] | Width | Signifies the width of the I/O operations. |
[in] | Address | The base address of the I/O operations. The caller is responsible for aligning the Address, if required. |
[in] | Count | The number of I/O operations to perform. |
[in,out] | Buffer | For read operations, the destination buffer to store the results. For write operations, the source buffer from which to write data. |
EFI_SUCCESS | The data was read from or written to the device. | |
EFI_UNSUPPORTED | The Address is not valid for this system. | |
EFI_INVALID_PARAMETER | Width or Count, or both, were invalid. | |
EFI_OUT_OF_RESOURCES | The request could not be completed due to a lack of resources. |
typedef struct _EFI_SMM_CPU_IO_INTERFACE EFI_SMM_CPU_IO_INTERFACE |
EFI_GUID gEfiSmmCpuIoGuid |