18c2ecf20Sopenharmony_ci=================================== 28c2ecf20Sopenharmony_cidrm/amd/display - Display Core (DC) 38c2ecf20Sopenharmony_ci=================================== 48c2ecf20Sopenharmony_ci 58c2ecf20Sopenharmony_ci*placeholder - general description of supported platforms, what dc is, etc.* 68c2ecf20Sopenharmony_ci 78c2ecf20Sopenharmony_ciBecause it is partially shared with other operating systems, the Display Core 88c2ecf20Sopenharmony_ciDriver is divided in two pieces. 98c2ecf20Sopenharmony_ci 108c2ecf20Sopenharmony_ci1. **Display Core (DC)** contains the OS-agnostic components. Things like 118c2ecf20Sopenharmony_ci hardware programming and resource management are handled here. 128c2ecf20Sopenharmony_ci2. **Display Manager (DM)** contains the OS-dependent components. Hooks to the 138c2ecf20Sopenharmony_ci amdgpu base driver and DRM are implemented here. 148c2ecf20Sopenharmony_ci 158c2ecf20Sopenharmony_ciIt doesn't help that the entire package is frequently referred to as DC. But 168c2ecf20Sopenharmony_ciwith the context in mind, it should be clear. 178c2ecf20Sopenharmony_ci 188c2ecf20Sopenharmony_ciWhen CONFIG_DRM_AMD_DC is enabled, DC will be initialized by default for 198c2ecf20Sopenharmony_cisupported ASICs. To force disable, set `amdgpu.dc=0` on kernel command line. 208c2ecf20Sopenharmony_ciLikewise, to force enable on unsupported ASICs, set `amdgpu.dc=1`. 218c2ecf20Sopenharmony_ci 228c2ecf20Sopenharmony_ciTo determine if DC is loaded, search dmesg for the following entry: 238c2ecf20Sopenharmony_ci 248c2ecf20Sopenharmony_ci``Display Core initialized with <version number here>`` 258c2ecf20Sopenharmony_ci 268c2ecf20Sopenharmony_ciAMDgpu Display Manager 278c2ecf20Sopenharmony_ci====================== 288c2ecf20Sopenharmony_ci 298c2ecf20Sopenharmony_ci.. kernel-doc:: drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c 308c2ecf20Sopenharmony_ci :doc: overview 318c2ecf20Sopenharmony_ci 328c2ecf20Sopenharmony_ci.. kernel-doc:: drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.h 338c2ecf20Sopenharmony_ci :internal: 348c2ecf20Sopenharmony_ci 358c2ecf20Sopenharmony_ciLifecycle 368c2ecf20Sopenharmony_ci--------- 378c2ecf20Sopenharmony_ci 388c2ecf20Sopenharmony_ci.. kernel-doc:: drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c 398c2ecf20Sopenharmony_ci :doc: DM Lifecycle 408c2ecf20Sopenharmony_ci 418c2ecf20Sopenharmony_ci.. kernel-doc:: drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c 428c2ecf20Sopenharmony_ci :functions: dm_hw_init dm_hw_fini 438c2ecf20Sopenharmony_ci 448c2ecf20Sopenharmony_ciInterrupts 458c2ecf20Sopenharmony_ci---------- 468c2ecf20Sopenharmony_ci 478c2ecf20Sopenharmony_ci.. kernel-doc:: drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_irq.c 488c2ecf20Sopenharmony_ci :doc: overview 498c2ecf20Sopenharmony_ci 508c2ecf20Sopenharmony_ci.. kernel-doc:: drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_irq.c 518c2ecf20Sopenharmony_ci :internal: 528c2ecf20Sopenharmony_ci 538c2ecf20Sopenharmony_ci.. kernel-doc:: drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c 548c2ecf20Sopenharmony_ci :functions: register_hpd_handlers dm_crtc_high_irq dm_pflip_high_irq 558c2ecf20Sopenharmony_ci 568c2ecf20Sopenharmony_ciAtomic Implementation 578c2ecf20Sopenharmony_ci--------------------- 588c2ecf20Sopenharmony_ci 598c2ecf20Sopenharmony_ci.. kernel-doc:: drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c 608c2ecf20Sopenharmony_ci :doc: atomic 618c2ecf20Sopenharmony_ci 628c2ecf20Sopenharmony_ci.. kernel-doc:: drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c 638c2ecf20Sopenharmony_ci :functions: amdgpu_dm_atomic_check amdgpu_dm_atomic_commit_tail 648c2ecf20Sopenharmony_ci 658c2ecf20Sopenharmony_ciDisplay Core 668c2ecf20Sopenharmony_ci============ 678c2ecf20Sopenharmony_ci 688c2ecf20Sopenharmony_ci**WIP** 69