hc
2024-03-25 edb30157bad0c0001c32b854271ace01d3b9a16a
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
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
/** @file
  Register names for PCH private chipset register
  Conventions:
  Prefixes:
  Definitions beginning with "R_" are registers
  Definitions beginning with "B_" are bits within registers
  Definitions beginning with "V_" are meaningful values within the bits
  Definitions beginning with "S_" are register sizes
  Definitions beginning with "N_" are the bit position
  In general, PCH registers are denoted by "_PCH_" in register names
  Registers / bits that are different between PCH generations are denoted by
  _PCH_[generation_name]_" in register/bit names.
  Registers / bits that are specific to PCH-H denoted by "_H_" in register/bit names.
  Registers / bits that are specific to PCH-LP denoted by "_LP_" in register/bit names.
  e.g., "_PCH_H_", "_PCH_LP_"
  Registers / bits names without _H_ or _LP_ apply for both H and LP.
  Registers / bits that are different between SKUs are denoted by "_[SKU_name]"
  at the end of the register/bit names
  Registers / bits of new devices introduced in a PCH generation will be just named
  as "_PCH_" without [generation_name] inserted.
 
  @copyright
  Copyright 2013 - 2021 Intel Corporation. <BR>
 
  SPDX-License-Identifier: BSD-2-Clause-Patent
**/
 
#ifndef _PCH_REGS_PCR_H_
#define _PCH_REGS_PCR_H_
 
///
/// Definition for PCR base address (defined in PchReservedResources.h)
///
//#define PCH_PCR_BASE_ADDRESS            0xFD000000
//#define PCH_PCR_MMIO_SIZE               0x01000000
/**
  Definition for PCR address
  The PCR address is used to the PCR MMIO programming
**/
#define PCH_PCR_ADDRESS(Pid, Offset)                        (PCH_PCR_BASE_ADDRESS | ((UINT8) (Pid) << 16) | (UINT16) (Offset))
#define PCH_PCR_ADDRESS_BASE(PcrBaseAddress, Pid, Offset)   ((UINTN) (PcrBaseAddress) | ((UINT8) (Pid) << 16) | (UINT16) (Offset))
 
/**
  Definition for SBI PID
  The PCH_SBI_PID defines the PID for PCR MMIO programming and PCH SBI programming as well.
**/
 
#define  PID_BROADCAST1                         0xFF
#define  PID_BROADCAST2                         0xFE
//Rsv                                = 0xFD-0xF0,
#define  PID_DMI                                0xEF
#define  PID_ESPISPI                            0xEE
#define  PID_ICLK                               0xED
#define  PID_MODPHY4                            0xEB
#define  PID_MODPHY5                            0x10
#define  PID_MODPHY1                            0xE9
#define  PID_PMC                                0xE8
//Rsv                                = 0xE7,
#define  PID_XHCI                               0xE6
#define  PID_OTG                                0xE5
#define  PID_SPE                                0xE4       // Reserved in SKL PCH LP
#define  PID_SPD                                0xE3       // Reserved in SKL PCH LP
#define  PID_SPC                                0xE2
#define  PID_SPB                                0xE1
#define  PID_SPA                                0xE0
#define  PID_UPSX8                              0x06
#define  PID_UPSX16                             0x07
#define  PID_TAP2IOSFSB1                        0xDF
#define  PID_TRSB                               0xDD
#define  PID_ICC                                0xDC
#define  PID_GBE                                0xDB
//Rsv                                = 0xDA,
#define  PID_SATA                               0xD9
#define  PID_SSATA                              0x0F
#define  PID_LDO                                0x14
//Rsv                                = 0xD8,
#define  PID_DSP                                0xD7
//Rsv                                = 0xD6,
#define  PID_FUSE                               0xD5
#define  PID_FSPROX0                            0xD4
#define  PID_DRNG                               0xD2
//Rsv                                = 0xD1,
#define  PID_FIA                                0xCF
#define  PID_FIAWM26                            0x13
//Rsv                                = 0xCE-0xCC,
#define  PID_USB2                               0xCA
//Rsv                                = 0xC8
#define  PID_LPC                                0xC7
#define  PID_SMB                                0xC6
#define  PID_P2S                                0xC5
#define  PID_ITSS                               0xC4
#define  PID_RTC_HOST                           0xC3
//Rsv                                 = 0xC2-0xC1,
#define  PID_PSF5                               0x8F
#define  PID_PSF6                               0x70
#define  PID_PSF7                               0x01
#define  PID_PSF8                               0x29
#define  PID_PSF9                               0x21
#define  PID_PSF10                              0x36
#define  PID_PSF4                               0xBD
#define  PID_PSF3                               0xBC
#define  PID_PSF2                               0xBB
#define  PID_PSF1                               0xBA
#define  PID_HOTHARM                            0xB9
#define  PID_DCI                                0xB8
#define  PID_DFXAGG                             0xB7
#define  PID_NPK                                0xB6
//Rsv                                = 0xB5-0xB1,
#define  PID_MMP0                               0xB0
#define  PID_GPIOCOM0                           0xAF
#define  PID_GPIOCOM1                           0xAE
#define  PID_GPIOCOM2                           0xAD
#define  PID_GPIOCOM3                           0xAC
#define  PID_GPIOCOM4                           0xAB
#define  PID_GPIOCOM5                           0x11
#define  PID_MODPHY2                            0xA9
#define  PID_MODPHY3                            0xA8
//Rsv                                = 0xA7-0xA6,
#define  PID_PNCRC                              0xA5
#define  PID_PNCRB                              0xA4
#define  PID_PNCRA                              0xA3
#define  PID_PNCR0                              0xA2
#define  PID_CSME15                             0x9F // SMS2
#define  PID_CSME14                             0x9E // SMS1
#define  PID_CSME13                             0x9D // PMT
#define  PID_CSME12                             0x9C // PTIO
#define  PID_CSME11                             0x9B // PECI
#define  PID_CSME9                              0x99 // SMT6
#define  PID_CSME8                              0x98 // SMT5
#define  PID_CSME7                              0x97 // SMT4
#define  PID_CSME6                              0x96 // SMT3
#define  PID_CSME5                              0x95 // SMT2
#define  PID_CSME4                              0x94 // SMT1 (SMBus Message Transport 1)
#define  PID_CSME3                              0x93 // FSC
#define  PID_CSME2                              0x92 // USB-R SAI
#define  PID_CSME0                              0x90 // CSE
#define  PID_CSME_PSF                           0x8F // ME PSF
//Rsv                                 = 0x88-0x30,
//#define PID_EVA                              0x2F-0x00
#define  PID_CSMERTC                           0x8E
#define  PID_IEUART                            0x80
#define  PID_IEHOTHAM                          0x7F
#define  PID_IEPMT                             0x7E
#define  PID_IESSTPECI                         0x7D
#define  PID_IEFSC                             0x7C
#define  PID_IESMT5                            0x7B
#define  PID_IESMT4                            0x7A
#define  PID_IESMT3                            0x79
#define  PID_IESMT2                            0x78
#define  PID_IESMT1                            0x77
#define  PID_IESMT0                            0x76
#define  PID_IEUSBR                            0x74
#define  PID_IEPTIO                            0x73
#define  PID_IEIOSFGASKET                      0x72
#define  PID_IEPSF                             0x70
#define  PID_FPK                               0x0A
#define  PID_MP0KR                             0x3C
#define  PID_MP1KR                             0x3E
#define  PID_RUAUX                             0x0B
#define  PID_RUMAIN                            0x3B
#define  PID_EC                                0x20
#define  PID_CPM2                              0x38
#define  PID_CPM1                              0x37
#define  PID_CPM0                              0x0C
#define  PID_VSPTHERM                          0x25
#define  PID_VSPP2SB                           0x24
#define  PID_VSPFPK                            0x22
#define  PID_VSPCPM2                           0x35
#define  PID_VSPCPM1                           0x34
#define  PID_VSPCPM0                           0x33
#define  PID_MSMROM                            0x08
#define  PID_PSTH                              0x89
 
typedef  UINT8                            PCH_SBI_PID;
 
 
#endif