diff options
author | yanyang1 <young.yang@amd.com> | 2015-08-19 00:22:34 -0400 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2015-12-21 16:42:13 -0500 |
commit | 7ff1d70a40f468e20a6cae5311800cd18e680865 (patch) | |
tree | cf41e9f1ef666d50c3d7dd67ba24352710a04cee /drivers/gpu/drm/amd/amdgpu/smu7_fusion.h | |
parent | 3a287055aed6634d57d57da1977f1df3c9206945 (diff) |
drm/amd/powerplay: Move smu7*.h from amdgpu to powerplay.
Move smu7.h, smu7_discrete.h and smu7_fusion.h from amdgpu to powerplay.
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: yanyang1 <young.yang@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/smu7_fusion.h')
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/smu7_fusion.h | 300 |
1 files changed, 0 insertions, 300 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/smu7_fusion.h b/drivers/gpu/drm/amd/amdgpu/smu7_fusion.h deleted file mode 100644 index 78ada9ffd508..000000000000 --- a/drivers/gpu/drm/amd/amdgpu/smu7_fusion.h +++ /dev/null | |||
@@ -1,300 +0,0 @@ | |||
1 | /* | ||
2 | * Copyright 2013 Advanced Micro Devices, Inc. | ||
3 | * | ||
4 | * Permission is hereby granted, free of charge, to any person obtaining a | ||
5 | * copy of this software and associated documentation files (the "Software"), | ||
6 | * to deal in the Software without restriction, including without limitation | ||
7 | * the rights to use, copy, modify, merge, publish, distribute, sublicense, | ||
8 | * and/or sell copies of the Software, and to permit persons to whom the | ||
9 | * Software is furnished to do so, subject to the following conditions: | ||
10 | * | ||
11 | * The above copyright notice and this permission notice shall be included in | ||
12 | * all copies or substantial portions of the Software. | ||
13 | * | ||
14 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||
15 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||
16 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL | ||
17 | * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR | ||
18 | * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, | ||
19 | * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR | ||
20 | * OTHER DEALINGS IN THE SOFTWARE. | ||
21 | * | ||
22 | */ | ||
23 | |||
24 | #ifndef SMU7_FUSION_H | ||
25 | #define SMU7_FUSION_H | ||
26 | |||
27 | #include "smu7.h" | ||
28 | |||
29 | #pragma pack(push, 1) | ||
30 | |||
31 | #define SMU7_DTE_ITERATIONS 5 | ||
32 | #define SMU7_DTE_SOURCES 5 | ||
33 | #define SMU7_DTE_SINKS 3 | ||
34 | #define SMU7_NUM_CPU_TES 2 | ||
35 | #define SMU7_NUM_GPU_TES 1 | ||
36 | #define SMU7_NUM_NON_TES 2 | ||
37 | |||
38 | // All 'soft registers' should be uint32_t. | ||
39 | struct SMU7_SoftRegisters | ||
40 | { | ||
41 | uint32_t RefClockFrequency; | ||
42 | uint32_t PmTimerP; | ||
43 | uint32_t FeatureEnables; | ||
44 | uint32_t HandshakeDisables; | ||
45 | |||
46 | uint8_t DisplayPhy1Config; | ||
47 | uint8_t DisplayPhy2Config; | ||
48 | uint8_t DisplayPhy3Config; | ||
49 | uint8_t DisplayPhy4Config; | ||
50 | |||
51 | uint8_t DisplayPhy5Config; | ||
52 | uint8_t DisplayPhy6Config; | ||
53 | uint8_t DisplayPhy7Config; | ||
54 | uint8_t DisplayPhy8Config; | ||
55 | |||
56 | uint32_t AverageGraphicsA; | ||
57 | uint32_t AverageMemoryA; | ||
58 | uint32_t AverageGioA; | ||
59 | |||
60 | uint8_t SClkDpmEnabledLevels; | ||
61 | uint8_t MClkDpmEnabledLevels; | ||
62 | uint8_t LClkDpmEnabledLevels; | ||
63 | uint8_t PCIeDpmEnabledLevels; | ||
64 | |||
65 | uint8_t UVDDpmEnabledLevels; | ||
66 | uint8_t SAMUDpmEnabledLevels; | ||
67 | uint8_t ACPDpmEnabledLevels; | ||
68 | uint8_t VCEDpmEnabledLevels; | ||
69 | |||
70 | uint32_t DRAM_LOG_ADDR_H; | ||
71 | uint32_t DRAM_LOG_ADDR_L; | ||
72 | uint32_t DRAM_LOG_PHY_ADDR_H; | ||
73 | uint32_t DRAM_LOG_PHY_ADDR_L; | ||
74 | uint32_t DRAM_LOG_BUFF_SIZE; | ||
75 | uint32_t UlvEnterC; | ||
76 | uint32_t UlvTime; | ||
77 | uint32_t Reserved[3]; | ||
78 | |||
79 | }; | ||
80 | |||
81 | typedef struct SMU7_SoftRegisters SMU7_SoftRegisters; | ||
82 | |||
83 | struct SMU7_Fusion_GraphicsLevel | ||
84 | { | ||
85 | uint32_t MinVddNb; | ||
86 | |||
87 | uint32_t SclkFrequency; | ||
88 | |||
89 | uint8_t Vid; | ||
90 | uint8_t VidOffset; | ||
91 | uint16_t AT; | ||
92 | |||
93 | uint8_t PowerThrottle; | ||
94 | uint8_t GnbSlow; | ||
95 | uint8_t ForceNbPs1; | ||
96 | uint8_t SclkDid; | ||
97 | |||
98 | uint8_t DisplayWatermark; | ||
99 | uint8_t EnabledForActivity; | ||
100 | uint8_t EnabledForThrottle; | ||
101 | uint8_t UpH; | ||
102 | |||
103 | uint8_t DownH; | ||
104 | uint8_t VoltageDownH; | ||
105 | uint8_t DeepSleepDivId; | ||
106 | |||
107 | uint8_t ClkBypassCntl; | ||
108 | |||
109 | uint32_t reserved; | ||
110 | }; | ||
111 | |||
112 | typedef struct SMU7_Fusion_GraphicsLevel SMU7_Fusion_GraphicsLevel; | ||
113 | |||
114 | struct SMU7_Fusion_GIOLevel | ||
115 | { | ||
116 | uint8_t EnabledForActivity; | ||
117 | uint8_t LclkDid; | ||
118 | uint8_t Vid; | ||
119 | uint8_t VoltageDownH; | ||
120 | |||
121 | uint32_t MinVddNb; | ||
122 | |||
123 | uint16_t ResidencyCounter; | ||
124 | uint8_t UpH; | ||
125 | uint8_t DownH; | ||
126 | |||
127 | uint32_t LclkFrequency; | ||
128 | |||
129 | uint8_t ActivityLevel; | ||
130 | uint8_t EnabledForThrottle; | ||
131 | |||
132 | uint8_t ClkBypassCntl; | ||
133 | |||
134 | uint8_t padding; | ||
135 | }; | ||
136 | |||
137 | typedef struct SMU7_Fusion_GIOLevel SMU7_Fusion_GIOLevel; | ||
138 | |||
139 | // UVD VCLK/DCLK state (level) definition. | ||
140 | struct SMU7_Fusion_UvdLevel | ||
141 | { | ||
142 | uint32_t VclkFrequency; | ||
143 | uint32_t DclkFrequency; | ||
144 | uint16_t MinVddNb; | ||
145 | uint8_t VclkDivider; | ||
146 | uint8_t DclkDivider; | ||
147 | |||
148 | uint8_t VClkBypassCntl; | ||
149 | uint8_t DClkBypassCntl; | ||
150 | |||
151 | uint8_t padding[2]; | ||
152 | |||
153 | }; | ||
154 | |||
155 | typedef struct SMU7_Fusion_UvdLevel SMU7_Fusion_UvdLevel; | ||
156 | |||
157 | // Clocks for other external blocks (VCE, ACP, SAMU). | ||
158 | struct SMU7_Fusion_ExtClkLevel | ||
159 | { | ||
160 | uint32_t Frequency; | ||
161 | uint16_t MinVoltage; | ||
162 | uint8_t Divider; | ||
163 | uint8_t ClkBypassCntl; | ||
164 | |||
165 | uint32_t Reserved; | ||
166 | }; | ||
167 | typedef struct SMU7_Fusion_ExtClkLevel SMU7_Fusion_ExtClkLevel; | ||
168 | |||
169 | struct SMU7_Fusion_ACPILevel | ||
170 | { | ||
171 | uint32_t Flags; | ||
172 | uint32_t MinVddNb; | ||
173 | uint32_t SclkFrequency; | ||
174 | uint8_t SclkDid; | ||
175 | uint8_t GnbSlow; | ||
176 | uint8_t ForceNbPs1; | ||
177 | uint8_t DisplayWatermark; | ||
178 | uint8_t DeepSleepDivId; | ||
179 | uint8_t padding[3]; | ||
180 | }; | ||
181 | |||
182 | typedef struct SMU7_Fusion_ACPILevel SMU7_Fusion_ACPILevel; | ||
183 | |||
184 | struct SMU7_Fusion_NbDpm | ||
185 | { | ||
186 | uint8_t DpmXNbPsHi; | ||
187 | uint8_t DpmXNbPsLo; | ||
188 | uint8_t Dpm0PgNbPsHi; | ||
189 | uint8_t Dpm0PgNbPsLo; | ||
190 | uint8_t EnablePsi1; | ||
191 | uint8_t SkipDPM0; | ||
192 | uint8_t SkipPG; | ||
193 | uint8_t Hysteresis; | ||
194 | uint8_t EnableDpmPstatePoll; | ||
195 | uint8_t padding[3]; | ||
196 | }; | ||
197 | |||
198 | typedef struct SMU7_Fusion_NbDpm SMU7_Fusion_NbDpm; | ||
199 | |||
200 | struct SMU7_Fusion_StateInfo | ||
201 | { | ||
202 | uint32_t SclkFrequency; | ||
203 | uint32_t LclkFrequency; | ||
204 | uint32_t VclkFrequency; | ||
205 | uint32_t DclkFrequency; | ||
206 | uint32_t SamclkFrequency; | ||
207 | uint32_t AclkFrequency; | ||
208 | uint32_t EclkFrequency; | ||
209 | uint8_t DisplayWatermark; | ||
210 | uint8_t McArbIndex; | ||
211 | int8_t SclkIndex; | ||
212 | int8_t MclkIndex; | ||
213 | }; | ||
214 | |||
215 | typedef struct SMU7_Fusion_StateInfo SMU7_Fusion_StateInfo; | ||
216 | |||
217 | struct SMU7_Fusion_DpmTable | ||
218 | { | ||
219 | uint32_t SystemFlags; | ||
220 | |||
221 | SMU7_PIDController GraphicsPIDController; | ||
222 | SMU7_PIDController GioPIDController; | ||
223 | |||
224 | uint8_t GraphicsDpmLevelCount; | ||
225 | uint8_t GIOLevelCount; | ||
226 | uint8_t UvdLevelCount; | ||
227 | uint8_t VceLevelCount; | ||
228 | |||
229 | uint8_t AcpLevelCount; | ||
230 | uint8_t SamuLevelCount; | ||
231 | uint16_t FpsHighT; | ||
232 | |||
233 | SMU7_Fusion_GraphicsLevel GraphicsLevel [SMU__NUM_SCLK_DPM_STATE]; | ||
234 | SMU7_Fusion_ACPILevel ACPILevel; | ||
235 | SMU7_Fusion_UvdLevel UvdLevel [SMU7_MAX_LEVELS_UVD]; | ||
236 | SMU7_Fusion_ExtClkLevel VceLevel [SMU7_MAX_LEVELS_VCE]; | ||
237 | SMU7_Fusion_ExtClkLevel AcpLevel [SMU7_MAX_LEVELS_ACP]; | ||
238 | SMU7_Fusion_ExtClkLevel SamuLevel [SMU7_MAX_LEVELS_SAMU]; | ||
239 | |||
240 | uint8_t UvdBootLevel; | ||
241 | uint8_t VceBootLevel; | ||
242 | uint8_t AcpBootLevel; | ||
243 | uint8_t SamuBootLevel; | ||
244 | uint8_t UVDInterval; | ||
245 | uint8_t VCEInterval; | ||
246 | uint8_t ACPInterval; | ||
247 | uint8_t SAMUInterval; | ||
248 | |||
249 | uint8_t GraphicsBootLevel; | ||
250 | uint8_t GraphicsInterval; | ||
251 | uint8_t GraphicsThermThrottleEnable; | ||
252 | uint8_t GraphicsVoltageChangeEnable; | ||
253 | |||
254 | uint8_t GraphicsClkSlowEnable; | ||
255 | uint8_t GraphicsClkSlowDivider; | ||
256 | uint16_t FpsLowT; | ||
257 | |||
258 | uint32_t DisplayCac; | ||
259 | uint32_t LowSclkInterruptT; | ||
260 | |||
261 | uint32_t DRAM_LOG_ADDR_H; | ||
262 | uint32_t DRAM_LOG_ADDR_L; | ||
263 | uint32_t DRAM_LOG_PHY_ADDR_H; | ||
264 | uint32_t DRAM_LOG_PHY_ADDR_L; | ||
265 | uint32_t DRAM_LOG_BUFF_SIZE; | ||
266 | |||
267 | }; | ||
268 | |||
269 | struct SMU7_Fusion_GIODpmTable | ||
270 | { | ||
271 | |||
272 | SMU7_Fusion_GIOLevel GIOLevel [SMU7_MAX_LEVELS_GIO]; | ||
273 | |||
274 | SMU7_PIDController GioPIDController; | ||
275 | |||
276 | uint32_t GIOLevelCount; | ||
277 | |||
278 | uint8_t Enable; | ||
279 | uint8_t GIOVoltageChangeEnable; | ||
280 | uint8_t GIOBootLevel; | ||
281 | uint8_t padding; | ||
282 | uint8_t padding1[2]; | ||
283 | uint8_t TargetState; | ||
284 | uint8_t CurrenttState; | ||
285 | uint8_t ThrottleOnHtc; | ||
286 | uint8_t ThermThrottleStatus; | ||
287 | uint8_t ThermThrottleTempSelect; | ||
288 | uint8_t ThermThrottleEnable; | ||
289 | uint16_t TemperatureLimitHigh; | ||
290 | uint16_t TemperatureLimitLow; | ||
291 | |||
292 | }; | ||
293 | |||
294 | typedef struct SMU7_Fusion_DpmTable SMU7_Fusion_DpmTable; | ||
295 | typedef struct SMU7_Fusion_GIODpmTable SMU7_Fusion_GIODpmTable; | ||
296 | |||
297 | #pragma pack(pop) | ||
298 | |||
299 | #endif | ||
300 | |||