[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <fdf03599-9792-94c3-5f05-bb8458bb1cee@baylibre.com>
Date: Tue, 30 May 2017 09:28:37 +0200
From: Neil Armstrong <narmstrong@...libre.com>
To: Jose Abreu <Jose.Abreu@...opsys.com>,
dri-devel@...ts.freedesktop.org, linux-kernel@...r.kernel.org
Cc: Daniel Vetter <daniel.vetter@...ll.ch>,
Carlos Palminha <CARLOS.PALMINHA@...opsys.com>,
Laurent Pinchart <Laurent.pinchart@...asonboard.com>
Subject: Re: [PATCH v5 06/10] drm/bridge: analogix-anx78xx: Use
bridge->mode_valid() callback
On 05/25/2017 04:19 PM, Jose Abreu wrote:
> Now that we have a callback to check if bridge supports a given mode
> we can use it in Analogix bridge so that we restrict the number of
> probbed modes to the ones we can actually display.
>
> Also, there is no need to use mode_fixup() callback as mode_valid()
> will handle the mode validation.
>
> NOTE: Only compile tested.
>
> Signed-off-by: Jose Abreu <joabreu@...opsys.com>
> Cc: Carlos Palminha <palminha@...opsys.com>
> Cc: Daniel Vetter <daniel.vetter@...ll.ch>
> Cc: Archit Taneja <architt@...eaurora.org>
> Cc: Andrzej Hajda <a.hajda@...sung.com>
> Cc: Laurent Pinchart <Laurent.pinchart@...asonboard.com>
> Cc: David Airlie <airlied@...ux.ie>
> ---
> drivers/gpu/drm/bridge/analogix-anx78xx.c | 13 ++++++-------
> 1 file changed, 6 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/gpu/drm/bridge/analogix-anx78xx.c b/drivers/gpu/drm/bridge/analogix-anx78xx.c
> index a2a8236..cf69a1c 100644
> --- a/drivers/gpu/drm/bridge/analogix-anx78xx.c
> +++ b/drivers/gpu/drm/bridge/analogix-anx78xx.c
> @@ -1061,18 +1061,17 @@ static int anx78xx_bridge_attach(struct drm_bridge *bridge)
> return 0;
> }
>
> -static bool anx78xx_bridge_mode_fixup(struct drm_bridge *bridge,
> - const struct drm_display_mode *mode,
> - struct drm_display_mode *adjusted_mode)
> +enum drm_mode_status anx78xx_bridge_mode_valid(struct drm_bridge *bridge,
> + const struct drm_display_mode *mode)
> {
> if (mode->flags & DRM_MODE_FLAG_INTERLACE)
> - return false;
> + return MODE_NO_INTERLACE;
>
> /* Max 1200p at 5.4 Ghz, one lane */
> if (mode->clock > 154000)
> - return false;
> + return MODE_CLOCK_HIGH;
>
> - return true;
> + return MODE_OK;
> }
>
> static void anx78xx_bridge_disable(struct drm_bridge *bridge)
> @@ -1129,7 +1128,7 @@ static void anx78xx_bridge_enable(struct drm_bridge *bridge)
>
> static const struct drm_bridge_funcs anx78xx_bridge_funcs = {
> .attach = anx78xx_bridge_attach,
> - .mode_fixup = anx78xx_bridge_mode_fixup,
> + .mode_valid = anx78xx_bridge_mode_valid,
> .disable = anx78xx_bridge_disable,
> .mode_set = anx78xx_bridge_mode_set,
> .enable = anx78xx_bridge_enable,
>
Reviewed-by: Neil Armstrong <narmstrong@...libre.com>
Powered by blists - more mailing lists