XenevaOS
Loading...
Searching...
No Matches
Classes | Macros | Typedefs | Enumerations
TcgStorageOpal.h File Reference
#include <IndustryStandard/TcgStorageCore.h>
Include dependency graph for TcgStorageOpal.h:

Go to the source code of this file.

Classes

struct  _OPAL_GEOMETRY_REPORTING_FEATURE
 
struct  _OPAL_SINGLE_USER_MODE_FEATURE
 
struct  _OPAL_DATASTORE_TABLE_FEATURE
 
struct  _OPAL_SSCV1_FEATURE_DESCRIPTOR
 
struct  _OPAL_SSCV2_FEATURE_DESCRIPTOR
 
struct  _OPAL_SSCLITE_FEATURE_DESCRIPTOR
 
struct  _PYRITE_SSC_FEATURE_DESCRIPTOR
 
struct  _PYRITE_SSCV2_FEATURE_DESCRIPTOR
 
struct  _DATA_REMOVAL_FEATURE_DESCRIPTOR
 
union  OPAL_LEVEL0_FEATURE_DESCRIPTOR
 

Macros

#define OPAL_UID_ADMIN_SP   TCG_TO_UID(0x00, 0x00, 0x02, 0x05, 0x00, 0x00, 0x00, 0x01)
 
#define OPAL_UID_ADMIN_SP_C_PIN_MSID   TCG_TO_UID(0x00, 0x00, 0x00, 0x0B, 0x00, 0x00, 0x84, 0x02)
 
#define OPAL_UID_ADMIN_SP_C_PIN_SID   TCG_TO_UID(0x00, 0x00, 0x00, 0x0B, 0x00, 0x00, 0x00, 0x01)
 
#define OPAL_UID_LOCKING_SP   TCG_TO_UID(0x00, 0x00, 0x02, 0x05, 0x00, 0x00, 0x00, 0x02)
 
#define OPAL_ADMIN_SP_ANYBODY_AUTHORITY   TCG_TO_UID(0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x01)
 
#define OPAL_ADMIN_SP_ADMINS_AUTHORITY   TCG_TO_UID(0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x02)
 
#define OPAL_ADMIN_SP_MAKERS_AUTHORITY   TCG_TO_UID(0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x03)
 
#define OPAL_ADMIN_SP_SID_AUTHORITY   TCG_TO_UID(0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x06)
 
#define OPAL_ADMIN_SP_ADMIN1_AUTHORITY   TCG_TO_UID(0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x02, 0x01)
 
#define OPAL_ADMIN_SP_PSID_AUTHORITY   TCG_TO_UID(0x00, 0x00, 0x00, 0x09, 0x00, 0x01, 0xFF, 0x01)
 
#define OPAL_ADMIN_SP_ACTIVATE_METHOD   TCG_TO_UID(0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x02, 0x03)
 
#define OPAL_ADMIN_SP_REVERT_METHOD   TCG_TO_UID(0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x02, 0x02)
 
#define OPAL_UID_ADMIN_SP_DATA_REMOVAL_MECHANISM   TCG_TO_UID(0x00, 0x00, 0x11, 0x01, 0x00, 0x00, 0x00, 0x01)
 
#define OPAL_LOCKING_SP_ANYBODY_AUTHORITY   TCG_TO_UID(0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x01)
 
#define OPAL_LOCKING_SP_ADMINS_AUTHORITY   TCG_TO_UID(0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x02)
 
#define OPAL_LOCKING_SP_ADMIN1_AUTHORITY   TCG_TO_UID(0x00, 0x00, 0x00, 0x09, 0x00, 0x01, 0x00, 0x01)
 
#define OPAL_LOCKING_SP_USERS_AUTHORITY   TCG_TO_UID(0x00, 0x00, 0x00, 0x09, 0x00, 0x03, 0x00, 0x00)
 
#define OPAL_LOCKING_SP_USER1_AUTHORITY   TCG_TO_UID(0x00, 0x00, 0x00, 0x09, 0x00, 0x03, 0x00, 0x01)
 
#define OPAL_LOCKING_SP_REVERTSP_METHOD   TCG_TO_UID(0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x11)
 
#define OPAL_LOCKING_SP_C_PIN_ADMIN1   TCG_TO_UID( 0x00, 0x00, 0x00, 0x0B, 0x00, 0x01, 0x00, 0x01 )
 
#define OPAL_LOCKING_SP_C_PIN_USER1   TCG_TO_UID( 0x00, 0x00, 0x00, 0x0B, 0x00, 0x03, 0x00, 0x01 )
 
#define OPAL_LOCKING_SP_LOCKING_GLOBALRANGE   TCG_TO_UID( 0x00, 0x00, 0x08, 0x02, 0x00, 0x00, 0x00, 0x01 )
 
#define OPAL_LOCKING_SP_LOCKING_RANGE1   TCG_TO_UID( 0x00, 0x00, 0x08, 0x02, 0x00, 0x03, 0x00, 0x01 )
 
#define OPAL_LOCKING_SP_ACE_LOCKING_GLOBALRANGE_GET_ALL   TCG_TO_UID( 0x00, 0x00, 0x00, 0x08, 0x00, 0x03, 0xD0, 0x00 )
 
#define OPAL_LOCKING_SP_ACE_LOCKING_GLOBALRANGE_SET_RDLOCKED   TCG_TO_UID( 0x00, 0x00, 0x00, 0x08, 0x00, 0x03, 0xE0, 0x00 )
 
#define OPAL_LOCKING_SP_ACE_LOCKING_GLOBALRANGE_SET_WRLOCKED   TCG_TO_UID( 0x00, 0x00, 0x00, 0x08, 0x00, 0x03, 0xE8, 0x00 )
 
#define OPAL_LOCKING_SP_ACE_K_AES_256_GLOBALRANGE_GENKEY   TCG_TO_UID( 0x00, 0x00, 0x00, 0x08, 0x00, 0x03, 0xB8, 0x00 )
 
#define OPAL_LOCKING_SP_ACE_K_AES_128_GLOBALRANGE_GENKEY   TCG_TO_UID( 0x00, 0x00, 0x00, 0x08, 0x00, 0x03, 0xB0, 0x00 )
 
#define OPAL_LOCKING_SP_LOCKING_INFO   TCG_TO_UID( 0x00, 0x00, 0x08, 0x01, 0x00, 0x00, 0x00, 0x01 )
 
#define OPAL_LOCKING_SP_LOCKINGINFO_ALIGNMENTREQUIRED_COL   0x7
 
#define OPAL_LOCKING_SP_LOCKINGINFO_LOGICALBLOCKSIZE_COL   0x8
 
#define OPAL_LOCKING_SP_LOCKINGINFO_ALIGNMENTGRANULARITY_COL   0x9
 
#define OPAL_LOCKING_SP_LOCKINGINFO_LOWESTALIGNEDLBA_COL   0xA
 
#define OPAL_LOCKING_SP_K_AES_256_GLOBALRANGE_KEY   TCG_TO_UID( 0x00, 0x00, 0x08, 0x06, 0x00, 0x00, 0x00, 0x01 )
 
#define OPAL_LOCKING_SP_K_AES_128_GLOBALRANGE_KEY   TCG_TO_UID( 0x00, 0x00, 0x08, 0x05, 0x00, 0x00, 0x00, 0x01 )
 
#define OPAL_MIN_MAX_COM_PACKET_SIZE   2048
 
#define OPAL_MIN_MAX_REPONSE_COM_PACKET_SIZE   2048
 
#define OPAL_MIN_MAX_PACKET_SIZE   2028
 
#define OPAL_MIN_MAX_IND_TOKEN_SIZE   1992
 
#define OPAL_MIN_MAX_PACKETS   1
 
#define OPAL_MIN_MAX_SUBPACKETS   1
 
#define OPAL_MIN_MAX_METHODS   1
 
#define OPAL_MIN_MAX_SESSIONS   1
 
#define OPAL_MIN_MAX_AUTHENTICATIONS   2
 
#define OPAL_MIN_MAX_TRANSACTION_LIMIT   1
 
#define OPAL_ADMIN_SP_PIN_COL   3
 
#define OPAL_LOCKING_SP_C_PIN_TRYLIMIT_COL   5
 
#define OPAL_RANDOM_METHOD_MAX_COUNT_SIZE   32
 
#define OPAL_ADMIN_SP_ACTIVE_DATA_REMOVAL_MECHANISM_COL   1
 

Typedefs

typedef struct _OPAL_GEOMETRY_REPORTING_FEATURE OPAL_GEOMETRY_REPORTING_FEATURE
 
typedef struct _OPAL_SINGLE_USER_MODE_FEATURE OPAL_SINGLE_USER_MODE_FEATURE
 
typedef struct _OPAL_DATASTORE_TABLE_FEATURE OPAL_DATASTORE_TABLE_FEATURE
 
typedef struct _OPAL_SSCV1_FEATURE_DESCRIPTOR OPAL_SSCV1_FEATURE_DESCRIPTOR
 
typedef struct _OPAL_SSCV2_FEATURE_DESCRIPTOR OPAL_SSCV2_FEATURE_DESCRIPTOR
 
typedef struct _OPAL_SSCLITE_FEATURE_DESCRIPTOR OPAL_SSCLITE_FEATURE_DESCRIPTOR
 
typedef struct _PYRITE_SSC_FEATURE_DESCRIPTOR PYRITE_SSC_FEATURE_DESCRIPTOR
 
typedef struct _PYRITE_SSCV2_FEATURE_DESCRIPTOR PYRITE_SSCV2_FEATURE_DESCRIPTOR
 
typedef struct _DATA_REMOVAL_FEATURE_DESCRIPTOR DATA_REMOVAL_FEATURE_DESCRIPTOR
 

Enumerations

enum  SUPPORTED_DATA_REMOVAL_MECHANISM {
  OverwriteDataErase = 0 , BlockErase , CryptoErase , Unmap ,
  ResetWritePointers , VendorSpecificErase , ResearvedMechanism
}
 

Detailed Description

Opal Specification defined values and structures.

(TCG Storage Architecture Core Specification, Version 2.01, Revision 1.00, https://trustedcomputinggroup.org/tcg-storage-architecture-core-specification/

Storage Work Group Storage Security Subsystem Class: Pyrite, Version 1.00 Final, Revision 1.00, https://trustedcomputinggroup.org/tcg-storage-security-subsystem-class-pyrite/

Storage Work Group Storage Security Subsystem Class: Opal, Version 2.01 Final, Revision 1.00, https://trustedcomputinggroup.org/storage-work-group-storage-security-subsystem-class-opal/

TCG Storage Security Subsystem Class: Opalite Version 1.00 Revision 1.00, https://trustedcomputinggroup.org/tcg-storage-security-subsystem-class-opalite/)

Check http://trustedcomputinggroup.org for latest specification updates.

Copyright (c) 2016 - 2018, 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.

Macro Definition Documentation

◆ OPAL_ADMIN_SP_ACTIVATE_METHOD

#define OPAL_ADMIN_SP_ACTIVATE_METHOD   TCG_TO_UID(0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x02, 0x03)

◆ OPAL_ADMIN_SP_ACTIVE_DATA_REMOVAL_MECHANISM_COL

#define OPAL_ADMIN_SP_ACTIVE_DATA_REMOVAL_MECHANISM_COL   1

◆ OPAL_ADMIN_SP_ADMIN1_AUTHORITY

#define OPAL_ADMIN_SP_ADMIN1_AUTHORITY   TCG_TO_UID(0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x02, 0x01)

◆ OPAL_ADMIN_SP_ADMINS_AUTHORITY

#define OPAL_ADMIN_SP_ADMINS_AUTHORITY   TCG_TO_UID(0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x02)

◆ OPAL_ADMIN_SP_ANYBODY_AUTHORITY

#define OPAL_ADMIN_SP_ANYBODY_AUTHORITY   TCG_TO_UID(0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x01)

◆ OPAL_ADMIN_SP_MAKERS_AUTHORITY

#define OPAL_ADMIN_SP_MAKERS_AUTHORITY   TCG_TO_UID(0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x03)

◆ OPAL_ADMIN_SP_PIN_COL

#define OPAL_ADMIN_SP_PIN_COL   3

◆ OPAL_ADMIN_SP_PSID_AUTHORITY

#define OPAL_ADMIN_SP_PSID_AUTHORITY   TCG_TO_UID(0x00, 0x00, 0x00, 0x09, 0x00, 0x01, 0xFF, 0x01)

◆ OPAL_ADMIN_SP_REVERT_METHOD

#define OPAL_ADMIN_SP_REVERT_METHOD   TCG_TO_UID(0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x02, 0x02)

◆ OPAL_ADMIN_SP_SID_AUTHORITY

#define OPAL_ADMIN_SP_SID_AUTHORITY   TCG_TO_UID(0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x06)

◆ OPAL_LOCKING_SP_ACE_K_AES_128_GLOBALRANGE_GENKEY

#define OPAL_LOCKING_SP_ACE_K_AES_128_GLOBALRANGE_GENKEY   TCG_TO_UID( 0x00, 0x00, 0x00, 0x08, 0x00, 0x03, 0xB0, 0x00 )

◆ OPAL_LOCKING_SP_ACE_K_AES_256_GLOBALRANGE_GENKEY

#define OPAL_LOCKING_SP_ACE_K_AES_256_GLOBALRANGE_GENKEY   TCG_TO_UID( 0x00, 0x00, 0x00, 0x08, 0x00, 0x03, 0xB8, 0x00 )

◆ OPAL_LOCKING_SP_ACE_LOCKING_GLOBALRANGE_GET_ALL

#define OPAL_LOCKING_SP_ACE_LOCKING_GLOBALRANGE_GET_ALL   TCG_TO_UID( 0x00, 0x00, 0x00, 0x08, 0x00, 0x03, 0xD0, 0x00 )

◆ OPAL_LOCKING_SP_ACE_LOCKING_GLOBALRANGE_SET_RDLOCKED

#define OPAL_LOCKING_SP_ACE_LOCKING_GLOBALRANGE_SET_RDLOCKED   TCG_TO_UID( 0x00, 0x00, 0x00, 0x08, 0x00, 0x03, 0xE0, 0x00 )

◆ OPAL_LOCKING_SP_ACE_LOCKING_GLOBALRANGE_SET_WRLOCKED

#define OPAL_LOCKING_SP_ACE_LOCKING_GLOBALRANGE_SET_WRLOCKED   TCG_TO_UID( 0x00, 0x00, 0x00, 0x08, 0x00, 0x03, 0xE8, 0x00 )

◆ OPAL_LOCKING_SP_ADMIN1_AUTHORITY

#define OPAL_LOCKING_SP_ADMIN1_AUTHORITY   TCG_TO_UID(0x00, 0x00, 0x00, 0x09, 0x00, 0x01, 0x00, 0x01)

◆ OPAL_LOCKING_SP_ADMINS_AUTHORITY

#define OPAL_LOCKING_SP_ADMINS_AUTHORITY   TCG_TO_UID(0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x02)

◆ OPAL_LOCKING_SP_ANYBODY_AUTHORITY

#define OPAL_LOCKING_SP_ANYBODY_AUTHORITY   TCG_TO_UID(0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x01)

◆ OPAL_LOCKING_SP_C_PIN_ADMIN1

#define OPAL_LOCKING_SP_C_PIN_ADMIN1   TCG_TO_UID( 0x00, 0x00, 0x00, 0x0B, 0x00, 0x01, 0x00, 0x01 )

◆ OPAL_LOCKING_SP_C_PIN_TRYLIMIT_COL

#define OPAL_LOCKING_SP_C_PIN_TRYLIMIT_COL   5

◆ OPAL_LOCKING_SP_C_PIN_USER1

#define OPAL_LOCKING_SP_C_PIN_USER1   TCG_TO_UID( 0x00, 0x00, 0x00, 0x0B, 0x00, 0x03, 0x00, 0x01 )

◆ OPAL_LOCKING_SP_K_AES_128_GLOBALRANGE_KEY

#define OPAL_LOCKING_SP_K_AES_128_GLOBALRANGE_KEY   TCG_TO_UID( 0x00, 0x00, 0x08, 0x05, 0x00, 0x00, 0x00, 0x01 )

◆ OPAL_LOCKING_SP_K_AES_256_GLOBALRANGE_KEY

#define OPAL_LOCKING_SP_K_AES_256_GLOBALRANGE_KEY   TCG_TO_UID( 0x00, 0x00, 0x08, 0x06, 0x00, 0x00, 0x00, 0x01 )

◆ OPAL_LOCKING_SP_LOCKING_GLOBALRANGE

#define OPAL_LOCKING_SP_LOCKING_GLOBALRANGE   TCG_TO_UID( 0x00, 0x00, 0x08, 0x02, 0x00, 0x00, 0x00, 0x01 )

◆ OPAL_LOCKING_SP_LOCKING_INFO

#define OPAL_LOCKING_SP_LOCKING_INFO   TCG_TO_UID( 0x00, 0x00, 0x08, 0x01, 0x00, 0x00, 0x00, 0x01 )

◆ OPAL_LOCKING_SP_LOCKING_RANGE1

#define OPAL_LOCKING_SP_LOCKING_RANGE1   TCG_TO_UID( 0x00, 0x00, 0x08, 0x02, 0x00, 0x03, 0x00, 0x01 )

◆ OPAL_LOCKING_SP_LOCKINGINFO_ALIGNMENTGRANULARITY_COL

#define OPAL_LOCKING_SP_LOCKINGINFO_ALIGNMENTGRANULARITY_COL   0x9

◆ OPAL_LOCKING_SP_LOCKINGINFO_ALIGNMENTREQUIRED_COL

#define OPAL_LOCKING_SP_LOCKINGINFO_ALIGNMENTREQUIRED_COL   0x7

◆ OPAL_LOCKING_SP_LOCKINGINFO_LOGICALBLOCKSIZE_COL

#define OPAL_LOCKING_SP_LOCKINGINFO_LOGICALBLOCKSIZE_COL   0x8

◆ OPAL_LOCKING_SP_LOCKINGINFO_LOWESTALIGNEDLBA_COL

#define OPAL_LOCKING_SP_LOCKINGINFO_LOWESTALIGNEDLBA_COL   0xA

◆ OPAL_LOCKING_SP_REVERTSP_METHOD

#define OPAL_LOCKING_SP_REVERTSP_METHOD   TCG_TO_UID(0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x11)

◆ OPAL_LOCKING_SP_USER1_AUTHORITY

#define OPAL_LOCKING_SP_USER1_AUTHORITY   TCG_TO_UID(0x00, 0x00, 0x00, 0x09, 0x00, 0x03, 0x00, 0x01)

◆ OPAL_LOCKING_SP_USERS_AUTHORITY

#define OPAL_LOCKING_SP_USERS_AUTHORITY   TCG_TO_UID(0x00, 0x00, 0x00, 0x09, 0x00, 0x03, 0x00, 0x00)

◆ OPAL_MIN_MAX_AUTHENTICATIONS

#define OPAL_MIN_MAX_AUTHENTICATIONS   2

◆ OPAL_MIN_MAX_COM_PACKET_SIZE

#define OPAL_MIN_MAX_COM_PACKET_SIZE   2048

◆ OPAL_MIN_MAX_IND_TOKEN_SIZE

#define OPAL_MIN_MAX_IND_TOKEN_SIZE   1992

◆ OPAL_MIN_MAX_METHODS

#define OPAL_MIN_MAX_METHODS   1

◆ OPAL_MIN_MAX_PACKET_SIZE

#define OPAL_MIN_MAX_PACKET_SIZE   2028

◆ OPAL_MIN_MAX_PACKETS

#define OPAL_MIN_MAX_PACKETS   1

◆ OPAL_MIN_MAX_REPONSE_COM_PACKET_SIZE

#define OPAL_MIN_MAX_REPONSE_COM_PACKET_SIZE   2048

◆ OPAL_MIN_MAX_SESSIONS

#define OPAL_MIN_MAX_SESSIONS   1

◆ OPAL_MIN_MAX_SUBPACKETS

#define OPAL_MIN_MAX_SUBPACKETS   1

◆ OPAL_MIN_MAX_TRANSACTION_LIMIT

#define OPAL_MIN_MAX_TRANSACTION_LIMIT   1

◆ OPAL_RANDOM_METHOD_MAX_COUNT_SIZE

#define OPAL_RANDOM_METHOD_MAX_COUNT_SIZE   32

◆ OPAL_UID_ADMIN_SP

#define OPAL_UID_ADMIN_SP   TCG_TO_UID(0x00, 0x00, 0x02, 0x05, 0x00, 0x00, 0x00, 0x01)

◆ OPAL_UID_ADMIN_SP_C_PIN_MSID

#define OPAL_UID_ADMIN_SP_C_PIN_MSID   TCG_TO_UID(0x00, 0x00, 0x00, 0x0B, 0x00, 0x00, 0x84, 0x02)

◆ OPAL_UID_ADMIN_SP_C_PIN_SID

#define OPAL_UID_ADMIN_SP_C_PIN_SID   TCG_TO_UID(0x00, 0x00, 0x00, 0x0B, 0x00, 0x00, 0x00, 0x01)

◆ OPAL_UID_ADMIN_SP_DATA_REMOVAL_MECHANISM

#define OPAL_UID_ADMIN_SP_DATA_REMOVAL_MECHANISM   TCG_TO_UID(0x00, 0x00, 0x11, 0x01, 0x00, 0x00, 0x00, 0x01)

◆ OPAL_UID_LOCKING_SP

#define OPAL_UID_LOCKING_SP   TCG_TO_UID(0x00, 0x00, 0x02, 0x05, 0x00, 0x00, 0x00, 0x02)

Typedef Documentation

◆ DATA_REMOVAL_FEATURE_DESCRIPTOR

◆ OPAL_DATASTORE_TABLE_FEATURE

◆ OPAL_GEOMETRY_REPORTING_FEATURE

◆ OPAL_SINGLE_USER_MODE_FEATURE

◆ OPAL_SSCLITE_FEATURE_DESCRIPTOR

◆ OPAL_SSCV1_FEATURE_DESCRIPTOR

◆ OPAL_SSCV2_FEATURE_DESCRIPTOR

◆ PYRITE_SSC_FEATURE_DESCRIPTOR

◆ PYRITE_SSCV2_FEATURE_DESCRIPTOR

Enumeration Type Documentation

◆ SUPPORTED_DATA_REMOVAL_MECHANISM

Enumerator
OverwriteDataErase 
BlockErase 
CryptoErase 
Unmap 
ResetWritePointers 
VendorSpecificErase 
ResearvedMechanism