]> git.proxmox.com Git - mirror_edk2.git/blob - SecurityPkg/Tcg/MemoryOverwriteControl/TcgMor.h
SecurityPkg: Clean up source files
[mirror_edk2.git] / SecurityPkg / Tcg / MemoryOverwriteControl / TcgMor.h
1 /** @file
2 The header file for TcgMor.
3
4 Copyright (c) 2009 - 2018, Intel Corporation. All rights reserved.<BR>
5 This program and the accompanying materials
6 are licensed and made available under the terms and conditions of the BSD License
7 which accompanies this distribution. The full text of the license may be found at
8 http://opensource.org/licenses/bsd-license.php
9
10 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
11 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
12
13 **/
14
15 #ifndef __TCG_MOR_H__
16 #define __TCG_MOR_H__
17
18 #include <PiDxe.h>
19
20 #include <Guid/MemoryOverwriteControl.h>
21
22 #include <Library/UefiDriverEntryPoint.h>
23 #include <Library/UefiBootServicesTableLib.h>
24 #include <Library/UefiRuntimeServicesTableLib.h>
25 #include <Library/DebugLib.h>
26 #include <Library/UefiLib.h>
27 #include <Library/MemoryAllocationLib.h>
28
29 #include <Protocol/StorageSecurityCommand.h>
30 #include <Protocol/BlockIo.h>
31
32 //
33 // Supported Security Protocols List Description.
34 // Refer to ATA8-ACS Spec 7.57.6.2 Table 69 or SPC4 7.7.1.3 Table 511.
35 //
36 typedef struct {
37 UINT8 Reserved1[6];
38 UINT8 SupportedSecurityListLength[2];
39 UINT8 SupportedSecurityProtocol[1];
40 } SUPPORTED_SECURITY_PROTOCOLS_PARAMETER_DATA;
41
42 #define SECURITY_PROTOCOL_TCG 0x02
43 #define SECURITY_PROTOCOL_IEEE1667 0xEE
44
45 #define ROUNDUP512(x) (((x) % 512 == 0) ? (x) : ((x) / 512 + 1) * 512)
46
47 #endif
48