]> git.proxmox.com Git - mirror_ubuntu-jammy-kernel.git/blame - Documentation/gpu/amdgpu.rst
drm/amdgpu/pm: update comment to clarify Overdrive interfaces
[mirror_ubuntu-jammy-kernel.git] / Documentation / gpu / amdgpu.rst
CommitLineData
99fa7ce3
MD
1=========================
2 drm/amdgpu AMDgpu driver
3=========================
4
5The drm/amdgpu driver supports all AMD Radeon GPUs based on the Graphics Core
6Next (GCN) architecture.
baca30fa 7
8405cf39
SJ
8Module Parameters
9=================
10
11The amdgpu driver supports the following module parameters:
12
13.. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
14
baca30fa
MD
15Core Driver Infrastructure
16==========================
17
18This section covers core driver infrastructure.
19
0152ac16
MD
20.. _amdgpu_memory_domains:
21
22Memory Domains
23--------------
24
25.. kernel-doc:: include/uapi/drm/amdgpu_drm.h
26 :doc: memory domains
27
a2d19d66
MD
28Buffer 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
37PRIME 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
46MMU 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
55AMDGPU 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
64Interrupt 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
1c1e53f7
TSD
73AMDGPU XGMI Support
74===================
75
76.. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c
77 :doc: AMDGPU XGMI Support
78
79.. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c
80 :internal:
81
f77c7109
AD
82AMDGPU RAS Support
83==================
84
ef177d11
AD
85The AMDGPU RAS interfaces are exposed via sysfs (for informational queries) and
86debugfs (for error injection).
87
f77c7109
AD
88RAS debugfs/sysfs Control and Error Injection Interfaces
89--------------------------------------------------------
74abc221
TSD
90
91.. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
92 :doc: AMDGPU RAS debugfs control interface
93
ef177d11
AD
94RAS Reboot Behavior for Unrecoverable Errors
95--------------------------------------------------------
96
97.. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
98 :doc: AMDGPU RAS Reboot Behavior for Unrecoverable Errors
99
f77c7109
AD
100RAS Error Count sysfs Interface
101-------------------------------
102
103.. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
104 :doc: AMDGPU RAS sysfs Error Count Interface
105
106RAS EEPROM debugfs Interface
107----------------------------
108
109.. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
110 :doc: AMDGPU RAS debugfs EEPROM table reset interface
111
112RAS VRAM Bad Pages sysfs Interface
113----------------------------------
114
115.. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
116 :doc: AMDGPU RAS sysfs gpu_vram_bad_pages Interface
74abc221
TSD
117
118.. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
119 :internal:
120
ef177d11
AD
121Sample Code
122-----------
123Sample code for testing error injection can be found here:
124https://cgit.freedesktop.org/mesa/drm/tree/tests/amdgpu/ras_tests.c
125
126This is part of the libdrm amdgpu unit tests which cover several areas of the GPU.
127There are four sets of tests:
128
129RAS Basic Test
130
131The test verifies the RAS feature enabled status and makes sure the necessary sysfs and debugfs files
132are present.
133
134RAS Query Test
135
136This test checks the RAS availability and enablement status for each supported IP block as well as
137the error counts.
138
139RAS Inject Test
140
141This test injects errors for each IP.
142
143RAS Disable Test
144
145This test tests disabling of RAS features for each IP block.
146
74abc221 147
dc85db25
AD
148GPU Power/Thermal Controls and Monitoring
149=========================================
150
151This section covers hwmon and power/thermal controls.
152
153HWMON Interfaces
154----------------
155
156.. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c
157 :doc: hwmon
158
159GPU sysfs Power State Interfaces
160--------------------------------
161
162GPU power controls are exposed via sysfs files.
163
164power_dpm_state
165~~~~~~~~~~~~~~~
166
167.. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c
168 :doc: power_dpm_state
169
170power_dpm_force_performance_level
171~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
172
173.. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c
174 :doc: power_dpm_force_performance_level
175
176pp_table
177~~~~~~~~
178
179.. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c
180 :doc: pp_table
181
182pp_od_clk_voltage
183~~~~~~~~~~~~~~~~~
184
185.. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c
186 :doc: pp_od_clk_voltage
187
a667b75c
AD
188pp_dpm_*
189~~~~~~~~
dc85db25
AD
190
191.. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c
a667b75c 192 :doc: pp_dpm_sclk pp_dpm_mclk pp_dpm_socclk pp_dpm_fclk pp_dpm_dcefclk pp_dpm_pcie
dc85db25
AD
193
194pp_power_profile_mode
195~~~~~~~~~~~~~~~~~~~~~
196
197.. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c
198 :doc: pp_power_profile_mode
199
b374d82d
TSD
200busy_percent
201~~~~~~~~~~~~
202
203.. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c
204 :doc: busy_percent
bd607166
KR
205
206GPU Product Information
207=======================
208
209Information about the GPU can be obtained on certain cards
210via sysfs
211
212product_name
213------------
214
215.. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
216 :doc: product_name
217
218product_number
219--------------
220
221.. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
222 :doc: product_name
223
224serial_number
225-------------
226
227.. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
228 :doc: serial_number
1d90c13d 229
18485be9
KR
230unique_id
231---------
232
233.. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c
234 :doc: unique_id
235
1d90c13d
KR
236GPU Memory Usage Information
237============================
238
239Various memory accounting can be accessed via sysfs
240
241mem_info_vram_total
242-------------------
243
244.. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c
245 :doc: mem_info_vram_total
246
247mem_info_vram_used
248------------------
249
250.. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c
251 :doc: mem_info_vram_used
252
253mem_info_vis_vram_total
254-----------------------
255
256.. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c
257 :doc: mem_info_vis_vram_total
258
259mem_info_vis_vram_used
260----------------------
261
262.. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c
263 :doc: mem_info_vis_vram_used
264
265mem_info_gtt_total
1af8e76e 266------------------
1d90c13d
KR
267
268.. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_gtt_mgr.c
269 :doc: mem_info_gtt_total
270
271mem_info_gtt_used
1af8e76e 272-----------------
1d90c13d
KR
273
274.. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_gtt_mgr.c
275 :doc: mem_info_gtt_used
1af8e76e
KR
276
277PCIe Accounting Information
278===========================
279
280pcie_bw
281-------
282
283.. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c
284 :doc: pcie_bw
285
286pcie_replay_count
287-----------------
288
289.. kernel-doc:: drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
290 :doc: pcie_replay_count
291
292