Skip to content

Commit d77ad51

Browse files
committed
drm/bridge: add drm_bridge_chain_get_last_bridge()
Add an equivalent of drm_bridge_chain_get_first_bridge() to get the last bridge. Reviewed-by: Maxime Ripard <mripard@kernel.org> Link: https://lore.kernel.org/r/20250801-drm-bridge-alloc-getput-drm_bridge_get_next_bridge-v2-2-888912b0be13@bootlin.com Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
1 parent cb86408 commit d77ad51

1 file changed

Lines changed: 18 additions & 0 deletions

File tree

include/drm/drm_bridge.h

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1410,6 +1410,24 @@ drm_bridge_chain_get_first_bridge(struct drm_encoder *encoder)
14101410
struct drm_bridge, chain_node));
14111411
}
14121412

1413+
/**
1414+
* drm_bridge_chain_get_last_bridge() - Get the last bridge in the chain
1415+
* @encoder: encoder object
1416+
*
1417+
* The refcount of the returned bridge is incremented. Use drm_bridge_put()
1418+
* when done with it.
1419+
*
1420+
* RETURNS:
1421+
* the last bridge in the chain, or NULL if @encoder has no bridge attached
1422+
* to it.
1423+
*/
1424+
static inline struct drm_bridge *
1425+
drm_bridge_chain_get_last_bridge(struct drm_encoder *encoder)
1426+
{
1427+
return drm_bridge_get(list_last_entry_or_null(&encoder->bridge_chain,
1428+
struct drm_bridge, chain_node));
1429+
}
1430+
14131431
/**
14141432
* drm_for_each_bridge_in_chain() - Iterate over all bridges present in a chain
14151433
* @encoder: the encoder to iterate bridges on

0 commit comments

Comments
 (0)