]>
Commit | Line | Data |
---|---|---|
99fa7ce3 MD |
1 | ========================= |
2 | drm/amdgpu AMDgpu driver | |
3 | ========================= | |
4 | ||
5 | The drm/amdgpu driver supports all AMD Radeon GPUs based on the Graphics Core | |
6 | Next (GCN) architecture. | |
baca30fa | 7 | |
8405cf39 SJ |
8 | Module Parameters |
9 | ================= | |
10 | ||
11 | The amdgpu driver supports the following module parameters: | |
12 | ||
13 | .. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c | |
14 | ||
baca30fa MD |
15 | Core Driver Infrastructure |
16 | ========================== | |
17 | ||
18 | This section covers core driver infrastructure. | |
19 | ||
0152ac16 MD |
20 | .. _amdgpu_memory_domains: |
21 | ||
22 | Memory Domains | |
23 | -------------- | |
24 | ||
25 | .. kernel-doc:: include/uapi/drm/amdgpu_drm.h | |
26 | :doc: memory domains | |
27 | ||
a2d19d66 MD |
28 | Buffer Objects |
29 | -------------- | |
30 | ||
31 | .. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_object.c | |
32 | :doc: amdgpu_object | |
33 | ||
34 | .. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_object.c | |
35 | :internal: | |
36 | ||
baca30fa MD |
37 | PRIME Buffer Sharing |
38 | -------------------- | |
39 | ||
fbebaa72 | 40 | .. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_dma_buf.c |
baca30fa MD |
41 | :doc: PRIME Buffer Sharing |
42 | ||
fbebaa72 | 43 | .. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_dma_buf.c |
baca30fa | 44 | :internal: |
ad7f0b63 CK |
45 | |
46 | MMU Notifier | |
47 | ------------ | |
48 | ||
49 | .. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c | |
50 | :doc: MMU Notifier | |
51 | ||
52 | .. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c | |
53 | :internal: | |
7fc48e59 AG |
54 | |
55 | AMDGPU Virtual Memory | |
56 | --------------------- | |
57 | ||
58 | .. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c | |
59 | :doc: GPUVM | |
60 | ||
61 | .. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c | |
ab3ec8a1 | 62 | :internal: |
923ff76e SA |
63 | |
64 | Interrupt Handling | |
65 | ------------------ | |
66 | ||
67 | .. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_irq.c | |
68 | :doc: Interrupt Handling | |
69 | ||
70 | .. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_irq.c | |
7fc48e59 | 71 | :internal: |
dc85db25 | 72 | |
52ef3a1a RT |
73 | IP Blocks |
74 | ------------------ | |
75 | ||
76 | .. kernel-doc:: drivers/gpu/drm/amd/include/amd_shared.h | |
77 | :doc: IP Blocks | |
78 | ||
79 | .. kernel-doc:: drivers/gpu/drm/amd/include/amd_shared.h | |
80 | :identifiers: amd_ip_block_type amd_ip_funcs | |
81 | ||
1c1e53f7 TSD |
82 | AMDGPU XGMI Support |
83 | =================== | |
84 | ||
85 | .. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c | |
1c1e53f7 | 86 | |
f77c7109 AD |
87 | AMDGPU RAS Support |
88 | ================== | |
89 | ||
ef177d11 AD |
90 | The AMDGPU RAS interfaces are exposed via sysfs (for informational queries) and |
91 | debugfs (for error injection). | |
92 | ||
f77c7109 AD |
93 | RAS debugfs/sysfs Control and Error Injection Interfaces |
94 | -------------------------------------------------------- | |
74abc221 TSD |
95 | |
96 | .. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c | |
97 | :doc: AMDGPU RAS debugfs control interface | |
98 | ||
ef177d11 AD |
99 | RAS Reboot Behavior for Unrecoverable Errors |
100 | -------------------------------------------------------- | |
101 | ||
102 | .. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c | |
103 | :doc: AMDGPU RAS Reboot Behavior for Unrecoverable Errors | |
104 | ||
f77c7109 AD |
105 | RAS Error Count sysfs Interface |
106 | ------------------------------- | |
107 | ||
108 | .. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c | |
109 | :doc: AMDGPU RAS sysfs Error Count Interface | |
110 | ||
111 | RAS EEPROM debugfs Interface | |
112 | ---------------------------- | |
113 | ||
114 | .. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c | |
115 | :doc: AMDGPU RAS debugfs EEPROM table reset interface | |
116 | ||
117 | RAS VRAM Bad Pages sysfs Interface | |
118 | ---------------------------------- | |
119 | ||
120 | .. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c | |
121 | :doc: AMDGPU RAS sysfs gpu_vram_bad_pages Interface | |
74abc221 | 122 | |
ef177d11 AD |
123 | Sample Code |
124 | ----------- | |
125 | Sample code for testing error injection can be found here: | |
126 | https://cgit.freedesktop.org/mesa/drm/tree/tests/amdgpu/ras_tests.c | |
127 | ||
128 | This is part of the libdrm amdgpu unit tests which cover several areas of the GPU. | |
129 | There are four sets of tests: | |
130 | ||
131 | RAS Basic Test | |
132 | ||
133 | The test verifies the RAS feature enabled status and makes sure the necessary sysfs and debugfs files | |
134 | are present. | |
135 | ||
136 | RAS Query Test | |
137 | ||
138 | This test checks the RAS availability and enablement status for each supported IP block as well as | |
139 | the error counts. | |
140 | ||
141 | RAS Inject Test | |
142 | ||
143 | This test injects errors for each IP. | |
144 | ||
145 | RAS Disable Test | |
146 | ||
147 | This test tests disabling of RAS features for each IP block. | |
148 | ||
74abc221 | 149 | |
dc85db25 AD |
150 | GPU Power/Thermal Controls and Monitoring |
151 | ========================================= | |
152 | ||
153 | This section covers hwmon and power/thermal controls. | |
154 | ||
155 | HWMON Interfaces | |
156 | ---------------- | |
157 | ||
778879b9 | 158 | .. kernel-doc:: drivers/gpu/drm/amd/pm/amdgpu_pm.c |
dc85db25 AD |
159 | :doc: hwmon |
160 | ||
161 | GPU sysfs Power State Interfaces | |
162 | -------------------------------- | |
163 | ||
164 | GPU power controls are exposed via sysfs files. | |
165 | ||
166 | power_dpm_state | |
167 | ~~~~~~~~~~~~~~~ | |
168 | ||
778879b9 | 169 | .. kernel-doc:: drivers/gpu/drm/amd/pm/amdgpu_pm.c |
dc85db25 AD |
170 | :doc: power_dpm_state |
171 | ||
172 | power_dpm_force_performance_level | |
173 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
174 | ||
778879b9 | 175 | .. kernel-doc:: drivers/gpu/drm/amd/pm/amdgpu_pm.c |
dc85db25 AD |
176 | :doc: power_dpm_force_performance_level |
177 | ||
178 | pp_table | |
179 | ~~~~~~~~ | |
180 | ||
778879b9 | 181 | .. kernel-doc:: drivers/gpu/drm/amd/pm/amdgpu_pm.c |
dc85db25 AD |
182 | :doc: pp_table |
183 | ||
184 | pp_od_clk_voltage | |
185 | ~~~~~~~~~~~~~~~~~ | |
186 | ||
778879b9 | 187 | .. kernel-doc:: drivers/gpu/drm/amd/pm/amdgpu_pm.c |
dc85db25 AD |
188 | :doc: pp_od_clk_voltage |
189 | ||
a667b75c AD |
190 | pp_dpm_* |
191 | ~~~~~~~~ | |
dc85db25 | 192 | |
778879b9 | 193 | .. kernel-doc:: drivers/gpu/drm/amd/pm/amdgpu_pm.c |
a667b75c | 194 | :doc: pp_dpm_sclk pp_dpm_mclk pp_dpm_socclk pp_dpm_fclk pp_dpm_dcefclk pp_dpm_pcie |
dc85db25 AD |
195 | |
196 | pp_power_profile_mode | |
197 | ~~~~~~~~~~~~~~~~~~~~~ | |
198 | ||
778879b9 | 199 | .. kernel-doc:: drivers/gpu/drm/amd/pm/amdgpu_pm.c |
dc85db25 AD |
200 | :doc: pp_power_profile_mode |
201 | ||
39ec39d7 MCC |
202 | \*_busy_percent |
203 | ~~~~~~~~~~~~~~~ | |
b374d82d | 204 | |
778879b9 | 205 | .. kernel-doc:: drivers/gpu/drm/amd/pm/amdgpu_pm.c |
da9cebe1 AD |
206 | :doc: gpu_busy_percent |
207 | ||
778879b9 | 208 | .. kernel-doc:: drivers/gpu/drm/amd/pm/amdgpu_pm.c |
da9cebe1 | 209 | :doc: mem_busy_percent |
bd607166 | 210 | |
25c933b1 EQ |
211 | gpu_metrics |
212 | ~~~~~~~~~~~~~~~~~~~~~ | |
213 | ||
778879b9 | 214 | .. kernel-doc:: drivers/gpu/drm/amd/pm/amdgpu_pm.c |
25c933b1 EQ |
215 | :doc: gpu_metrics |
216 | ||
bd607166 KR |
217 | GPU Product Information |
218 | ======================= | |
219 | ||
220 | Information about the GPU can be obtained on certain cards | |
221 | via sysfs | |
222 | ||
223 | product_name | |
224 | ------------ | |
225 | ||
226 | .. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | |
227 | :doc: product_name | |
228 | ||
229 | product_number | |
230 | -------------- | |
231 | ||
232 | .. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | |
233 | :doc: product_name | |
234 | ||
235 | serial_number | |
236 | ------------- | |
237 | ||
238 | .. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | |
239 | :doc: serial_number | |
1d90c13d | 240 | |
18485be9 KR |
241 | unique_id |
242 | --------- | |
243 | ||
778879b9 | 244 | .. kernel-doc:: drivers/gpu/drm/amd/pm/amdgpu_pm.c |
18485be9 KR |
245 | :doc: unique_id |
246 | ||
1d90c13d KR |
247 | GPU Memory Usage Information |
248 | ============================ | |
249 | ||
250 | Various memory accounting can be accessed via sysfs | |
251 | ||
252 | mem_info_vram_total | |
253 | ------------------- | |
254 | ||
255 | .. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c | |
256 | :doc: mem_info_vram_total | |
257 | ||
258 | mem_info_vram_used | |
259 | ------------------ | |
260 | ||
261 | .. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c | |
262 | :doc: mem_info_vram_used | |
263 | ||
264 | mem_info_vis_vram_total | |
265 | ----------------------- | |
266 | ||
267 | .. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c | |
268 | :doc: mem_info_vis_vram_total | |
269 | ||
270 | mem_info_vis_vram_used | |
271 | ---------------------- | |
272 | ||
273 | .. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c | |
274 | :doc: mem_info_vis_vram_used | |
275 | ||
276 | mem_info_gtt_total | |
1af8e76e | 277 | ------------------ |
1d90c13d KR |
278 | |
279 | .. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_gtt_mgr.c | |
280 | :doc: mem_info_gtt_total | |
281 | ||
282 | mem_info_gtt_used | |
1af8e76e | 283 | ----------------- |
1d90c13d KR |
284 | |
285 | .. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_gtt_mgr.c | |
286 | :doc: mem_info_gtt_used | |
1af8e76e KR |
287 | |
288 | PCIe Accounting Information | |
289 | =========================== | |
290 | ||
291 | pcie_bw | |
292 | ------- | |
293 | ||
778879b9 | 294 | .. kernel-doc:: drivers/gpu/drm/amd/pm/amdgpu_pm.c |
1af8e76e KR |
295 | :doc: pcie_bw |
296 | ||
297 | pcie_replay_count | |
298 | ----------------- | |
299 | ||
300 | .. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | |
301 | :doc: pcie_replay_count | |
302 | ||
a7673a1c S |
303 | +GPU SmartShift Information |
304 | ============================ | |
305 | ||
306 | GPU SmartShift information via sysfs | |
1af8e76e | 307 | |
a7673a1c S |
308 | smartshift_apu_power |
309 | -------------------- | |
310 | ||
311 | .. kernel-doc:: drivers/gpu/drm/amd/pm/amdgpu_pm.c | |
312 | :doc: smartshift_apu_power | |
313 | ||
314 | smartshift_dgpu_power | |
315 | --------------------- | |
316 | ||
317 | .. kernel-doc:: drivers/gpu/drm/amd/pm/amdgpu_pm.c | |
318 | :doc: smartshift_dgpu_power | |
30d95a37 S |
319 | |
320 | smartshift_bias | |
321 | --------------- | |
322 | ||
323 | .. kernel-doc:: drivers/gpu/drm/amd/pm/amdgpu_pm.c | |
324 | :doc: smartshift_bias |