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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
| /*++
|
| Copyright (c) 2004 - 2014, Intel Corporation. All rights reserved.<BR>
|
| SPDX-License-Identifier: BSD-2-Clause-Patent
|
|
|
| Module Name:
|
| CK505ClockPlatformInfo.h
|
| Abstract:
|
| Protocol to communicate product clock routing information.
|
| GUID Info:
| {3C485EA4-449A-46ce-BB08-2A336EA96B4E}
| 0x3c485ea4, 0x449a, 0x46ce, 0xbb, 0x8, 0x2a, 0x33, 0x6e, 0xa9, 0x6b, 0x4e);
|
| **/
|
| #ifndef _CLOCK_PLATFORM_INFO_H_
| #define _CLOCK_PLATFORM_INFO_H_
|
|
| #define EFI_CK505_CLOCK_PLATFORM_INFO_GUID \
| {0x3c485ea4, 0x449a, 0x46ce, 0xbb, 0x8, 0x2a, 0x33, 0x6e, 0xa9, 0x6b, 0x4e}
|
| //
| // Structure to hold register modifications
| //
| typedef enum {
| None = 0x00000000,
| nICS9LP505_1 = 0x00000001,
| nICS9LP505_2 = 0x00000002,
| nIDTCV163 = 0x00000004,
| nIDTCV174 = 0x00000008,
| nSLG505YC56 = 0x00000010,
| nSLG505YC64 = 0x00000020,
| nCY28505 = 0x00000040,
| nCY28505_2 = 0x00000080,
| nCY28505LF = 0x00000100,
| nPI6C505_OLD = 0x00000200,
| nPI6C505_RevD = 0x00000400,
| nGENERIC_505 = 0x00000800,
| nSLG505YC264 = 0x00001000,
| nIDTCV183 = 0x00002000,
| nSLG505YC256 = 0x00004000,
| nIDTCV184 = 0x00008000,
| nIDTCV190 = 0x00010000,
| All = 0xFFFFFFFF
| } EFI_CLOCKS_SUPPORTED;
|
| typedef enum {
| Disabled,
| Enabled,
| EnabledWithoutSwitch,
| EnabledWithSwitch
| } EFI_SIGNAL_STATE;
|
| typedef enum {
| SrcClk11,
| SrcClk10,
| SrcClk9,
| SrcClk8,
| SrcClk7,
| SrcClk6,
| SrcClk5,
| SrcClk4,
| SrcClk3,
| SrcClk2,
| SrcClk1,
| SrcClk0,
| CpuClk1,
| CpuClk0,
| Ref0,
| Dot96,
| Usb48,
| PciClkF5,
| PciClk4,
| PciClk3,
| PciClk2,
| PciClk1,
| PciClk0,
| SaveClockConfiguration,
| MePresent,
| Cr_A,
| Cr_B,
| Cr_C,
| Cr_D,
| Cr_E,
| Cr_F,
| Cr_G,
| Cr_H,
| Clk_None // Dummy entry for dynamic detection
| } EFI_CLOCK_SIGNAL_NAME;
|
| typedef struct {
| EFI_CLOCK_SIGNAL_NAME Signal;
| EFI_SIGNAL_STATE State;
| EFI_CLOCKS_SUPPORTED Supported;
| } EFI_STATIC_SIGNALS;
|
| typedef struct {
| BOOLEAN BehindBridge;
| UINT16 BridgeBus;
| UINT16 BridgeDev;
| UINT16 BridgeFunction;
| UINT16 TargetDevice;
| EFI_CLOCK_SIGNAL_NAME Signal;
| } EFI_DYNAMIC_SIGNALS;
|
|
| typedef struct {
| EFI_STATIC_SIGNALS *StaticClockTable;
| UINTN StaticClockTableCount;
| EFI_STATIC_SIGNALS *SxClockTable;
| UINTN SxClockTableCount;
| EFI_STATIC_SIGNALS *DynamicDisabledClocksTable;
| UINTN DynamicDisabledClocksTableCount;
| } EFI_CLOCK_PLATFORM_INFO;
|
| extern EFI_GUID gEfiCk505ClockPlatformInfoGuid;
|
| #endif
|
|