From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751094AbdE3H3y (ORCPT ); Tue, 30 May 2017 03:29:54 -0400 Received: from mail-wm0-f53.google.com ([74.125.82.53]:36480 "EHLO mail-wm0-f53.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750905AbdE3H3w (ORCPT ); Tue, 30 May 2017 03:29:52 -0400 Subject: Re: [PATCH v5 08/10] drm/arm: malidp: Use crtc->mode_valid() callback To: Jose Abreu , dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org References: Cc: Daniel Vetter , Liviu Dudau , Carlos Palminha From: Neil Armstrong Organization: Baylibre Message-ID: <656f3894-58cd-d70c-78ae-b537a7480386@baylibre.com> Date: Tue, 30 May 2017 09:29:44 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.8.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 05/25/2017 04:19 PM, Jose Abreu wrote: > Now that we have a callback to check if crtc supports a given mode > we can use it in malidp so that we restrict the number of probbed > modes to the ones we can actually display. > > Also, remove the mode_fixup() callback as this is no longer needed > because mode_valid() will be called before. > > NOTE: Not even compiled tested > > Signed-off-by: Jose Abreu > Cc: Carlos Palminha > Cc: Daniel Vetter > Cc: Liviu Dudau > Cc: Brian Starkey > Cc: David Airlie > --- > drivers/gpu/drm/arm/malidp_crtc.c | 11 +++++------ > 1 file changed, 5 insertions(+), 6 deletions(-) > > diff --git a/drivers/gpu/drm/arm/malidp_crtc.c b/drivers/gpu/drm/arm/malidp_crtc.c > index 9446a67..4bb38a2 100644 > --- a/drivers/gpu/drm/arm/malidp_crtc.c > +++ b/drivers/gpu/drm/arm/malidp_crtc.c > @@ -22,9 +22,8 @@ > #include "malidp_drv.h" > #include "malidp_hw.h" > > -static bool malidp_crtc_mode_fixup(struct drm_crtc *crtc, > - const struct drm_display_mode *mode, > - struct drm_display_mode *adjusted_mode) > +static enum drm_mode_status malidp_crtc_mode_valid(struct drm_crtc *crtc, > + const struct drm_display_mode *mode) > { > struct malidp_drm *malidp = crtc_to_malidp_device(crtc); > struct malidp_hw_device *hwdev = malidp->dev; > @@ -40,11 +39,11 @@ static bool malidp_crtc_mode_fixup(struct drm_crtc *crtc, > if (rate != req_rate) { > DRM_DEBUG_DRIVER("pxlclk doesn't support %ld Hz\n", > req_rate); > - return false; > + return MODE_NOCLOCK; > } > } > > - return true; > + return MODE_OK; > } > > static void malidp_crtc_enable(struct drm_crtc *crtc) > @@ -408,7 +407,7 @@ static int malidp_crtc_atomic_check(struct drm_crtc *crtc, > } > > static const struct drm_crtc_helper_funcs malidp_crtc_helper_funcs = { > - .mode_fixup = malidp_crtc_mode_fixup, > + .mode_valid = malidp_crtc_mode_valid, > .enable = malidp_crtc_enable, > .disable = malidp_crtc_disable, > .atomic_check = malidp_crtc_atomic_check, > Reviewed-by: Neil Armstrong