On 10/15/15 01:26, Michael Kinney wrote:
> Add AcpuCpuData.h that defines a data structure that is shared between
> modules and is required for ACPI S3 support.
> APState field removed between V1 and V2 patch.
> 
> Contributed-under: TianoCore Contribution Agreement 1.0
> Signed-off-by: Michael Kinney <[email protected]>
> Cc: Laszlo Ersek <[email protected]>
> ---
>  UefiCpuPkg/Include/AcpiCpuData.h | 71 
> ++++++++++++++++++++++++++++++++++++++++
>  1 file changed, 71 insertions(+)
>  create mode 100644 UefiCpuPkg/Include/AcpiCpuData.h

Usually v(n)->v(n+1) changes are not noted within the commit message,
only in the "notes" section of the posting (*), but I don't *always*
agree with that -- sometimes it is really useful to capture the
evolution of a patch forever. And I think this series qualifies.

(*) There's tooling support for that -- google "git notes". Others just
manually edit the formatted patch files (I don't like that; I use "git
notes".) Anyway, in this case I actually prefer the per-patch history to
be captured.

Thanks for dropping APState.

Reviewed-by: Laszlo Ersek <[email protected]>

Laszlo

> 
> diff --git a/UefiCpuPkg/Include/AcpiCpuData.h 
> b/UefiCpuPkg/Include/AcpiCpuData.h
> new file mode 100644
> index 0000000..a367257
> --- /dev/null
> +++ b/UefiCpuPkg/Include/AcpiCpuData.h
> @@ -0,0 +1,71 @@
> +/** @file
> +Definitions for CPU S3 data.
> +
> +Copyright (c) 2013 - 2015, Intel Corporation. All rights reserved.<BR>
> +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.
> +
> +**/
> +
> +#ifndef _ACPI_CPU_DATA_H_
> +#define _ACPI_CPU_DATA_H_
> +
> +//
> +// Register types in register table
> +//
> +typedef enum _REGISTER_TYPE {
> +  Msr,
> +  ControlRegister,
> +  MemoryMapped,
> +  CacheControl
> +} REGISTER_TYPE;
> +
> +//
> +// Element of register table entry
> +//
> +typedef struct {
> +  REGISTER_TYPE RegisterType;
> +  UINT32        Index;
> +  UINT8         ValidBitStart;
> +  UINT8         ValidBitLength;
> +  UINT64        Value;
> +} CPU_REGISTER_TABLE_ENTRY;
> +
> +//
> +// Register table definition, including current table length,
> +// allocated size of this table, and pointer to the list of table entries.
> +//
> +typedef struct {
> +  UINT32                   TableLength;
> +  UINT32                   NumberBeforeReset;
> +  UINT32                   AllocatedSize;
> +  UINT32                   InitialApicId;
> +  CPU_REGISTER_TABLE_ENTRY *RegisterTableEntry;
> +} CPU_REGISTER_TABLE;
> +
> +typedef struct {
> +  EFI_PHYSICAL_ADDRESS  StartupVector;
> +  EFI_PHYSICAL_ADDRESS  GdtrProfile;
> +  EFI_PHYSICAL_ADDRESS  IdtrProfile;
> +  EFI_PHYSICAL_ADDRESS  StackAddress;
> +  UINT32                StackSize;
> +  UINT32                NumberOfCpus;
> +  EFI_PHYSICAL_ADDRESS  MtrrTable;
> +  //
> +  // Physical address of a CPU_REGISTER_TABLE structure
> +  //
> +  EFI_PHYSICAL_ADDRESS  PreSmmInitRegisterTable;
> +  //
> +  // Physical address of a CPU_REGISTER_TABLE structure
> +  //
> +  EFI_PHYSICAL_ADDRESS  RegisterTable;
> +  EFI_PHYSICAL_ADDRESS  ApMachineCheckHandlerBase;
> +  UINT32                ApMachineCheckHandlerSize;
> +} ACPI_CPU_DATA;
> +
> +#endif
> 

_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to