Commit 4e910d9d authored by Sam Ravnborg's avatar Sam Ravnborg Committed by Maxime Ripard

drm/bridge: Drop unused drm_bridge_chain functions

The drm_bridge_chain_{pre_enable,enable,disable,post_disable} has no
users left and we have atomic variants that should be used.
Drop them so they do not gain new users.

Adjust a few comments to avoid references to the dropped functions.
Signed-off-by: default avatarSam Ravnborg <sam@ravnborg.org>
Reviewed-by: default avatarMaxime Ripard <mripard@kernel.org>
Reviewed-by: default avatarLaurent Pinchart <laurent.pinchart@ideasonboard.com>
Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Cc: Maxime Ripard <mripard@kernel.org>
Cc: Thomas Zimmermann <tzimmermann@suse.de>
Cc: Andrzej Hajda <a.hajda@samsung.com>
Cc: Neil Armstrong <narmstrong@baylibre.com>
Cc: Robert Foss <robert.foss@linaro.org>
Cc: Daniel Vetter <daniel@ffwll.ch>
Signed-off-by: default avatarDave Stevenson <dave.stevenson@raspberrypi.com>
Link: https://lore.kernel.org/r/20221205173328.1395350-4-dave.stevenson@raspberrypi.comSigned-off-by: default avatarMaxime Ripard <maxime@cerno.tech>
parent 2a4d4888
...@@ -509,61 +509,6 @@ drm_bridge_chain_mode_valid(struct drm_bridge *bridge, ...@@ -509,61 +509,6 @@ drm_bridge_chain_mode_valid(struct drm_bridge *bridge,
} }
EXPORT_SYMBOL(drm_bridge_chain_mode_valid); EXPORT_SYMBOL(drm_bridge_chain_mode_valid);
/**
* drm_bridge_chain_disable - disables all bridges in the encoder chain
* @bridge: bridge control structure
*
* Calls &drm_bridge_funcs.disable op for all the bridges in the encoder
* chain, starting from the last bridge to the first. These are called before
* calling the encoder's prepare op.
*
* Note: the bridge passed should be the one closest to the encoder
*/
void drm_bridge_chain_disable(struct drm_bridge *bridge)
{
struct drm_encoder *encoder;
struct drm_bridge *iter;
if (!bridge)
return;
encoder = bridge->encoder;
list_for_each_entry_reverse(iter, &encoder->bridge_chain, chain_node) {
if (iter->funcs->disable)
iter->funcs->disable(iter);
if (iter == bridge)
break;
}
}
EXPORT_SYMBOL(drm_bridge_chain_disable);
/**
* drm_bridge_chain_post_disable - cleans up after disabling all bridges in the
* encoder chain
* @bridge: bridge control structure
*
* Calls &drm_bridge_funcs.post_disable op for all the bridges in the
* encoder chain, starting from the first bridge to the last. These are called
* after completing the encoder's prepare op.
*
* Note: the bridge passed should be the one closest to the encoder
*/
void drm_bridge_chain_post_disable(struct drm_bridge *bridge)
{
struct drm_encoder *encoder;
if (!bridge)
return;
encoder = bridge->encoder;
list_for_each_entry_from(bridge, &encoder->bridge_chain, chain_node) {
if (bridge->funcs->post_disable)
bridge->funcs->post_disable(bridge);
}
}
EXPORT_SYMBOL(drm_bridge_chain_post_disable);
/** /**
* drm_bridge_chain_mode_set - set proposed mode for all bridges in the * drm_bridge_chain_mode_set - set proposed mode for all bridges in the
* encoder chain * encoder chain
...@@ -593,61 +538,6 @@ void drm_bridge_chain_mode_set(struct drm_bridge *bridge, ...@@ -593,61 +538,6 @@ void drm_bridge_chain_mode_set(struct drm_bridge *bridge,
} }
EXPORT_SYMBOL(drm_bridge_chain_mode_set); EXPORT_SYMBOL(drm_bridge_chain_mode_set);
/**
* drm_bridge_chain_pre_enable - prepares for enabling all bridges in the
* encoder chain
* @bridge: bridge control structure
*
* Calls &drm_bridge_funcs.pre_enable op for all the bridges in the encoder
* chain, starting from the last bridge to the first. These are called
* before calling the encoder's commit op.
*
* Note: the bridge passed should be the one closest to the encoder
*/
void drm_bridge_chain_pre_enable(struct drm_bridge *bridge)
{
struct drm_encoder *encoder;
struct drm_bridge *iter;
if (!bridge)
return;
encoder = bridge->encoder;
list_for_each_entry_reverse(iter, &encoder->bridge_chain, chain_node) {
if (iter->funcs->pre_enable)
iter->funcs->pre_enable(iter);
if (iter == bridge)
break;
}
}
EXPORT_SYMBOL(drm_bridge_chain_pre_enable);
/**
* drm_bridge_chain_enable - enables all bridges in the encoder chain
* @bridge: bridge control structure
*
* Calls &drm_bridge_funcs.enable op for all the bridges in the encoder
* chain, starting from the first bridge to the last. These are called
* after completing the encoder's commit op.
*
* Note that the bridge passed should be the one closest to the encoder
*/
void drm_bridge_chain_enable(struct drm_bridge *bridge)
{
struct drm_encoder *encoder;
if (!bridge)
return;
encoder = bridge->encoder;
list_for_each_entry_from(bridge, &encoder->bridge_chain, chain_node) {
if (bridge->funcs->enable)
bridge->funcs->enable(bridge);
}
}
EXPORT_SYMBOL(drm_bridge_chain_enable);
/** /**
* drm_atomic_bridge_chain_disable - disables all bridges in the encoder chain * drm_atomic_bridge_chain_disable - disables all bridges in the encoder chain
* @bridge: bridge control structure * @bridge: bridge control structure
......
...@@ -297,12 +297,6 @@ struct drm_bridge_funcs { ...@@ -297,12 +297,6 @@ struct drm_bridge_funcs {
* not enable the display link feeding the next bridge in the chain (if * not enable the display link feeding the next bridge in the chain (if
* there is one) when this callback is called. * there is one) when this callback is called.
* *
* Note that this function will only be invoked in the context of an
* atomic commit. It will not be invoked from
* &drm_bridge_chain_pre_enable. It would be prudent to also provide an
* implementation of @pre_enable if you are expecting driver calls into
* &drm_bridge_chain_pre_enable.
*
* The @atomic_pre_enable callback is optional. * The @atomic_pre_enable callback is optional.
*/ */
void (*atomic_pre_enable)(struct drm_bridge *bridge, void (*atomic_pre_enable)(struct drm_bridge *bridge,
...@@ -323,11 +317,6 @@ struct drm_bridge_funcs { ...@@ -323,11 +317,6 @@ struct drm_bridge_funcs {
* callback must enable the display link feeding the next bridge in the * callback must enable the display link feeding the next bridge in the
* chain if there is one. * chain if there is one.
* *
* Note that this function will only be invoked in the context of an
* atomic commit. It will not be invoked from &drm_bridge_chain_enable.
* It would be prudent to also provide an implementation of @enable if
* you are expecting driver calls into &drm_bridge_chain_enable.
*
* The @atomic_enable callback is optional. * The @atomic_enable callback is optional.
*/ */
void (*atomic_enable)(struct drm_bridge *bridge, void (*atomic_enable)(struct drm_bridge *bridge,
...@@ -345,12 +334,6 @@ struct drm_bridge_funcs { ...@@ -345,12 +334,6 @@ struct drm_bridge_funcs {
* The bridge can assume that the display pipe (i.e. clocks and timing * The bridge can assume that the display pipe (i.e. clocks and timing
* signals) feeding it is still running when this callback is called. * signals) feeding it is still running when this callback is called.
* *
* Note that this function will only be invoked in the context of an
* atomic commit. It will not be invoked from
* &drm_bridge_chain_disable. It would be prudent to also provide an
* implementation of @disable if you are expecting driver calls into
* &drm_bridge_chain_disable.
*
* The @atomic_disable callback is optional. * The @atomic_disable callback is optional.
*/ */
void (*atomic_disable)(struct drm_bridge *bridge, void (*atomic_disable)(struct drm_bridge *bridge,
...@@ -370,13 +353,6 @@ struct drm_bridge_funcs { ...@@ -370,13 +353,6 @@ struct drm_bridge_funcs {
* signals) feeding it is no longer running when this callback is * signals) feeding it is no longer running when this callback is
* called. * called.
* *
* Note that this function will only be invoked in the context of an
* atomic commit. It will not be invoked from
* &drm_bridge_chain_post_disable.
* It would be prudent to also provide an implementation of
* @post_disable if you are expecting driver calls into
* &drm_bridge_chain_post_disable.
*
* The @atomic_post_disable callback is optional. * The @atomic_post_disable callback is optional.
*/ */
void (*atomic_post_disable)(struct drm_bridge *bridge, void (*atomic_post_disable)(struct drm_bridge *bridge,
...@@ -876,13 +852,9 @@ enum drm_mode_status ...@@ -876,13 +852,9 @@ enum drm_mode_status
drm_bridge_chain_mode_valid(struct drm_bridge *bridge, drm_bridge_chain_mode_valid(struct drm_bridge *bridge,
const struct drm_display_info *info, const struct drm_display_info *info,
const struct drm_display_mode *mode); const struct drm_display_mode *mode);
void drm_bridge_chain_disable(struct drm_bridge *bridge);
void drm_bridge_chain_post_disable(struct drm_bridge *bridge);
void drm_bridge_chain_mode_set(struct drm_bridge *bridge, void drm_bridge_chain_mode_set(struct drm_bridge *bridge,
const struct drm_display_mode *mode, const struct drm_display_mode *mode,
const struct drm_display_mode *adjusted_mode); const struct drm_display_mode *adjusted_mode);
void drm_bridge_chain_pre_enable(struct drm_bridge *bridge);
void drm_bridge_chain_enable(struct drm_bridge *bridge);
int drm_atomic_bridge_chain_check(struct drm_bridge *bridge, int drm_atomic_bridge_chain_check(struct drm_bridge *bridge,
struct drm_crtc_state *crtc_state, struct drm_crtc_state *crtc_state,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment