Re: [PATCH v2 5/8] drm/client: Stop using the legacy crtc->mode

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, 28 Feb 2025, Ville Syrjala <ville.syrjala@xxxxxxxxxxxxxxx> wrote:
> From: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>
>
> 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.syrjala@xxxxxxxxxxxxxxx>

Reviewed-by: Jani Nikula <jani.nikula@xxxxxxxxx>

> ---
>  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);
>  		}
>  
>  		/*

-- 
Jani Nikula, Intel




[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux