X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=IntelFrameworkPkg%2FInclude%2FProtocol%2FSmmCpuIo.h;fp=IntelFrameworkPkg%2FInclude%2FProtocol%2FSmmCpuIo.h;h=0000000000000000000000000000000000000000;hp=d3dfe7ca1a92ed1fa2be0d25d37da3a5cd0fc626;hb=87fc0601fa9a98d5f86a81fc20d2cc8ef936e064;hpb=aa7fc1c11c3d57d82842dbede50d064639671a98 diff --git a/IntelFrameworkPkg/Include/Protocol/SmmCpuIo.h b/IntelFrameworkPkg/Include/Protocol/SmmCpuIo.h deleted file mode 100644 index d3dfe7ca1a..0000000000 --- a/IntelFrameworkPkg/Include/Protocol/SmmCpuIo.h +++ /dev/null @@ -1,82 +0,0 @@ -/** @file - SMM CPU I/O protocol as defined in the Intel Framework specification. - - This protocol provides CPU I/O and memory access within SMM. - -Copyright (c) 2009 - 2018, Intel Corporation. All rights reserved.
-SPDX-License-Identifier: BSD-2-Clause-Patent - -**/ - -#ifndef _SMM_CPU_IO_H_ -#define _SMM_CPU_IO_H_ - -#include - -#define EFI_SMM_CPU_IO_GUID \ - { \ - 0x5f439a0b, 0x45d8, 0x4682, {0xa4, 0xf4, 0xf0, 0x57, 0x6b, 0x51, 0x34, 0x41} \ - } - -typedef struct _EFI_SMM_CPU_IO_INTERFACE EFI_SMM_CPU_IO_INTERFACE; - -/** - 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. - - @param[in] This The EFI_SMM_CPU_IO_INTERFACE instance. - @param[in] Width Signifies the width of the I/O operations. - @param[in] Address The base address of the I/O operations. The caller is - responsible for aligning the Address, if required. - @param[in] Count The number of I/O operations to perform. - @param[in,out] Buffer For read operations, the destination buffer to store - the results. For write operations, the source buffer - from which to write data. - - @retval EFI_SUCCESS The data was read from or written to the device. - @retval EFI_UNSUPPORTED The Address is not valid for this system. - @retval EFI_INVALID_PARAMETER Width or Count, or both, were invalid. - @retval EFI_OUT_OF_RESOURCES The request could not be completed due to a lack - of resources. -**/ -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 - ); - -typedef struct { - /// - /// This service provides the various modalities of memory and I/O read. - /// - EFI_SMM_CPU_IO Read; - /// - /// This service provides the various modalities of memory and I/O write. - /// - EFI_SMM_CPU_IO Write; -} EFI_SMM_IO_ACCESS; - -/// -/// SMM CPU I/O Protocol provides CPU I/O and memory access within SMM. -/// -struct _EFI_SMM_CPU_IO_INTERFACE { - /// - /// Allows reads and writes to memory-mapped I/O space. - /// - EFI_SMM_IO_ACCESS Mem; - /// - /// Allows reads and writes to I/O space. - /// - EFI_SMM_IO_ACCESS Io; -}; - -extern EFI_GUID gEfiSmmCpuIoGuid; - -#endif