40 Address =
VA_ARG (Marker, UINT64);
42 Buffer =
VA_ARG (Marker, UINT8 *);
68 Address =
VA_ARG (Marker, UINT64);
69 Data =
VA_ARG (Marker, UINT8 *);
70 DataMask =
VA_ARG (Marker, UINT8 *);
96 Address =
VA_ARG (Marker, UINT64);
98 Buffer =
VA_ARG (Marker, UINT8 *);
124 Address =
VA_ARG (Marker, UINT64);
125 Data =
VA_ARG (Marker, UINT8 *);
126 DataMask =
VA_ARG (Marker, UINT8 *);
152 Address =
VA_ARG (Marker, UINT64);
154 Buffer =
VA_ARG (Marker, UINT8 *);
180 Address =
VA_ARG (Marker, UINT64);
181 Data =
VA_ARG (Marker, UINT8 *);
182 DataMask =
VA_ARG (Marker, UINT8 *);
209 Segment =
VA_ARG (Marker, UINT16);
210 Address =
VA_ARG (Marker, UINT64);
212 Buffer =
VA_ARG (Marker, UINT8 *);
239 Segment =
VA_ARG (Marker, UINT16);
240 Address =
VA_ARG (Marker, UINT64);
241 Data =
VA_ARG (Marker, UINT8 *);
242 DataMask =
VA_ARG (Marker, UINT8 *);
270 SlaveAddress.SmbusDeviceAddress =
VA_ARG (Marker,
UINTN);
273 PecCheck =
VA_ARG (Marker, BOOLEAN);
274 SmBusAddress =
SMBUS_LIB_ADDRESS (SlaveAddress.SmbusDeviceAddress, Command, 0, PecCheck);
276 Buffer =
VA_ARG (Marker, VOID *);
298 Duration =
VA_ARG (Marker, UINT32);
349 Address =
VA_ARG (Marker, UINT64);
350 Data =
VA_ARG (Marker, VOID *);
351 DataMask =
VA_ARG (Marker, VOID *);
352 Delay =
VA_ARG (Marker, UINT64);
365 if (Remainder != 0) {
415 UINT32 InformationLength;
418 InformationLength =
VA_ARG (Marker, UINT32);
444 Address =
VA_ARG (Marker, UINT64);
445 Data =
VA_ARG (Marker, VOID *);
446 DataMask =
VA_ARG (Marker, VOID *);
447 Delay = (UINT64)
VA_ARG (Marker, UINT64);
474 Address =
VA_ARG (Marker, UINT64);
475 Data =
VA_ARG (Marker, VOID *);
476 DataMask =
VA_ARG (Marker, VOID *);
477 Delay = (UINT64)
VA_ARG (Marker, UINT64);
505 Segment =
VA_ARG (Marker, UINT16);
506 Address =
VA_ARG (Marker, UINT64);
507 Data =
VA_ARG (Marker, VOID *);
508 DataMask =
VA_ARG (Marker, VOID *);
509 Delay = (UINT64)
VA_ARG (Marker, UINT64);
556 case EFI_BOOT_SCRIPT_IO_WRITE_OPCODE:
562 case EFI_BOOT_SCRIPT_IO_READ_WRITE_OPCODE:
568 case EFI_BOOT_SCRIPT_MEM_WRITE_OPCODE:
574 case EFI_BOOT_SCRIPT_MEM_READ_WRITE_OPCODE:
580 case EFI_BOOT_SCRIPT_PCI_CONFIG_WRITE_OPCODE:
586 case EFI_BOOT_SCRIPT_PCI_CONFIG_READ_WRITE_OPCODE:
592 case EFI_BOOT_SCRIPT_SMBUS_EXECUTE_OPCODE:
598 case EFI_BOOT_SCRIPT_STALL_OPCODE:
605 case EFI_BOOT_SCRIPT_DISPATCH_OPCODE:
611 case EFI_BOOT_SCRIPT_DISPATCH_2_OPCODE:
617 case EFI_BOOT_SCRIPT_INFORMATION_OPCODE:
623 case EFI_BOOT_SCRIPT_MEM_POLL_OPCODE:
629 case EFI_BOOT_SCRIPT_PCI_CONFIG2_WRITE_OPCODE:
635 case EFI_BOOT_SCRIPT_PCI_CONFIG2_READ_WRITE_OPCODE:
641 case EFI_BOOT_SCRIPT_IO_POLL_OPCODE:
647 case EFI_BOOT_SCRIPT_PCI_CONFIG_POLL_OPCODE:
653 case EFI_BOOT_SCRIPT_PCI_CONFIG2_POLL_OPCODE:
660 Status = EFI_INVALID_PARAMETER;
699 IN BOOLEAN BeforeOrAfter,
700 IN OUT EFI_S3_BOOT_SCRIPT_POSITION *Position OPTIONAL,
712 case EFI_BOOT_SCRIPT_IO_WRITE_OPCODE:
718 case EFI_BOOT_SCRIPT_IO_READ_WRITE_OPCODE:
724 case EFI_BOOT_SCRIPT_MEM_WRITE_OPCODE:
730 case EFI_BOOT_SCRIPT_MEM_READ_WRITE_OPCODE:
736 case EFI_BOOT_SCRIPT_PCI_CONFIG_WRITE_OPCODE:
742 case EFI_BOOT_SCRIPT_PCI_CONFIG_READ_WRITE_OPCODE:
748 case EFI_BOOT_SCRIPT_SMBUS_EXECUTE_OPCODE:
754 case EFI_BOOT_SCRIPT_STALL_OPCODE:
761 case EFI_BOOT_SCRIPT_DISPATCH_OPCODE:
767 case EFI_BOOT_SCRIPT_DISPATCH_2_OPCODE:
773 case EFI_BOOT_SCRIPT_INFORMATION_OPCODE:
779 case EFI_BOOT_SCRIPT_MEM_POLL_OPCODE:
785 case EFI_BOOT_SCRIPT_PCI_CONFIG2_WRITE_OPCODE:
791 case EFI_BOOT_SCRIPT_PCI_CONFIG2_READ_WRITE_OPCODE:
797 case EFI_BOOT_SCRIPT_IO_POLL_OPCODE:
803 case EFI_BOOT_SCRIPT_PCI_CONFIG_POLL_OPCODE:
809 case EFI_BOOT_SCRIPT_PCI_CONFIG2_POLL_OPCODE:
816 Status = EFI_INVALID_PARAMETER;
820 if (!EFI_ERROR (Status)) {
858 IN BOOLEAN BeforeOrAfter,
859 IN BOOLEAN CreateIfNotFound,
860 IN OUT EFI_S3_BOOT_SCRIPT_POSITION *Position OPTIONAL,
864 return S3BootScriptLabel (BeforeOrAfter, CreateIfNotFound, (VOID **)Position, Label);
888 IN EFI_S3_BOOT_SCRIPT_POSITION Position1,
889 IN EFI_S3_BOOT_SCRIPT_POSITION Position2,
918 return EFI_UNSUPPORTED;
921 Status =
gBS->CreateEventEx (
926 &gEfiEndOfDxeEventGroupGuid,
931 return gBS->InstallProtocolInterface (
933 &gEfiS3SaveStateProtocolGuid,
VOID EFIAPI AcpiS3ContextSaveOnEndOfDxe(IN EFI_EVENT Event, IN VOID *Context)
UINT64 EFIAPI DivU64x32Remainder(IN UINT64 Dividend, IN UINT32 Divisor, OUT UINT32 *Remainder OPTIONAL)
RETURN_STATUS EFIAPI S3BootScriptSaveInformation(IN UINT32 InformationLength, IN VOID *Information)
RETURN_STATUS EFIAPI S3BootScriptSaveIoPoll(IN S3_BOOT_SCRIPT_LIB_WIDTH Width, IN UINT64 Address, IN VOID *Data, IN VOID *DataMask, IN UINT64 Delay)
RETURN_STATUS EFIAPI S3BootScriptSavePciCfg2ReadWrite(IN S3_BOOT_SCRIPT_LIB_WIDTH Width, IN UINT16 Segment, IN UINT64 Address, IN VOID *Data, IN VOID *DataMask)
RETURN_STATUS EFIAPI S3BootScriptSavePci2Poll(IN S3_BOOT_SCRIPT_LIB_WIDTH Width, IN UINT16 Segment, IN UINT64 Address, IN VOID *Data, IN VOID *DataMask, IN UINT64 Delay)
RETURN_STATUS EFIAPI S3BootScriptSaveDispatch2(IN VOID *EntryPoint, IN VOID *Context)
RETURN_STATUS EFIAPI S3BootScriptSaveIoReadWrite(IN S3_BOOT_SCRIPT_LIB_WIDTH Width, IN UINT64 Address, IN VOID *Data, IN VOID *DataMask)
RETURN_STATUS EFIAPI S3BootScriptSaveIoWrite(IN S3_BOOT_SCRIPT_LIB_WIDTH Width, IN UINT64 Address, IN UINTN Count, IN VOID *Buffer)
RETURN_STATUS EFIAPI S3BootScriptSavePciCfgWrite(IN S3_BOOT_SCRIPT_LIB_WIDTH Width, IN UINT64 Address, IN UINTN Count, IN VOID *Buffer)
RETURN_STATUS EFIAPI S3BootScriptCompare(IN UINT8 *Position1, IN UINT8 *Position2, OUT UINTN *RelativePosition)
RETURN_STATUS EFIAPI S3BootScriptSaveStall(IN UINTN Duration)
RETURN_STATUS EFIAPI S3BootScriptSaveSmbusExecute(IN UINTN SmBusAddress, IN EFI_SMBUS_OPERATION Operation, IN UINTN *Length, IN VOID *Buffer)
RETURN_STATUS EFIAPI S3BootScriptSaveMemPoll(IN S3_BOOT_SCRIPT_LIB_WIDTH Width, IN UINT64 Address, IN VOID *BitMask, IN VOID *BitValue, IN UINTN Duration, IN UINT64 LoopTimes)
RETURN_STATUS EFIAPI S3BootScriptSavePciCfg2Write(IN S3_BOOT_SCRIPT_LIB_WIDTH Width, IN UINT16 Segment, IN UINT64 Address, IN UINTN Count, IN VOID *Buffer)
RETURN_STATUS EFIAPI S3BootScriptSaveDispatch(IN VOID *EntryPoint)
RETURN_STATUS EFIAPI S3BootScriptMoveLastOpcode(IN BOOLEAN BeforeOrAfter, IN OUT VOID **Position OPTIONAL)
RETURN_STATUS EFIAPI S3BootScriptSavePciCfgReadWrite(IN S3_BOOT_SCRIPT_LIB_WIDTH Width, IN UINT64 Address, IN VOID *Data, IN VOID *DataMask)
RETURN_STATUS EFIAPI S3BootScriptSaveMemWrite(IN S3_BOOT_SCRIPT_LIB_WIDTH Width, IN UINT64 Address, IN UINTN Count, IN VOID *Buffer)
RETURN_STATUS EFIAPI S3BootScriptLabel(IN BOOLEAN BeforeOrAfter, IN BOOLEAN CreateIfNotFound, IN OUT VOID **Position OPTIONAL, IN CONST CHAR8 *Label)
RETURN_STATUS EFIAPI S3BootScriptSaveMemReadWrite(IN S3_BOOT_SCRIPT_LIB_WIDTH Width, IN UINT64 Address, IN VOID *Data, IN VOID *DataMask)
RETURN_STATUS EFIAPI S3BootScriptSavePciPoll(IN S3_BOOT_SCRIPT_LIB_WIDTH Width, IN UINT64 Address, IN VOID *Data, IN VOID *DataMask, IN UINT64 Delay)
#define VA_ARG(Marker, TYPE)
#define VA_START(Marker, Parameter)
#define ASSERT_EFI_ERROR(StatusParameter)
#define PcdGetBool(TokenName)
EFI_STATUS BootScriptWriteIoWrite(IN VA_LIST Marker)
EFI_STATUS EFIAPI BootScriptLabel(IN CONST EFI_S3_SAVE_STATE_PROTOCOL *This, IN BOOLEAN BeforeOrAfter, IN BOOLEAN CreateIfNotFound, IN OUT EFI_S3_BOOT_SCRIPT_POSITION *Position OPTIONAL, IN CONST CHAR8 *Label)
EFI_STATUS BootScriptWriteInformation(IN VA_LIST Marker)
EFI_STATUS BootScriptWritePciConfigPoll(IN VA_LIST Marker)
EFI_STATUS EFIAPI BootScriptWrite(IN CONST EFI_S3_SAVE_STATE_PROTOCOL *This, IN UINTN OpCode,...)
EFI_STATUS BootScriptWriteStall(IN VA_LIST Marker)
EFI_STATUS EFIAPI BootScriptInsert(IN CONST EFI_S3_SAVE_STATE_PROTOCOL *This, IN BOOLEAN BeforeOrAfter, IN OUT EFI_S3_BOOT_SCRIPT_POSITION *Position OPTIONAL, IN UINTN OpCode,...)
EFI_STATUS BootScriptWritePciCfgReadWrite(IN VA_LIST Marker)
EFI_STATUS BootScriptWriteDispatch2(IN VA_LIST Marker)
EFI_STATUS BootScriptWriteIoReadWrite(IN VA_LIST Marker)
EFI_STATUS BootScriptWriteMemReadWrite(IN VA_LIST Marker)
EFI_STATUS EFIAPI InitializeS3SaveState(IN EFI_HANDLE ImageHandle, IN EFI_SYSTEM_TABLE *SystemTable)
EFI_STATUS BootScriptWritePciCfgWrite(IN VA_LIST Marker)
EFI_STATUS BootScriptWriteDispatch(IN VA_LIST Marker)
EFI_STATUS BootScriptWritePciConfig2Poll(IN VA_LIST Marker)
EFI_STATUS BootScriptWriteMemWrite(IN VA_LIST Marker)
EFI_STATUS BootScriptWriteIoPoll(IN VA_LIST Marker)
EFI_STATUS BootScriptWriteMemPoll(IN VA_LIST Marker)
EFI_STATUS BootScriptWritePciCfg2ReadWrite(IN VA_LIST Marker)
EFI_STATUS EFIAPI BootScriptCompare(IN CONST EFI_S3_SAVE_STATE_PROTOCOL *This, IN EFI_S3_BOOT_SCRIPT_POSITION Position1, IN EFI_S3_BOOT_SCRIPT_POSITION Position2, OUT UINTN *RelativePosition)
EFI_STATUS BootScriptWriteSmbusExecute(IN VA_LIST Marker)
EFI_STATUS BootScriptWritePciCfg2Write(IN VA_LIST Marker)
UINTN EFI_SMBUS_DEVICE_COMMAND
enum _EFI_SMBUS_OPERATION EFI_SMBUS_OPERATION
#define SMBUS_LIB_ADDRESS(SlaveAddress, Command, Length, Pec)
UINT64 EFI_PHYSICAL_ADDRESS