summaryrefslogtreecommitdiff
path: root/Silicon/Ampere/AmpereAltraPkg/Drivers/CpuConfigDxe/CpuConfigDxe.h
blob: 77e691978dcca309fadf7ab238b1de1acbdaeea4 (plain)
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
50
51
52
/** @file

  Copyright (c) 2020 - 2024, Ampere Computing LLC. All rights reserved.<BR>

  SPDX-License-Identifier: BSD-2-Clause-Patent

**/

#ifndef CPU_CONFIG_H_
#define CPU_CONFIG_H_

#include <CpuConfigNVDataStruc.h>

//
// This is the generated IFR binary data for each formset defined in VFR.
//
extern UINT8 CpuConfigVfrBin[];

//
// This is the generated String package data for all .UNI files.
//
extern UINT8 CpuConfigDxeStrings[];

#define CPU_CONFIG_PRIVATE_SIGNATURE SIGNATURE_32 ('C', 'P', 'U', '_')

typedef struct {
  UINTN Signature;

  EFI_HANDLE        DriverHandle;
  EFI_HII_HANDLE    HiiHandle;
  CPU_VARSTORE_DATA Configuration;

  EFI_HII_CONFIG_ROUTING_PROTOCOL *HiiConfigRouting;

  EFI_HII_CONFIG_ACCESS_PROTOCOL ConfigAccess;
} CPU_CONFIG_PRIVATE_DATA;

#define CPU_CONFIG_PRIVATE_FROM_THIS(a)  CR (a, CPU_CONFIG_PRIVATE_DATA, ConfigAccess, CPU_CONFIG_PRIVATE_SIGNATURE)

#pragma pack(1)

///
/// HII specific Vendor Device Path definition.
///
typedef struct {
  VENDOR_DEVICE_PATH       VendorDevicePath;
  EFI_DEVICE_PATH_PROTOCOL End;
} HII_VENDOR_DEVICE_PATH;

#pragma pack()

#endif /* CPU_CONFIG_H_ */