diff options
author | raywu <raywu0301@gmail.com> | 2018-06-15 00:00:50 +0800 |
---|---|---|
committer | raywu <raywu0301@gmail.com> | 2018-06-15 00:00:50 +0800 |
commit | b7c51c9cf4864df6aabb99a1ae843becd577237c (patch) | |
tree | eebe9b0d0ca03062955223097e57da84dd618b9a /EDK/Foundation/Protocol/VirtualMemoryAccess | |
download | zprj-master.tar.xz |
Diffstat (limited to 'EDK/Foundation/Protocol/VirtualMemoryAccess')
-rw-r--r-- | EDK/Foundation/Protocol/VirtualMemoryAccess/VirtualMemoryAccess.c | 27 | ||||
-rw-r--r-- | EDK/Foundation/Protocol/VirtualMemoryAccess/VirtualMemoryAccess.h | 64 |
2 files changed, 91 insertions, 0 deletions
diff --git a/EDK/Foundation/Protocol/VirtualMemoryAccess/VirtualMemoryAccess.c b/EDK/Foundation/Protocol/VirtualMemoryAccess/VirtualMemoryAccess.c new file mode 100644 index 0000000..ea59d88 --- /dev/null +++ b/EDK/Foundation/Protocol/VirtualMemoryAccess/VirtualMemoryAccess.c @@ -0,0 +1,27 @@ +/*++ + +Copyright (c) 2004, 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 +which 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. + +Module Name: + + VirtualMemoryAccess.c + +Abstract: + + +--*/ + +#include "Tiano.h" +#include EFI_PROTOCOL_DEFINITION (VirtualMemoryAccess) + +EFI_GUID gEfiVirtualMemoryAccessProtocolGuid = EFI_VIRTUAL_MEMORY_ACCESS_PROTOCOL_GUID; + +EFI_GUID_STRING + (&gEfiVirtualMemoryAccessProtocolGuid, "Virtual Memory Access Protocol", "Tiano Virtual Memory Access Protocol"); diff --git a/EDK/Foundation/Protocol/VirtualMemoryAccess/VirtualMemoryAccess.h b/EDK/Foundation/Protocol/VirtualMemoryAccess/VirtualMemoryAccess.h new file mode 100644 index 0000000..95c017d --- /dev/null +++ b/EDK/Foundation/Protocol/VirtualMemoryAccess/VirtualMemoryAccess.h @@ -0,0 +1,64 @@ +/*++ + +Copyright (c) 2004, 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 +which 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. + +Module Name: + + VirtualmemoryAccess.h + +Abstract: + + +--*/ + +#ifndef _VIRTUAL_MEMORY_ACCESS_H_ +#define _VIRTUAL_MEMORY_ACCESS_H_ + +#define EFI_VIRTUAL_MEMORY_ACCESS_PROTOCOL_GUID \ + {0x745d377a, 0xb988, 0x47b2, 0xb1, 0x8f, 0xbb, 0xc8, 0xd, 0xc5, 0x66, 0x98} + + +EFI_FORWARD_DECLARATION (EFI_VIRTUAL_MEMORY_ACCESS_PROTOCOL); + +typedef +EFI_STATUS +(EFIAPI *EFI_VIRTUAL_MEMORY_ACCESS_MAP) ( + IN EFI_VIRTUAL_MEMORY_ACCESS_PROTOCOL *This, + IN EFI_PHYSICAL_ADDRESS MappingAddress, + IN UINTN NumberOfBytes, + IN EFI_PHYSICAL_ADDRESS MappedAddress +); + +typedef +EFI_STATUS +(EFIAPI *EFI_VIRTUAL_MEMORY_ACCESS_UNMAP) ( + IN EFI_VIRTUAL_MEMORY_ACCESS_PROTOCOL *This, + IN EFI_PHYSICAL_ADDRESS MappedAddress, + IN UINTN PageSizeInByte +); + +typedef +EFI_STATUS +(EFIAPI *EFI_VIRTUAL_MEMORY_ACCESS_GET_PAGE_SIZE) ( + IN EFI_VIRTUAL_MEMORY_ACCESS_PROTOCOL *This, + IN UINTN *PageSizeInByte +); + + +typedef struct _EFI_VIRTUAL_MEMORY_ACCESS_PROTOCOL { + EFI_VIRTUAL_MEMORY_ACCESS_GET_PAGE_SIZE GetPageSize; + EFI_VIRTUAL_MEMORY_ACCESS_MAP Map; + EFI_VIRTUAL_MEMORY_ACCESS_UNMAP UnMap; +} EFI_VIRTUAL_MEMORY_ACCESS_PROTOCOL; + +extern EFI_GUID gEfiVirtualMemoryAccessProtocolGuid; + +#endif + |