4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync This file declares the SMM CPU Save State protocol, which provides the processor
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync save-state information for IA-32 and Itanium processors.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncCopyright (c) 2010, Intel Corporation. All rights reserved.<BR>
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncThis program and the accompanying materials are licensed and made available under
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncthe terms and conditions of the BSD License that accompanies this distribution.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncThe full text of the license may be found at
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncTHE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncWITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @par Revision Reference:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync This Protocol is defined in Framework of EFI SMM Core Interface Spec
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Version 0.91.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 0x21f302ad, 0x6e94, 0x471b, {0x84, 0xbc, 0xb1, 0x48, 0x0, 0x40, 0x3a, 0x1d} \
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsynctypedef struct _EFI_SMM_CPU_SAVE_STATE_PROTOCOL EFI_SMM_CPU_SAVE_STATE_PROTOCOL;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/// CPU save-state strcuture for IA32 and X64.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/// This struct declaration does not exctly match the Framework SMM CIS 0.91 because the
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/// union in the Framework SMM CIS 0.91 contains an unnamed union member that causes build
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/// breaks on many compilers with high warning levels. Instead, the UINT8 Reserved[0x200]
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/// field has been moved into EFI_SMM_CPU_STATE32. This maintains binary compatibility for
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/// the layout and also maintains source comaptibility for access of all fields in this
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/// This struct declaration does not exctly match the Framework SMM CIS 0.91 because
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/// the Framework SMM CIS 0.91 uses ASM_XXX for base types in this structure. These
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/// have been changed to use the base types defined in the UEFI Specification.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsynctypedef struct {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/// This struct declaration does not exctly match the Framework SMM CIS 0.91 because
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/// the Framework SMM CIS 0.91 uses ASM_XXX for base types in this structure. These
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/// have been changed to use the base types defined in the UEFI Specification.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsynctypedef struct {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/// Union of CPU save-state strcutures for IA32 and X64.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/// This union declaration does not exctly match the Framework SMM CIS 0.91 because the
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/// union in the Framework SMM CIS 0.91 contains an unnamed union member that causes build
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/// breaks on many compilers with high warning levels. Instead, the UINT8 Reserved[0x200]
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/// field has been moved into EFI_SMM_CPU_STATE32. This maintains binary compatibility for
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/// the layout and also maintains source comaptibility for access of all fields in this
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsynctypedef union {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/// Provides a programatic means to access SMM save state.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync /// Reference to a list of save states.