https://bugzilla.tianocore.org/show_bug.cgi?id=1373 Replace BSD 2-Clause License with BSD+Patent License. This change is based on the following emails: https://lists.01.org/pipermail/edk2-devel/2019-February/036260.html https://lists.01.org/pipermail/edk2-devel/2018-October/030385.html RFCs with detailed process for the license change: V3: https://lists.01.org/pipermail/edk2-devel/2019-March/038116.html V2: https://lists.01.org/pipermail/edk2-devel/2019-March/037669.html V1: https://lists.01.org/pipermail/edk2-devel/2019-March/037500.html Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com> Reviewed-by: Jiewen Yao <Jiewen.yao@intel.com> Reviewed-by: Jian J Wang <jian.j.wang@intel.com>
113 lines
1.9 KiB
C
113 lines
1.9 KiB
C
/** @file
|
|
Callbacks required by the HII of the Opal UEFI Driver to help display
|
|
Opal device information.
|
|
|
|
Copyright (c) 2016 - 2019, Intel Corporation. All rights reserved.<BR>
|
|
SPDX-License-Identifier: BSD-2-Clause-Patent
|
|
|
|
**/
|
|
|
|
#include "OpalHii.h"
|
|
|
|
/**
|
|
Get the driver image handle.
|
|
|
|
@retval the driver image handle.
|
|
|
|
**/
|
|
EFI_HANDLE
|
|
HiiGetDriverImageHandleCB(
|
|
VOID
|
|
)
|
|
{
|
|
return gImageHandle;
|
|
}
|
|
|
|
/**
|
|
Returns the opaque pointer to a physical disk context.
|
|
|
|
@param DiskIndex Input the disk index.
|
|
|
|
@retval The device pointer.
|
|
|
|
**/
|
|
VOID *
|
|
HiiGetDiskContextCB(
|
|
UINT8 DiskIndex
|
|
)
|
|
{
|
|
OPAL_DRIVER_DEVICE* Dev;
|
|
UINT8 CurrentDisk;
|
|
|
|
Dev = OpalDriverGetDeviceList();
|
|
CurrentDisk = 0;
|
|
|
|
if (DiskIndex >= GetDeviceCount()) {
|
|
return NULL;
|
|
}
|
|
|
|
while (Dev != NULL) {
|
|
if (CurrentDisk == DiskIndex) {
|
|
return Dev;
|
|
} else {
|
|
Dev = Dev->Next;
|
|
CurrentDisk++;
|
|
}
|
|
}
|
|
|
|
return NULL;
|
|
}
|
|
|
|
/**
|
|
Returns the opaque pointer to a physical disk context.
|
|
|
|
@param DiskIndex Input the disk index.
|
|
|
|
@retval The device pointer.
|
|
|
|
**/
|
|
OPAL_DISK*
|
|
HiiGetOpalDiskCB(
|
|
UINT8 DiskIndex
|
|
)
|
|
{
|
|
VOID *Ctx;
|
|
OPAL_DRIVER_DEVICE *Tmp;
|
|
|
|
Ctx = HiiGetDiskContextCB (DiskIndex);
|
|
|
|
if (Ctx == NULL) {
|
|
return NULL;
|
|
}
|
|
|
|
Tmp = (OPAL_DRIVER_DEVICE*) Ctx;
|
|
|
|
return &Tmp->OpalDisk;
|
|
}
|
|
|
|
/**
|
|
Returns the disk name.
|
|
|
|
@param DiskIndex Input the disk index.
|
|
|
|
@retval Returns the disk name.
|
|
|
|
**/
|
|
CHAR8*
|
|
HiiDiskGetNameCB(
|
|
UINT8 DiskIndex
|
|
)
|
|
{
|
|
OPAL_DRIVER_DEVICE* Ctx;
|
|
|
|
Ctx = (OPAL_DRIVER_DEVICE*) HiiGetDiskContextCB (DiskIndex);
|
|
|
|
if (Ctx != NULL) {
|
|
if (Ctx->NameZ == NULL) {
|
|
OpalDriverGetDriverDeviceName (Ctx);
|
|
}
|
|
return Ctx->NameZ;
|
|
}
|
|
return NULL;
|
|
}
|