X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=EdkUnixPkg%2FLibrary%2FEdkGenericBdsLib%2FPerformance.h;fp=EdkUnixPkg%2FLibrary%2FEdkGenericBdsLib%2FPerformance.h;h=e7f80ab2c03b2ddc053c919b4fee0aed8e580f98;hp=0000000000000000000000000000000000000000;hb=c9093a06e72ef16d2f3bd7ce0a2b9a172e9d048c;hpb=8ba7afaf2e9c682a5d17760e6dd5463b3a2b2d67 diff --git a/EdkUnixPkg/Library/EdkGenericBdsLib/Performance.h b/EdkUnixPkg/Library/EdkGenericBdsLib/Performance.h new file mode 100644 index 0000000000..e7f80ab2c0 --- /dev/null +++ b/EdkUnixPkg/Library/EdkGenericBdsLib/Performance.h @@ -0,0 +1,55 @@ +/*++ + +Copyright (c) 2006, 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: + + Performance.h + +Abstract: + + This file included the performance relete function header and + definition. + +--*/ + +#ifndef _PERF_H_ +#define _PERF_H_ + +#define PERF_TOKEN_LENGTH 28 +#define PERF_PEI_ENTRY_MAX_NUM 50 + +typedef struct { + CHAR8 Token[PERF_TOKEN_LENGTH]; + UINT32 Duration; +} PERF_DATA; + +typedef struct { + UINT64 BootToOs; + UINT64 S3Resume; + UINT32 S3EntryNum; + PERF_DATA S3Entry[PERF_PEI_ENTRY_MAX_NUM]; + UINT64 CpuFreq; + UINT64 BDSRaw; + UINT32 Count; + UINT32 Signiture; +} PERF_HEADER; + +VOID +WriteBootToOsPerformanceData ( + VOID + ); + +VOID +ClearDebugRegisters ( + VOID + ); + +#endif