mirror of https://github.com/acidanthera/audk.git
68 lines
2.1 KiB
C
68 lines
2.1 KiB
C
|
/** @file
|
||
|
Opal Password common header file.
|
||
|
|
||
|
Copyright (c) 2018, Intel Corporation. All rights reserved.<BR>
|
||
|
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.
|
||
|
|
||
|
**/
|
||
|
|
||
|
#ifndef _OPAL_PASSWORD_COMMON_H_
|
||
|
#define _OPAL_PASSWORD_COMMON_H_
|
||
|
|
||
|
#define OPAL_MAX_PASSWORD_SIZE 32
|
||
|
|
||
|
#define OPAL_DEVICE_TYPE_UNKNOWN 0x0
|
||
|
#define OPAL_DEVICE_TYPE_ATA 0x1
|
||
|
#define OPAL_DEVICE_TYPE_NVME 0x2
|
||
|
|
||
|
typedef struct {
|
||
|
UINT16 Segment;
|
||
|
UINT8 Bus;
|
||
|
UINT8 Device;
|
||
|
UINT8 Function;
|
||
|
UINT8 Reserved;
|
||
|
} OPAL_PCI_DEVICE;
|
||
|
|
||
|
typedef struct {
|
||
|
UINT16 Length;
|
||
|
OPAL_PCI_DEVICE Device;
|
||
|
UINT8 PasswordLength;
|
||
|
UINT8 Password[OPAL_MAX_PASSWORD_SIZE];
|
||
|
UINT16 OpalBaseComId;
|
||
|
UINT32 BarAddr;
|
||
|
} OPAL_DEVICE_COMMON;
|
||
|
|
||
|
#define OPAL_DEVICE_ATA_GUID { 0xcb934fe1, 0xb8cd, 0x46b1, { 0xa0, 0x58, 0xdd, 0xcb, 0x7, 0xb7, 0xb4, 0x17 } }
|
||
|
|
||
|
typedef struct {
|
||
|
UINT16 Length;
|
||
|
OPAL_PCI_DEVICE Device;
|
||
|
UINT8 PasswordLength;
|
||
|
UINT8 Password[OPAL_MAX_PASSWORD_SIZE];
|
||
|
UINT16 OpalBaseComId;
|
||
|
UINT32 BarAddr;
|
||
|
UINT16 Port;
|
||
|
UINT16 PortMultiplierPort;
|
||
|
} OPAL_DEVICE_ATA;
|
||
|
|
||
|
#define OPAL_DEVICE_NVME_GUID { 0xde116925, 0xaf7f, 0x42d9, { 0x83, 0xc0, 0x7e, 0xd6, 0x26, 0x59, 0x0, 0xfb } }
|
||
|
|
||
|
typedef struct {
|
||
|
UINT16 Length;
|
||
|
OPAL_PCI_DEVICE Device;
|
||
|
UINT8 PasswordLength;
|
||
|
UINT8 Password[OPAL_MAX_PASSWORD_SIZE];
|
||
|
UINT16 OpalBaseComId;
|
||
|
UINT32 BarAddr;
|
||
|
UINT32 NvmeNamespaceId;
|
||
|
OPAL_PCI_DEVICE PciBridgeNode[0];
|
||
|
} OPAL_DEVICE_NVME;
|
||
|
|
||
|
#endif // _OPAL_PASSWORD_COMMON_H_
|