]> git.proxmox.com Git - mirror_edk2.git/blame - MdePkg/Include/IndustryStandard/Hsti.h
MdePkg: Apply uncrustify changes
[mirror_edk2.git] / MdePkg / Include / IndustryStandard / Hsti.h
CommitLineData
aaedfe3c 1/** @file\r
faa02c7f 2 Support for HSTI 1.1a specification, defined at\r
aaedfe3c
JY
3 Microsoft Hardware Security Testability Specification.\r
4\r
9095d37b 5 Copyright (c) 2015 - 2018, Intel Corporation. All rights reserved.<BR>\r
9344f092 6 SPDX-License-Identifier: BSD-2-Clause-Patent\r
aaedfe3c
JY
7\r
8**/\r
9\r
10#ifndef __HSTI_H__\r
11#define __HSTI_H__\r
12\r
13#pragma pack(1)\r
14\r
15#define ADAPTER_INFO_PLATFORM_SECURITY_GUID \\r
16 {0x6be272c7, 0x1320, 0x4ccd, { 0x90, 0x17, 0xd4, 0x61, 0x2c, 0x01, 0x2b, 0x25 }}\r
17\r
2f88bd3a 18#define PLATFORM_SECURITY_VERSION_VNEXTCS 0x00000003\r
aaedfe3c 19\r
2f88bd3a
MK
20#define PLATFORM_SECURITY_ROLE_PLATFORM_REFERENCE 0x00000001 // IHV\r
21#define PLATFORM_SECURITY_ROLE_PLATFORM_IBV 0x00000002\r
22#define PLATFORM_SECURITY_ROLE_IMPLEMENTOR_OEM 0x00000003\r
23#define PLATFORM_SECURITY_ROLE_IMPLEMENTOR_ODM 0x00000004\r
aaedfe3c
JY
24\r
25typedef struct {\r
26 //\r
27 // Return PLATFORM_SECURITY_VERSION_VNEXTCS\r
28 //\r
2f88bd3a 29 UINT32 Version;\r
aaedfe3c
JY
30 //\r
31 // The role of the publisher of this interface. Reference platform designers\r
32 // such as IHVs and IBVs are expected to return PLATFORM_SECURITY_ROLE_PLATFORM_REFERENCE\r
33 // and PLATFORM_SECURITY_ROLE_PLATFORM_IBV respectively.\r
34 // If the test modules from the designers are unable to fully verify all\r
35 // security features, then the platform implementers, OEMs and ODMs, will\r
36 // need to publish this interface with a role of Implementer.\r
37 //\r
2f88bd3a 38 UINT32 Role;\r
aaedfe3c
JY
39 //\r
40 // Human readable vendor, model, & version of this implementation.\r
41 //\r
2f88bd3a 42 CHAR16 ImplementationID[256];\r
aaedfe3c
JY
43 //\r
44 // The size in bytes of the SecurityFeaturesRequired and SecurityFeaturesEnabled arrays.\r
45 // The arrays must be the same size.\r
46 //\r
2f88bd3a 47 UINT32 SecurityFeaturesSize;\r
aaedfe3c
JY
48 //\r
49 // IHV-defined bitfield corresponding to all security features which must be\r
50 // implemented to meet the security requirements defined by PLATFORM_SECURITY_VERSION Version.\r
51 //\r
2f88bd3a 52 // UINT8 SecurityFeaturesRequired[]; //Ignored for non-IHV\r
aaedfe3c
JY
53 //\r
54 // Publisher-defined bitfield corresponding to all security features which\r
55 // have implemented programmatic tests in this module.\r
56 //\r
2f88bd3a 57 // UINT8 SecurityFeaturesImplemented[];\r
aaedfe3c
JY
58 //\r
59 // Publisher-defined bitfield corresponding to all security features which\r
60 // have been verified implemented by this implementation.\r
61 //\r
2f88bd3a 62 // UINT8 SecurityFeaturesVerified[];\r
aaedfe3c
JY
63 //\r
64 // A Null-terminated string, one failure per line (CR/LF terminated), with a\r
65 // unique identifier that the OEM/ODM can use to locate the documentation\r
66 // which will describe the steps to remediate the failure - a URL to the\r
67 // documentation is recommended.\r
68 //\r
2f88bd3a 69 // CHAR16 ErrorString[];\r
aaedfe3c
JY
70} ADAPTER_INFO_PLATFORM_SECURITY;\r
71\r
72#pragma pack()\r
73\r
2f88bd3a 74extern EFI_GUID gAdapterInfoPlatformSecurityGuid;\r
aaedfe3c
JY
75\r
76#endif\r