public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/6] drm: enforce rules for drm_atomic_helper_check_modeset()
@ 2024-12-22  5:00 Dmitry Baryshkov
  2024-12-22  5:00 ` [PATCH 1/6] drm/atomic-helper: document drm_atomic_helper_check() restrictions Dmitry Baryshkov
                   ` (7 more replies)
  0 siblings, 8 replies; 31+ messages in thread
From: Dmitry Baryshkov @ 2024-12-22  5:00 UTC (permalink / raw)
  To: Maarten Lankhorst, Maxime Ripard, Thomas Zimmermann, David Airlie,
	Simona Vetter, Rob Clark, Abhinav Kumar, Sean Paul,
	Marijn Suijten, Chandan Uddaraju, Jeykumar Sankaran,
	Jordan Crouse, Sravanthi Kollukuduru
  Cc: dri-devel, linux-kernel, Archit Taneja, Rajesh Yadav,
	linux-arm-msm, freedreno, Simona Vetter

As pointed out by Simona, the drm_atomic_helper_check_modeset() and
drm_atomic_helper_check() require the former function is rerun if the
driver's callbacks modify crtc_state->mode_changed. MSM is one of the
drivers which failed to follow this requirement.

As suggested by Simona, implement generic code to verify that the
drivers abide to those requirement and rework MSM driver to follow that
restrictions.

There are no dependencies between core and MSM parts, so they can go
separately via corresponding trees.

Reported-by: Simona Vetter <simona.vetter@ffwll.ch>
Link: https://lore.kernel.org/dri-devel/ZtW_S0j5AEr4g0QW@phenom.ffwll.local/
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
---
Dmitry Baryshkov (6):
      drm/atomic-helper: document drm_atomic_helper_check() restrictions
      drm/atomic: prepare to check that drivers follow restrictions for needs_modeset
      drm/msm/dpu: don't use active in atomic_check()
      drm/msm/dpu: move needs_cdm setting to dpu_encoder_get_topology()
      drm/msm/dpu: simplify dpu_encoder_get_topology() interface
      drm/msm/dpu: don't set crtc_state->mode_changed from atomic_check()

 drivers/gpu/drm/drm_atomic.c                |  3 +
 drivers/gpu/drm/drm_atomic_helper.c         | 86 ++++++++++++++++++++++++++---
 drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c    |  4 --
 drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c | 82 +++++++++++++++++----------
 drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.h |  4 ++
 drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c     | 26 +++++++++
 drivers/gpu/drm/msm/msm_atomic.c            | 13 ++++-
 drivers/gpu/drm/msm/msm_kms.h               |  7 +++
 include/drm/drm_atomic.h                    | 10 ++++
 9 files changed, 192 insertions(+), 43 deletions(-)
---
base-commit: b72747fdde637ebf52e181671bf6f41cd773b3e1
change-id: 20241222-drm-dirty-modeset-88079bd27ae6

Best regards,
-- 
Dmitry Baryshkov <dmitry.baryshkov@linaro.org>


^ permalink raw reply	[flat|nested] 31+ messages in thread

end of thread, other threads:[~2025-01-23 12:37 UTC | newest]

Thread overview: 31+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-12-22  5:00 [PATCH 0/6] drm: enforce rules for drm_atomic_helper_check_modeset() Dmitry Baryshkov
2024-12-22  5:00 ` [PATCH 1/6] drm/atomic-helper: document drm_atomic_helper_check() restrictions Dmitry Baryshkov
2025-01-08 17:26   ` Simona Vetter
2025-01-09  5:26   ` Abhinav Kumar
2024-12-22  5:00 ` [PATCH 2/6] drm/atomic: prepare to check that drivers follow restrictions for needs_modeset Dmitry Baryshkov
2025-01-08 17:53   ` Simona Vetter
2025-01-08 18:32     ` Dmitry Baryshkov
2024-12-22  5:00 ` [PATCH 3/6] drm/msm/dpu: don't use active in atomic_check() Dmitry Baryshkov
2025-01-08 17:56   ` Simona Vetter
2025-01-09  1:19   ` Abhinav Kumar
2025-01-09  4:22     ` Dmitry Baryshkov
2025-01-09  5:37       ` Abhinav Kumar
2024-12-22  5:00 ` [PATCH 4/6] drm/msm/dpu: move needs_cdm setting to dpu_encoder_get_topology() Dmitry Baryshkov
2025-01-09  1:26   ` Abhinav Kumar
2024-12-22  5:00 ` [PATCH 5/6] drm/msm/dpu: simplify dpu_encoder_get_topology() interface Dmitry Baryshkov
2025-01-09  1:32   ` Abhinav Kumar
2024-12-22  5:00 ` [PATCH 6/6] drm/msm/dpu: don't set crtc_state->mode_changed from atomic_check() Dmitry Baryshkov
2025-01-08 17:55   ` Simona Vetter
2025-01-08 18:55     ` Dmitry Baryshkov
2025-01-09  2:27   ` Abhinav Kumar
2025-01-09  4:11     ` Abhinav Kumar
2025-01-09  4:26       ` Dmitry Baryshkov
2025-01-09  5:22         ` Abhinav Kumar
2025-01-09 12:12           ` Dmitry Baryshkov
2025-01-09  4:24     ` Dmitry Baryshkov
2025-01-09 13:53 ` [PATCH 0/6] drm: enforce rules for drm_atomic_helper_check_modeset() Thomas Zimmermann
2025-01-09 23:57   ` Dmitry Baryshkov
2025-01-10 13:30     ` Thomas Zimmermann
2025-01-13  8:47       ` Dmitry Baryshkov
2025-01-23 12:08   ` Dmitry Baryshkov
2025-01-23 12:36 ` (subset) " Dmitry Baryshkov

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox