On HiKey/HiKey960 boards, enabling the crtc before the first composition is set can cause trouble, as part of the display engine is configured in the atomic plane update method.
So when commit 36a7f285 ("drm_hwcomposer: Rework display Mode Setting and DPMS handling"), which reworked the dpms and modeset logic to commit the modeset immediately, landed it caused bootup regressions on those boards.
Talking with others it seems other drivers likely may have issues trying to enable the crtc without a plane.
Thus this patch changes the logic to queue modesets so they are submitted with the initial composition. Similarly it removes the crtc activation, as the initial composition will implicitly activate the crtc.
Fixes: 36a7f285 ("drm_hwcomposer: Rework display Mode Setting and DPMS handling") Signed-off-by: Roman Stratiienko email@example.com [jstultz: Added commit message, reworked a comment] Signed-off-by: John Stultz firstname.lastname@example.org Change-Id: Ie4d1f967da052b0b3ef73257c2ca76b30504a6c2