This patchset was left untouched for almost a year. Let's reiterate it in attempt to solve the long-standing issue. As discussed several times on IRC, move display subdriver resource allocation from kms_init to probe time to let it bail early. Changes since v4: - Rebased on top of linux-next Changes since v3: - Fixed MMIO unmaping in the DPU case. Changes since v2: - Move even more resource allocation in the DPU init path. Changes since v1: - Dropped the applied patch - Picked in the patch to pass msm_kms pointer via msm_drv_probe() Dmitry Baryshkov (4): drm/msm: allow passing struct msm_kms to msm_drv_probe() drm/msm/dpu: move resource allocation to the _probe function drm/msm/mdp4: move resource allocation to the _probe function drm/msm/mdp5: move resource allocation to the _probe function drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c | 133 +++++++++++------------ drivers/gpu/drm/msm/disp/mdp4/mdp4_kms.c | 106 +++++++++--------- drivers/gpu/drm/msm/disp/mdp5/mdp5_kms.c | 100 ++++++++--------- drivers/gpu/drm/msm/msm_drv.c | 6 +- drivers/gpu/drm/msm/msm_drv.h | 3 +- 5 files changed, 162 insertions(+), 186 deletions(-) -- 2.39.2