From: Ville Syrjälä <ville.syrj...@linux.intel.com>

crtc->mode is legacy junk and shouldn't really be used with
atomic drivers.

Most (all?) atomic drivers do end up still calling
drm_atomic_helper_update_legacy_modeset_state() at some
point, so crtc->mode does still get populated, and this
does work for now. But now that the modes[] lifetime issues
have been sorted out we can just switch over to the
proper crtc->state->mode.

v2: Rebase

Signed-off-by: Ville Syrjälä <ville.syrj...@linux.intel.com>
---
 drivers/gpu/drm/drm_client_modeset.c | 13 +------------
 1 file changed, 1 insertion(+), 12 deletions(-)

diff --git a/drivers/gpu/drm/drm_client_modeset.c 
b/drivers/gpu/drm/drm_client_modeset.c
index ff034359f063..4c64535fb82c 100644
--- a/drivers/gpu/drm/drm_client_modeset.c
+++ b/drivers/gpu/drm/drm_client_modeset.c
@@ -733,20 +733,9 @@ static bool drm_client_firmware_config(struct 
drm_client_dev *client,
 
                /* last resort: use current mode */
                if (!modes[i]) {
-                       /*
-                        * IMPORTANT: We want to use the adjusted mode (i.e.
-                        * after the panel fitter upscaling) as the initial
-                        * config, not the input mode, which is what crtc->mode
-                        * usually contains. But since our current
-                        * code puts a mode derived from the post-pfit timings
-                        * into crtc->mode this works out correctly.
-                        *
-                        * This is crtc->mode and not crtc->state->mode for the
-                        * fastboot check to work correctly.
-                        */
                        mode_type = "current";
                        mode_replace(dev, &modes[i],
-                                    &connector->state->crtc->mode);
+                                    &new_crtc->state->mode);
                }
 
                /*
-- 
2.45.3

Reply via email to