[PATCH 08/14] drm/amdgpu: Remove default best_encoder hook from DC

Leo Li sunpeng.li at amd.com
Wed Sep 5 13:45:10 UTC 2018



On 2018-09-03 12:54 PM, Daniel Vetter wrote:
> For atomic driver this is the default, no need to reimplement it. We
> still need to keep the copypasta for not-atomic drivers though, since
> no one polished the legacy crtc helpers as much as the atomic ones.

Thanks for the patch! It seems I made an identical change here:
https://lists.freedesktop.org/archives/amd-gfx/2018-August/026064.html

One line difference though. I wasn't aware that the default is used when
.best_encoder is null, so I just hooked it to the default helper.

If it's OK with you, I'll do a follow-up to drop the hook, so we don't
have two conflicting patches in flight.

Leo

> 
> Signed-off-by: Daniel Vetter <daniel.vetter at intel.com>
> Cc: Alex Deucher <alexander.deucher at amd.com>
> Cc: Harry Wentland <harry.wentland at amd.com>
> Cc: Andrey Grodzovsky <andrey.grodzovsky at amd.com>
> Cc: Tony Cheng <Tony.Cheng at amd.com>
> Cc: "Leo (Sunpeng) Li" <sunpeng.li at amd.com>
> Cc: Shirish S <shirish.s at amd.com>
> ---
>   .../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 23 -------------------
>   1 file changed, 23 deletions(-)
> 
> diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> index af6adffba788..333f9904f135 100644
> --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> @@ -2794,28 +2794,6 @@ static const struct drm_connector_funcs amdgpu_dm_connector_funcs = {
>   	.atomic_get_property = amdgpu_dm_connector_atomic_get_property
>   };
>   
> -static struct drm_encoder *best_encoder(struct drm_connector *connector)
> -{
> -	int enc_id = connector->encoder_ids[0];
> -	struct drm_mode_object *obj;
> -	struct drm_encoder *encoder;
> -
> -	DRM_DEBUG_DRIVER("Finding the best encoder\n");
> -
> -	/* pick the encoder ids */
> -	if (enc_id) {
> -		obj = drm_mode_object_find(connector->dev, NULL, enc_id, DRM_MODE_OBJECT_ENCODER);
> -		if (!obj) {
> -			DRM_ERROR("Couldn't find a matching encoder for our connector\n");
> -			return NULL;
> -		}
> -		encoder = obj_to_encoder(obj);
> -		return encoder;
> -	}
> -	DRM_ERROR("No encoder id\n");
> -	return NULL;
> -}
> -
>   static int get_modes(struct drm_connector *connector)
>   {
>   	return amdgpu_dm_connector_get_modes(connector);
> @@ -2934,7 +2912,6 @@ amdgpu_dm_connector_helper_funcs = {
>   	 */
>   	.get_modes = get_modes,
>   	.mode_valid = amdgpu_dm_connector_mode_valid,
> -	.best_encoder = best_encoder
>   };
>   
>   static void dm_crtc_helper_disable(struct drm_crtc *crtc)
> 


More information about the dri-devel mailing list