mirror of
https://github.com/torvalds/linux
synced 2024-11-05 18:23:50 +00:00
drm/atomic-helper: Unexport drm_atomic_helper_best_encoder
It's the default. The exported version was kinda a transition state, before we made this the default. To stop new atomic drivers from using it (instead of just relying on the default) let's unexport it. v2: rename the default implementation to a more fitting name and add a comment (Laurent) Signed-off-by: Daniel Vetter <daniel.vetter@intel.com> Cc: Gustavo Padovan <gustavo@padovan.org> Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Cc: Sean Paul <seanpaul@chromium.org> Cc: David Airlie <airlied@linux.ie> Cc: VMware Graphics <linux-graphics-maintainer@vmware.com> Cc: Sinclair Yeh <syeh@vmware.com> Cc: Thomas Hellstrom <thellstrom@vmware.com> Cc: Archit Taneja <architt@codeaurora.org> Cc: Neil Armstrong <narmstrong@baylibre.com> Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Cc: Hans Verkuil <hverkuil@xs4all.nl> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Russell King <rmk+kernel@armlinux.org.uk> Cc: Jernej Skrabec <jernej.skrabec@siol.net> Cc: Jani Nikula <jani.nikula@intel.com> Cc: Pierre-Hugues Husson <phh@phh.me> Cc: Fabio Estevam <fabio.estevam@nxp.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Link: https://patchwork.freedesktop.org/patch/msgid/20181004202446.22905-3-daniel.vetter@ffwll.ch
This commit is contained in:
parent
2b4c1c0512
commit
297e30b5d9
6 changed files with 13 additions and 25 deletions
|
@ -1957,7 +1957,6 @@ static const struct drm_connector_funcs dw_hdmi_connector_funcs = {
|
|||
|
||||
static const struct drm_connector_helper_funcs dw_hdmi_connector_helper_funcs = {
|
||||
.get_modes = dw_hdmi_connector_get_modes,
|
||||
.best_encoder = drm_atomic_helper_best_encoder,
|
||||
};
|
||||
|
||||
static int dw_hdmi_bridge_attach(struct drm_bridge *bridge)
|
||||
|
|
|
@ -92,6 +92,17 @@ drm_atomic_helper_plane_changed(struct drm_atomic_state *state,
|
|||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* For connectors that support multiple encoders, either the
|
||||
* .atomic_best_encoder() or .best_encoder() operation must be implemented.
|
||||
*/
|
||||
static struct drm_encoder *
|
||||
pick_single_encoder_for_connector(struct drm_connector *connector)
|
||||
{
|
||||
WARN_ON(connector->encoder_ids[1]);
|
||||
return drm_encoder_find(connector->dev, NULL, connector->encoder_ids[0]);
|
||||
}
|
||||
|
||||
static int handle_conflicting_encoders(struct drm_atomic_state *state,
|
||||
bool disable_conflicting_encoders)
|
||||
{
|
||||
|
@ -119,7 +130,7 @@ static int handle_conflicting_encoders(struct drm_atomic_state *state,
|
|||
else if (funcs->best_encoder)
|
||||
new_encoder = funcs->best_encoder(connector);
|
||||
else
|
||||
new_encoder = drm_atomic_helper_best_encoder(connector);
|
||||
new_encoder = pick_single_encoder_for_connector(connector);
|
||||
|
||||
if (new_encoder) {
|
||||
if (encoder_mask & drm_encoder_mask(new_encoder)) {
|
||||
|
@ -316,7 +327,7 @@ update_connector_routing(struct drm_atomic_state *state,
|
|||
else if (funcs->best_encoder)
|
||||
new_encoder = funcs->best_encoder(connector);
|
||||
else
|
||||
new_encoder = drm_atomic_helper_best_encoder(connector);
|
||||
new_encoder = pick_single_encoder_for_connector(connector);
|
||||
|
||||
if (!new_encoder) {
|
||||
DRM_DEBUG_ATOMIC("No suitable encoder found for [CONNECTOR:%d:%s]\n",
|
||||
|
@ -3389,23 +3400,6 @@ int drm_atomic_helper_page_flip_target(struct drm_crtc *crtc,
|
|||
}
|
||||
EXPORT_SYMBOL(drm_atomic_helper_page_flip_target);
|
||||
|
||||
/**
|
||||
* 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, NULL, connector->encoder_ids[0]);
|
||||
}
|
||||
EXPORT_SYMBOL(drm_atomic_helper_best_encoder);
|
||||
|
||||
/**
|
||||
* DOC: atomic state reset and initialization
|
||||
*
|
||||
|
|
|
@ -274,7 +274,6 @@ static const struct drm_connector_funcs vmw_legacy_connector_funcs = {
|
|||
|
||||
static const struct
|
||||
drm_connector_helper_funcs vmw_ldu_connector_helper_funcs = {
|
||||
.best_encoder = drm_atomic_helper_best_encoder,
|
||||
};
|
||||
|
||||
/*
|
||||
|
|
|
@ -389,7 +389,6 @@ static const struct drm_connector_funcs vmw_sou_connector_funcs = {
|
|||
|
||||
static const struct
|
||||
drm_connector_helper_funcs vmw_sou_connector_helper_funcs = {
|
||||
.best_encoder = drm_atomic_helper_best_encoder,
|
||||
};
|
||||
|
||||
|
||||
|
|
|
@ -1037,7 +1037,6 @@ static const struct drm_connector_funcs vmw_stdu_connector_funcs = {
|
|||
|
||||
static const struct
|
||||
drm_connector_helper_funcs vmw_stdu_connector_helper_funcs = {
|
||||
.best_encoder = drm_atomic_helper_best_encoder,
|
||||
};
|
||||
|
||||
|
||||
|
|
|
@ -144,8 +144,6 @@ int drm_atomic_helper_page_flip_target(
|
|||
uint32_t flags,
|
||||
uint32_t target,
|
||||
struct drm_modeset_acquire_ctx *ctx);
|
||||
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);
|
||||
|
|
Loading…
Reference in a new issue