hc
2024-03-22 a0752693d998599af469473b8dc239ef973a012f
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
/** @file
  UBA ClockGen Update Library Header File.
 
  @copyright
  Copyright 2012 - 2021 Intel Corporation. <BR>
 
  SPDX-License-Identifier: BSD-2-Clause-Patent
**/
 
#ifndef _UBA_CLOCKGEN_UPDATE_LIB_H
#define _UBA_CLOCKGEN_UPDATE_LIB_H
 
#include <Base.h>
#include <Uefi.h>
 
#define PLATFORM_CLOCKGEN_UPDATE_SIGNATURE  SIGNATURE_32 ('P', 'C', 'L', 'K')
#define PLATFORM_CLOCKGEN_UPDATE_VERSION    0x01
 
// {CF3845B1-7EB0-44ef-9D67-A80ECE6FED73}
#define   PLATFORM_CLOCKGEN_CONFIG_DATA_GUID \
{ 0xcf3845b1, 0x7eb0, 0x44ef, { 0x9d, 0x67, 0xa8, 0xe, 0xce, 0x6f, 0xed, 0x73 } }
 
#define PLATFORM_NUMBER_OF_CLOCKGEN_DATA    20
#define PLATFORM_CLOCKGEN_NO_ID             0xFF
 
typedef struct {
  UINT32                  Signature;
  UINT32                  Version;
 
  UINTN                   IdOffset;     // Clockgen ID register offset
  UINT8                   Id;           // Clockgen ID
  UINTN                   DataLength;   // Number of clockgen data for write
 
  UINTN                   SpreadSpectrumByteOffset;
  UINT8                   SpreadSpectrumValue;
 
  UINT8                   Data[PLATFORM_NUMBER_OF_CLOCKGEN_DATA];
 
} PLATFORM_CLOCKGEN_UPDATE_TABLE;
 
 
EFI_STATUS
PlatformUpdateClockgen (
  IN  BOOLEAN     EnableSpreadSpectrum
);
 
STATIC  EFI_GUID gPlatformClockgenConfigDataGuid = PLATFORM_CLOCKGEN_CONFIG_DATA_GUID;
 
#endif //_UBA_CLOCKGEN_UPDATE_LIB_H