Merge branch 'rework/fixup-for-5.15' into for-linus
[linux-2.6-microblaze.git] / Documentation / gpu / amdgpu-dc.rst
1 ===================================
2 drm/amd/display - Display Core (DC)
3 ===================================
4
5 *placeholder - general description of supported platforms, what dc is, etc.*
6
7 Because it is partially shared with other operating systems, the Display Core
8 Driver is divided in two pieces.
9
10 1. **Display Core (DC)** contains the OS-agnostic components. Things like
11    hardware programming and resource management are handled here.
12 2. **Display Manager (DM)** contains the OS-dependent components. Hooks to the
13    amdgpu base driver and DRM are implemented here.
14
15 It doesn't help that the entire package is frequently referred to as DC. But
16 with the context in mind, it should be clear.
17
18 When CONFIG_DRM_AMD_DC is enabled, DC will be initialized by default for
19 supported ASICs. To force disable, set `amdgpu.dc=0` on kernel command line.
20 Likewise, to force enable on unsupported ASICs, set `amdgpu.dc=1`.
21
22 To determine if DC is loaded, search dmesg for the following entry:
23
24 ``Display Core initialized with <version number here>``
25
26 AMDgpu Display Manager
27 ======================
28
29 .. kernel-doc:: drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
30    :doc: overview
31
32 .. kernel-doc:: drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.h
33    :internal:
34
35 Lifecycle
36 ---------
37
38 .. kernel-doc:: drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
39    :doc: DM Lifecycle
40
41 .. kernel-doc:: drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
42    :functions: dm_hw_init dm_hw_fini
43
44 Interrupts
45 ----------
46
47 .. kernel-doc:: drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_irq.c
48    :doc: overview
49
50 .. kernel-doc:: drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_irq.c
51    :internal:
52
53 .. kernel-doc:: drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
54    :functions: register_hpd_handlers dm_crtc_high_irq dm_pflip_high_irq
55
56 Atomic Implementation
57 ---------------------
58
59 .. kernel-doc:: drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
60    :doc: atomic
61
62 .. kernel-doc:: drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
63    :functions: amdgpu_dm_atomic_check amdgpu_dm_atomic_commit_tail
64
65 Display Core
66 ============
67
68 **WIP**
69
70 FreeSync Video
71 --------------
72
73 .. kernel-doc:: drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
74    :doc: FreeSync Video