aboutsummaryrefslogtreecommitdiff
path: root/drm/DrmDisplayPipeline.cpp
AgeCommit message (Collapse)Author
2022-02-09drm_hwcomposer: Rename DrmDisplayCompositor->DrmAtomicStateManagerRoman Stratiienko
Primary responsibilities of this class are: 1. Send composition/mode/active state over DRM atomic commit IOCTL to the kernel 2. Track commit state and keep planes owned by the Pipeline while they are either displayed or staged for displaying. 3. Keep framebuffers alive while they are in use or staged. Not much related to composition itself, therefore rename it to DrmAtomicStateManager and move it to drm folder. Bump clang-tidy level of DrmAtomicStateManager.c to normal by fixing minor clang-tidy findings. Signed-off-by: Roman Stratiienko <roman.o.stratiienko@globallogic.com>
2022-02-04drm_hwcomposer: Rework KMS composition planner + plane sharing supportRoman Stratiienko
Rewrite Layer-to-Plane planner. Get rid of ~200 redundant lines of code + added plane sharing functionality. Closes: https://gitlab.freedesktop.org/drm-hwcomposer/drm-hwcomposer/-/issues/11 Signed-off-by: Roman Stratiienko <roman.o.stratiienko@globallogic.com>
2022-02-02drm_hwcomposer: Initialize HwcDisplay using DrmDisplayPIpelineRoman Stratiienko
HwcDisplay can now take all necessary objects from DrmDisplayPipeline. Signed-off-by: Roman Stratiienko <roman.o.stratiienko@globallogic.com>
2022-02-02drm_hwcomposer: Fix PipelineBindable::BindPipelineRoman Stratiienko
We should assign weak pointer object to really take ownership. Fixes: cad8e0ca57c2 ("drm_hwcomposer: Introduce DrmDisplayPipeline class") Signed-off-by: Roman Stratiienko <roman.o.stratiienko@globallogic.com>
2022-01-31drm_hwcomposer: Introduce DrmDisplayPipeline classRoman Stratiienko
Create systematic way of binding DRM objects (Crtc,Encoder,Planes...) to the pipeline using RAII. Use it to create the pipeline. + Allow pipeline creation to fail. Closes: https://gitlab.freedesktop.org/drm-hwcomposer/drm-hwcomposer/-/issues/14 Signed-off-by: Roman Stratiienko <roman.o.stratiienko@globallogic.com>