On Wed, Jul 09, 2025 at 06:48:03PM +0200, Luca Ceresoli wrote:
> Use drm_bridge_chain_get_last_bridge() instead of open coding a loop with
> two invocations of drm_bridge_get_next_bridge() per iteration.
> 
> Besides being cleaner and more efficient, this change is necessary in
> preparation for drm_bridge_get_next_bridge() to get a reference to the
> returned bridge.
> 
> Signed-off-by: Luca Ceresoli <[email protected]>
> ---
>  drivers/gpu/drm/omapdrm/omap_drv.c | 8 ++++----
>  1 file changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/gpu/drm/omapdrm/omap_drv.c 
> b/drivers/gpu/drm/omapdrm/omap_drv.c
> index 
> 054b71dba6a75b8c42198c4b102a093f43a675a2..3bbcec01428a6f290afdfa40ef6f79629539a584
>  100644
> --- a/drivers/gpu/drm/omapdrm/omap_drv.c
> +++ b/drivers/gpu/drm/omapdrm/omap_drv.c
> @@ -378,12 +378,12 @@ static int omap_display_id(struct omap_dss_device 
> *output)
>       struct device_node *node = NULL;
>  
>       if (output->bridge) {
> -             struct drm_bridge *bridge = output->bridge;
> -
> -             while (drm_bridge_get_next_bridge(bridge))
> -                     bridge = drm_bridge_get_next_bridge(bridge);
> +             struct drm_bridge *bridge =
> +                     
> drm_bridge_chain_get_last_bridge(output->bridge->encoder);
>  
>               node = bridge->of_node;
> +
> +             drm_bridge_put(bridge);

Any reason you're not using __free(drm_bridge_put) here?

Maxime

Attachment: signature.asc
Description: PGP signature

Reply via email to