Newer
Older
AMI-Aptio-BIOS-Reversed / AmiCompatibilityPkg / CmosManager / CmosManagerDxe / CmosDxe.h
@Ajax Dong Ajax Dong 2 days ago 5 KB Restructure the repo
/** @file
  CmosDxe.h -- Header for CmosDxe

Copyright (c) HR650X BIOS Decompilation Project
**/

#ifndef __CMOSDXE_H__
#define __CMOSDXE_H__

#include "../uefi_headers/Uefi.h"

//
// Function Prototypes
//

EFI_STATUS
EFIAPI
Rename Table(
  VOID
);

EFI_STATUS
EFIAPI
name        Renamed to(
  VOID
);

/// memcpy with overlap handling
EFI_STATUS
EFIAPI
InternalMemCopyMem(
  VOID
);

/// DXE entry point
EFI_STATUS
EFIAPI
ModuleEntryPoint(
  VOID
);

/// driver initialization
EFI_STATUS
EFIAPI
CmosManagerDriverEntry(
  VOID
);

/// install protocol & register callbacks
EFI_STATUS
EFIAPI
CmosManagerInstallProtocol(
  VOID
);

/// debug/trace output via DebugLib
EFI_STATUS
EFIAPI
CmosDebugPrint(
  VOID
);

/// parse CMOS config from FV/hob data
EFI_STATUS
EFIAPI
CmosParseConfigTables(
  VOID
);

/// clear CMOS power-loss status bits
EFI_STATUS
EFIAPI
CmosClearPowerLossStatus(
  VOID
);

/// return protocol context pointer
EFI_STATUS
EFIAPI
CmosGetProtocolContext(
  VOID
);

/// test all flags in mask: (flags & mask) == mask
EFI_STATUS
EFIAPI
CmosCheckAllFlags(
  VOID
);

/// test any flag in mask: (flags & mask) != 0
EFI_STATUS
EFIAPI
CmosCheckAnyFlags(
  VOID
);

/// set state bits + write to CMOS status reg
EFI_STATUS
EFIAPI
CmosSetStateFlags(
  VOID
);

/// wrapper: set flags (calls CmosSetStateFlags)
EFI_STATUS
EFIAPI
CmosSetFlag(
  VOID
);

/// clear state bits + update CMOS status reg
EFI_STATUS
EFIAPI
CmosClearFlag(
  VOID
);

/// allocate/reload shadow buffer from CMOS HW
EFI_STATUS
EFIAPI
CmosReadShadowBuffer(
  VOID
);

/// write 32-bit value to extended CMOS bank
EFI_STATUS
EFIAPI
CmosWriteVariable(
  VOID
);

/// read 32-bit value from extended CMOS bank
EFI_STATUS
EFIAPI
CmosReadVariable(
  VOID
);

/// install CmosManager protocol on handle
EFI_STATUS
EFIAPI
CmosInstallProtocol(
  VOID
);

/// fill protocol vtable with function pointers
EFI_STATUS
EFIAPI
CmosInitializeVtable(
  VOID
);

/// allocate + populate protocol instance
EFI_STATUS
EFIAPI
CmosCreateProtocolInstance(
  VOID
);

/// convert bank number to CMOS address
EFI_STATUS
EFIAPI
CmosAddressLookup(
  VOID
);

/// raw CMOS port read/write (config table based)
EFI_STATUS
EFIAPI
CmosPortIoAccess(
  VOID
);

/// write CMOS register with checksum update
EFI_STATUS
EFIAPI
CmosRegisterWrite(
  VOID
);

/// read/write CMOS through shadow buffer
EFI_STATUS
EFIAPI
CmosBufferReadWrite(
  VOID
);

/// route register access to buffer or direct IO
EFI_STATUS
EFIAPI
CmosRegisterDispatch(
  VOID
);

/// table-based bitfield register access
EFI_STATUS
EFIAPI
CmosTableReadWrite(
  VOID
);

/// read CMOS register by address
EFI_STATUS
EFIAPI
CmosReadRegister(
  VOID
);

/// read RTC status info + bank flags
EFI_STATUS
EFIAPI
CmosGetStatus(
  VOID
);

/// read current CMOS checksum from HW
EFI_STATUS
EFIAPI
CmosReadChecksum(
  VOID
);

/// write checksum to CMOS HW
EFI_STATUS
EFIAPI
CmosWriteChecksum(
  VOID
);

/// update NMI status reg 0x0E bits
EFI_STATUS
EFIAPI
CmosUpdateNmiStatus(
  VOID
);

/// update checksum after register change
EFI_STATUS
EFIAPI
CmosUpdateChecksumDelta(
  VOID
);

/// verify CMOS checksum
EFI_STATUS
EFIAPI
CmosVerifyChecksum(
  VOID
);

/// write CMOS register by address
EFI_STATUS
EFIAPI
CmosWriteRegister(
  VOID
);

/// flush buffer or load optimal defaults
EFI_STATUS
EFIAPI
CmosFlushOrLoadDefaults(
  VOID
);

/// read BCD-encoded RTC register
EFI_STATUS
EFIAPI
CmosRtcBcdRead(
  VOID
);

/// write BCD-encoded RTC register
EFI_STATUS
EFIAPI
CmosRtcBcdWrite(
  VOID
);

/// write RTC time to CMOS
EFI_STATUS
EFIAPI
CmosWriteTime(
  VOID
);

/// read RTC time from CMOS
EFI_STATUS
EFIAPI
CmosReadTime(
  VOID
);

/// get DebugLib protocol interface
EFI_STATUS
EFIAPI
CmosGetDebugInterface(
  VOID
);

/// debug print with status code
EFI_STATUS
EFIAPI
CmosDebugPrintWithStatus(
  VOID
);

/// UEFI assert handler
EFI_STATUS
EFIAPI
CmosAssert(
  VOID
);

/// locate UEFI config table by GUID
EFI_STATUS
EFIAPI
CmsGetSystemConfigurationTable(
  VOID
);

/// get HOB list pointer
EFI_STATUS
EFIAPI
CmosGetHobList(
  VOID
);

/// find config table by GUID
EFI_STATUS
EFIAPI
CmosFindConfigTable(
  VOID
);

/// get DebugPort protocol
EFI_STATUS
EFIAPI
CmosGetDebugProtocol(
  VOID
);

/// initialize debug output protocol
EFI_STATUS
EFIAPI
CmosInitDebugOutput(
  VOID
);

/// debug printf via DebugLib
EFI_STATUS
EFIAPI
CmosDebugOutput(
  VOID
);

/// compare GUIDs (memcmp)
EFI_STATUS
EFIAPI
CmosGuidCompare(
  VOID
);

/// convert UINT64 to string with base
EFI_STATUS
EFIAPI
CmosUint64ToString(
  VOID
);

/// parse ASCII string to integer
EFI_STATUS
EFIAPI
CmosAsciiStrToInt(
  VOID
);

/// convert EFI_STATUS to string
EFI_STATUS
EFIAPI
CmosStatusToString(
  VOID
);

/// format string (vsnprintf)
EFI_STATUS
EFIAPI
CmosAsciiSPrint(
  VOID
);

/// va_list wrapper for AsciiSPrint
EFI_STATUS
EFIAPI
CmosAsciiSPrintVa(
  VOID
);

/// extended CMOS access via ports 0x70/0x71(NMI)
EFI_STATUS
EFIAPI
CmosExtPortIoAccess(
  VOID
);

/// stub: always returns 0
EFI_STATUS
EFIAPI
CmosReturnFalse(
  VOID
);

/// stub: always returns 1
EFI_STATUS
EFIAPI
CmosReturnTrue(
  VOID
);

/// bank-switched CMOS via ports 0x72/0x73
EFI_STATUS
EFIAPI
CmosBankPortIoAccess(
  VOID
);

/// read CMOS debug level from 0x74/0x75
EFI_STATUS
EFIAPI
CmosGetDebugLevel(
  VOID
);

/// read unaligned UINT16 *
EFI_STATUS
EFIAPI
CmosReadUnaligned16(
  VOID
);

/// read unaligned UINT64 *
EFI_STATUS
EFIAPI
CmosReadUnaligned64(
  VOID
);

/// memcpy wrapper with bounds checks
EFI_STATUS
EFIAPI
CmosCopyMem(
  VOID
);

/// compare GUID structs
EFI_STATUS
EFIAPI
CmosCompareGuid(
  VOID
);

/// get PCD protocol pointer
EFI_STATUS
EFIAPI
CmosGetPcdProtocol(
  VOID
);

/// memset wrapper
EFI_STATUS
EFIAPI
CmosSetMem(
  VOID
);

/// memmove wrapper
EFI_STATUS
EFIAPI
CmosCopyMemOverlap(
  VOID
);

#endif /* __CMOSDXE_H__ */