On Wed, Sep 5, 2018 at 3:45 PM, Leo Li <sunpeng.li@xxxxxxx> wrote: > > > 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. I have a follow-up patches to unexport the helper, so would be good if Alex sends out the pull request so I can sort this all out in drm-misc-next. I don't want to split up the patch series if possible. Or we just deal with the conflict, it's minor. Alex? -Daniel > Leo > > >> >> Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxxx> >> Cc: Alex Deucher <alexander.deucher@xxxxxxx> >> Cc: Harry Wentland <harry.wentland@xxxxxxx> >> Cc: Andrey Grodzovsky <andrey.grodzovsky@xxxxxxx> >> Cc: Tony Cheng <Tony.Cheng@xxxxxxx> >> Cc: "Leo (Sunpeng) Li" <sunpeng.li@xxxxxxx> >> Cc: Shirish S <shirish.s@xxxxxxx> >> --- >> .../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) >> > -- Daniel Vetter Software Engineer, Intel Corporation +41 (0) 79 365 57 48 - http://blog.ffwll.ch _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel