Skip to content

Commit

Permalink
drm/atomic: Add drm_atomic_helper_best_encoder()
Browse files Browse the repository at this point in the history
Add (struct drm_connector_helper_funcs *)->best_encoder callback helper
for connectors that support exactly 1 encoder, statically determined at
driver init time.

Signed-off-by: Noralf Trønnes <noralf@tronnes.org>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: http://patchwork.freedesktop.org/patch/msgid/1462982962-10530-6-git-send-email-noralf@tronnes.org
  • Loading branch information
Noralf Trønnes authored and Daniel Vetter committed May 11, 2016
1 parent 2827635 commit 9ecb549
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 0 deletions.
17 changes: 17 additions & 0 deletions drivers/gpu/drm/drm_atomic_helper.c
Original file line number Diff line number Diff line change
Expand Up @@ -2482,6 +2482,23 @@ int drm_atomic_helper_connector_dpms(struct drm_connector *connector,
}
EXPORT_SYMBOL(drm_atomic_helper_connector_dpms);

/**
* drm_atomic_helper_best_encoder - Helper for &drm_connector_helper_funcs
* ->best_encoder callback
* @connector: Connector control structure
*
* This is a &drm_connector_helper_funcs ->best_encoder callback helper for
* connectors that support exactly 1 encoder, statically determined at driver
* init time.
*/
struct drm_encoder *
drm_atomic_helper_best_encoder(struct drm_connector *connector)
{
WARN_ON(connector->encoder_ids[1]);
return drm_encoder_find(connector->dev, connector->encoder_ids[0]);
}
EXPORT_SYMBOL(drm_atomic_helper_best_encoder);

/**
* DOC: atomic state reset and initialization
*
Expand Down
2 changes: 2 additions & 0 deletions include/drm/drm_atomic_helper.h
Original file line number Diff line number Diff line change
Expand Up @@ -110,6 +110,8 @@ int drm_atomic_helper_page_flip(struct drm_crtc *crtc,
uint32_t flags);
int drm_atomic_helper_connector_dpms(struct drm_connector *connector,
int mode);
struct drm_encoder *
drm_atomic_helper_best_encoder(struct drm_connector *connector);

/* default implementations for state handling */
void drm_atomic_helper_crtc_reset(struct drm_crtc *crtc);
Expand Down

0 comments on commit 9ecb549

Please sign in to comment.