drm_mode_config_reset() has a dual role: it creates the initial KMS state at probe time, and resets hardware and software state during suspend/resume cycles.
Since the two roles need different behaviors (notably for objects like drm_private_obj that must persist across suspend/resume), drm_mode_config_create_initial_state() was introduced to handle only the initial state creation at probe time. Switch to drm_mode_config_create_initial_state(). Signed-off-by: Maxime Ripard <[email protected]> --- Cc: Alexandre Belloni <[email protected]> Cc: Claudiu Beznea <[email protected]> Cc: Dharma Balasubiramani <[email protected]> Cc: Manikandan Muralidharan <[email protected]> Cc: Nicolas Ferre <[email protected]> --- drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_dc.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_dc.c b/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_dc.c index 2f41bce574dc..453c37de9bee 100644 --- a/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_dc.c +++ b/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_dc.c @@ -880,5 +880,7 @@ static int atmel_hlcdc_dc_load(struct drm_device *dev) } - drm_mode_config_reset(dev); + ret = drm_mode_config_create_initial_state(dev); + if (ret) + goto err_periph_clk_disable; pm_runtime_get_sync(dev->dev); -- 2.55.0
