mirror of https://github.com/acidanthera/audk.git
1306 lines
22 KiB
C
1306 lines
22 KiB
C
/*++
|
|
|
|
Copyright (c) 2004, 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.
|
|
|
|
Module Name:
|
|
|
|
EsalRuntimeLib.h
|
|
|
|
Abstract:
|
|
|
|
SAL Driver Lib
|
|
|
|
Revision History
|
|
|
|
--*/
|
|
|
|
#ifndef _ESAL_RUNTIME_LIB_H_
|
|
#define _ESAL_RUNTIME_LIB_H_
|
|
|
|
#include "SalApi.h"
|
|
#include "EfiFirmwareVolumeHeader.h"
|
|
|
|
#include EFI_PROTOCOL_DEFINITION (ExtendedSalBootService)
|
|
#include EFI_PROTOCOL_DEFINITION (ExtendedSalGuid)
|
|
#include EFI_PROTOCOL_DEFINITION (FirmwareVolumeBlock)
|
|
|
|
VOID
|
|
EsalRuntimeLibVirtualNotify (
|
|
VOID
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
None
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
EFI_STATUS
|
|
EsalInitializeRuntimeDriverLib (
|
|
IN EFI_HANDLE ImageHandle,
|
|
IN EFI_SYSTEM_TABLE *SystemTable
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
ImageHandle - Image Handle
|
|
SystemTable - the System Table
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
SAL_RETURN_REGS
|
|
CallEsalService (
|
|
IN EFI_GUID *ClassGuid,
|
|
IN UINT64 FunctionId,
|
|
IN UINT64 Arg2,
|
|
IN UINT64 Arg3,
|
|
IN UINT64 Arg4,
|
|
IN UINT64 Arg5,
|
|
IN UINT64 Arg6,
|
|
IN UINT64 Arg7,
|
|
IN UINT64 Arg8
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
ClassGuid - TODO: add argument description
|
|
FunctionId - TODO: add argument description
|
|
Arg2 - TODO: add argument description
|
|
Arg3 - TODO: add argument description
|
|
Arg4 - TODO: add argument description
|
|
Arg5 - TODO: add argument description
|
|
Arg6 - TODO: add argument description
|
|
Arg7 - TODO: add argument description
|
|
Arg8 - TODO: add argument description
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
//
|
|
// Assembly Functions
|
|
//
|
|
|
|
SAL_RETURN_REGS
|
|
EsalGetEntryPoint (
|
|
VOID
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
None
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
SAL_RETURN_REGS
|
|
EsalSetPhysicalEntryPoint (
|
|
IN UINT64 EntryPoint,
|
|
IN UINT64 Gp
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
EntryPoint - TODO: add argument description
|
|
Gp - TODO: add argument description
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
SAL_RETURN_REGS
|
|
EsalSetVirtualEntryPoint (
|
|
IN UINT64 EntryPoint,
|
|
IN UINT64 Gp
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
EntryPoint - TODO: add argument description
|
|
Gp - TODO: add argument description
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
SAL_RETURN_REGS
|
|
EsalSetPhysicalModuleGlobal (
|
|
IN VOID *Global
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
Global - TODO: add argument description
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
SAL_RETURN_REGS
|
|
EsalSetVirtualModuleGlobal (
|
|
IN VOID *Global
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
Global - TODO: add argument description
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
SAL_RETURN_REGS
|
|
EsalGetModuleGlobal (
|
|
VOID
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
None
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
SAL_RETURN_REGS
|
|
GetIrrData (
|
|
VOID
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
None
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
SAL_RETURN_REGS
|
|
GetPsrData (
|
|
VOID
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
None
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
SAL_RETURN_REGS
|
|
GetProcIdData (
|
|
VOID
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
None
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
VOID
|
|
SwitchCpuStack (
|
|
IN UINT64 NewBsp,
|
|
IN UINT64 OldBsp
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
NewBsp - TODO: add argument description
|
|
OldBsp - TODO: add argument description
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
//
|
|
// PAL PROC Class
|
|
//
|
|
|
|
SAL_RETURN_REGS
|
|
SalPalProc (
|
|
IN UINT64 Arg1,
|
|
IN UINT64 Arg2,
|
|
IN UINT64 Arg3,
|
|
IN UINT64 Arg4
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
Arg1 - TODO: add argument description
|
|
Arg2 - TODO: add argument description
|
|
Arg3 - TODO: add argument description
|
|
Arg4 - TODO: add argument description
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
SAL_RETURN_REGS
|
|
SalRegisterNewPalEntry (
|
|
IN BOOLEAN PhysicalPalAddress,
|
|
IN EFI_PHYSICAL_ADDRESS NewPalAddress
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
PhysicalPalAddress - TODO: add argument description
|
|
NewPalAddress - TODO: add argument description
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
SAL_RETURN_REGS
|
|
SalGetPalEntryPointer (
|
|
IN BOOLEAN PhysicalPalAddress
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
PhysicalPalAddress - TODO: add argument description
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
//
|
|
// SAL BASE Class
|
|
//
|
|
|
|
SAL_RETURN_REGS
|
|
SalProcSetVectors (
|
|
IN UINT64 SalVectorType,
|
|
IN UINT64 PhyAddr1,
|
|
IN UINT64 Gp1,
|
|
IN UINT64 LengthCs1,
|
|
IN UINT64 PhyAddr2,
|
|
IN UINT64 Gp2,
|
|
IN UINT64 LengthCs2
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
SalVectorType - TODO: add argument description
|
|
PhyAddr1 - TODO: add argument description
|
|
Gp1 - TODO: add argument description
|
|
LengthCs1 - TODO: add argument description
|
|
PhyAddr2 - TODO: add argument description
|
|
Gp2 - TODO: add argument description
|
|
LengthCs2 - TODO: add argument description
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
SAL_RETURN_REGS
|
|
SalProcMcRendez (
|
|
VOID
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
None
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
SAL_RETURN_REGS
|
|
SalProcMcSetParams (
|
|
IN UINT64 ParamType,
|
|
IN UINT64 IntOrMem,
|
|
IN UINT64 IntOrMemVal,
|
|
IN UINT64 Timeout,
|
|
IN UINT64 McaOpt
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
ParamType - TODO: add argument description
|
|
IntOrMem - TODO: add argument description
|
|
IntOrMemVal - TODO: add argument description
|
|
Timeout - TODO: add argument description
|
|
McaOpt - TODO: add argument description
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
SAL_RETURN_REGS
|
|
EsalProcGetVectors (
|
|
IN UINT64 VectorType
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
VectorType - TODO: add argument description
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
SAL_RETURN_REGS
|
|
EsalProcMcGetParams (
|
|
IN UINT64 ParamInfoType
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
ParamInfoType - TODO: add argument description
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
SAL_RETURN_REGS
|
|
EsalProcMcGetMcParams (
|
|
VOID
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
None
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
SAL_RETURN_REGS
|
|
EsalProcGetMcCheckinFlags (
|
|
IN UINT64 ProcessorUnit
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
ProcessorUnit - TODO: add argument description
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
//
|
|
// Sal Base Class enums
|
|
//
|
|
|
|
typedef enum {
|
|
McaVector,
|
|
BspInitVector,
|
|
BootRendezVector,
|
|
ApInitVector
|
|
} ESAL_GET_VECTOR_TYPE;
|
|
|
|
SAL_RETURN_REGS
|
|
SalInitializeThreshold (
|
|
IN VOID *ThresholdStruct,
|
|
IN UINT64 Count,
|
|
IN UINT64 Duration
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
ThresholdStruct - TODO: add argument description
|
|
Count - TODO: add argument description
|
|
Duration - TODO: add argument description
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
SAL_RETURN_REGS
|
|
SalBumpThresholdCount (
|
|
IN VOID *ThresholdStruct,
|
|
IN UINT64 Count,
|
|
IN UINT64 Duration
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
ThresholdStruct - TODO: add argument description
|
|
Count - TODO: add argument description
|
|
Duration - TODO: add argument description
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
SAL_RETURN_REGS
|
|
SalGetThresholdCount (
|
|
IN VOID *ThresholdStruct,
|
|
IN UINT64 Count,
|
|
IN UINT64 Duration
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
ThresholdStruct - TODO: add argument description
|
|
Count - TODO: add argument description
|
|
Duration - TODO: add argument description
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
//
|
|
// Common Lib Function
|
|
//
|
|
|
|
EFI_STATUS
|
|
RegisterEsalFunction (
|
|
IN UINT64 FunctionId,
|
|
IN EFI_GUID *ClassGuid,
|
|
IN SAL_INTERNAL_EXTENDED_SAL_PROC Function,
|
|
IN VOID *ModuleGlobal
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
FunctionId - TODO: add argument description
|
|
ClassGuid - TODO: add argument description
|
|
Function - TODO: add argument description
|
|
ModuleGlobal - TODO: add argument description
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
EFI_STATUS
|
|
RegisterEsalClass (
|
|
IN EFI_GUID *ClassGuid,
|
|
IN VOID *ModuleGlobal,
|
|
...
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
ClassGuid - TODO: add argument description
|
|
ModuleGlobal - TODO: add argument description
|
|
... - TODO: add argument description
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
//
|
|
// MP Class Functions
|
|
//
|
|
SAL_RETURN_REGS
|
|
LibMpAddCpuData (
|
|
IN UINT64 CpuGlobalId,
|
|
IN BOOLEAN Enabled,
|
|
IN UINT64 PalCompatability
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
CpuGlobalId - TODO: add argument description
|
|
Enabled - TODO: add argument description
|
|
PalCompatability - TODO: add argument description
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
SAL_RETURN_REGS
|
|
LibMpRemoveCpuData (
|
|
IN UINT64 CpuGlobalId
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
CpuGlobalId - TODO: add argument description
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
SAL_RETURN_REGS
|
|
LibMpModifyCpuData (
|
|
IN UINT64 CpuGlobalId,
|
|
IN BOOLEAN Enabled,
|
|
IN UINT64 PalCompatability
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
CpuGlobalId - TODO: add argument description
|
|
Enabled - TODO: add argument description
|
|
PalCompatability - TODO: add argument description
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
SAL_RETURN_REGS
|
|
LibMpGetCpuDataByID (
|
|
IN UINT64 CpuGlobalId,
|
|
IN BOOLEAN IndexByEnabledCpu
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
CpuGlobalId - TODO: add argument description
|
|
IndexByEnabledCpu - TODO: add argument description
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
SAL_RETURN_REGS
|
|
LibMpGetCpuDataByIndex (
|
|
IN UINT64 Index,
|
|
IN BOOLEAN IndexByEnabledCpu
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
Index - TODO: add argument description
|
|
IndexByEnabledCpu - TODO: add argument description
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
SAL_RETURN_REGS
|
|
LibMpSendIpi (
|
|
IN UINT64 ProcessorNumber,
|
|
IN UINT64 VectorNumber,
|
|
IN EFI_DELIVERY_MODE DeliveryMode,
|
|
IN BOOLEAN IRFlag
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
ProcessorNumber - TODO: add argument description
|
|
VectorNumber - TODO: add argument description
|
|
DeliveryMode - TODO: add argument description
|
|
IRFlag - TODO: add argument description
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
SAL_RETURN_REGS
|
|
LibMpCurrentProcessor (
|
|
IN BOOLEAN IndexByEnabledCpu
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
IndexByEnabledCpu - TODO: add argument description
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
SAL_RETURN_REGS
|
|
LibGetNumProcessors (
|
|
VOID
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
None
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
SAL_RETURN_REGS
|
|
LibMpSaveMinStatePointer (
|
|
IN UINT64 CpuGlobalId,
|
|
IN EFI_PHYSICAL_ADDRESS MinStatePointer
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
CpuGlobalId - TODO: add argument description
|
|
MinStatePointer - TODO: add argument description
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
SAL_RETURN_REGS
|
|
LibMpRestoreMinStatePointer (
|
|
IN UINT64 CpuGlobalId
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
CpuGlobalId - TODO: add argument description
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
//
|
|
// MCA Class Functions
|
|
//
|
|
|
|
EFI_STATUS
|
|
LibMcaGetStateInfo (
|
|
IN UINT64 CpuId,
|
|
OUT EFI_PHYSICAL_ADDRESS *StateBufferPointer,
|
|
OUT UINT64 *RequiredStateBufferSize
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
CpuId - TODO: add argument description
|
|
StateBufferPointer - TODO: add argument description
|
|
RequiredStateBufferSize - TODO: add argument description
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
EFI_STATUS
|
|
LibMcaRegisterCpu (
|
|
IN UINT64 CpuId,
|
|
IN EFI_PHYSICAL_ADDRESS StateBufferAddress
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
CpuId - TODO: add argument description
|
|
StateBufferAddress - TODO: add argument description
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
//
|
|
// FVB Variables Class
|
|
//
|
|
EFI_STATUS
|
|
EsalReadBlock (
|
|
IN UINTN Instance,
|
|
IN EFI_LBA Lba,
|
|
IN UINTN Offset,
|
|
IN OUT UINTN *NumBytes,
|
|
IN UINT8 *Buffer
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
Instance - TODO: add argument description
|
|
Lba - TODO: add argument description
|
|
Offset - TODO: add argument description
|
|
NumBytes - TODO: add argument description
|
|
Buffer - TODO: add argument description
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
EFI_STATUS
|
|
EsalWriteBlock (
|
|
IN UINTN Instance,
|
|
IN EFI_LBA Lba,
|
|
IN UINTN Offset,
|
|
IN OUT UINTN *NumBytes,
|
|
IN UINT8 *Buffer
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
Instance - TODO: add argument description
|
|
Lba - TODO: add argument description
|
|
Offset - TODO: add argument description
|
|
NumBytes - TODO: add argument description
|
|
Buffer - TODO: add argument description
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
EFI_STATUS
|
|
EsalEraseBlock (
|
|
IN UINTN Instance,
|
|
IN UINTN Lba
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
Instance - TODO: add argument description
|
|
Lba - TODO: add argument description
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
EFI_STATUS
|
|
EsalGetVolumeAttributes (
|
|
IN UINTN Instance,
|
|
OUT EFI_FVB_ATTRIBUTES *Attributes
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
Instance - TODO: add argument description
|
|
Attributes - TODO: add argument description
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
EFI_STATUS
|
|
EsalSetVolumeAttributes (
|
|
IN UINTN Instance,
|
|
IN EFI_FVB_ATTRIBUTES Attributes
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
Instance - TODO: add argument description
|
|
Attributes - TODO: add argument description
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
EFI_STATUS
|
|
EsalGetPhysicalAddress (
|
|
IN UINTN Instance,
|
|
OUT EFI_PHYSICAL_ADDRESS *Address
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
Instance - TODO: add argument description
|
|
Address - TODO: add argument description
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
EFI_STATUS
|
|
EsalGetBlockSize (
|
|
IN UINTN Instance,
|
|
IN EFI_LBA Lba,
|
|
OUT UINTN *BlockSize,
|
|
OUT UINTN *NumOfBlocks
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
Instance - TODO: add argument description
|
|
Lba - TODO: add argument description
|
|
BlockSize - TODO: add argument description
|
|
NumOfBlocks - TODO: add argument description
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
//
|
|
// SAL ELOG Functions
|
|
//
|
|
EFI_STATUS
|
|
LibSalGetStateInfo (
|
|
IN UINT64 McaType,
|
|
IN UINT8 *McaBuffer,
|
|
OUT UINTN *Size
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
McaType - TODO: add argument description
|
|
McaBuffer - TODO: add argument description
|
|
Size - TODO: add argument description
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
EFI_STATUS
|
|
LibSalGetStateInfoSize (
|
|
IN UINT64 McaType,
|
|
OUT UINTN *Size
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
McaType - TODO: add argument description
|
|
Size - TODO: add argument description
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
EFI_STATUS
|
|
LibSalClearStateInfo (
|
|
IN UINT64 McaType
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
McaType - TODO: add argument description
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
EFI_STATUS
|
|
LibEsalGetStateBuffer (
|
|
IN UINT64 McaType,
|
|
OUT UINT8 **McaBuffer,
|
|
OUT UINTN *Index
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
McaType - TODO: add argument description
|
|
McaBuffer - TODO: add argument description
|
|
Index - TODO: add argument description
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
EFI_STATUS
|
|
LibEsalSaveStateBuffer (
|
|
IN UINT64 McaType
|
|
)
|
|
/*++
|
|
|
|
Routine Description:
|
|
|
|
TODO: Add function description
|
|
|
|
Arguments:
|
|
|
|
McaType - TODO: add argument description
|
|
|
|
Returns:
|
|
|
|
TODO: add return values
|
|
|
|
--*/
|
|
;
|
|
|
|
#endif
|