Received: by 2002:a05:6a10:a852:0:0:0:0 with SMTP id d18csp1601035pxy; Thu, 6 May 2021 11:09:57 -0700 (PDT) X-Google-Smtp-Source: ABdhPJx3hP2GZ/Wfp5mvYlTxCJJ/2yFznvYqwrNLMuPjRsdGBDgo91FRlL9xvkxVMrhSBqzb1aau X-Received: by 2002:a50:ba88:: with SMTP id x8mr6765885ede.28.1620324597718; Thu, 06 May 2021 11:09:57 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1620324597; cv=none; d=google.com; s=arc-20160816; b=szupc/E4LYQg1yiMbQykOMAYheE1zPOibAoGgHNWfDM0azjHPy8VCpvtnep1K5cwpL KyFHSd3rMdqcFXZeci1iI/aUrYIUBaVm/AVIUdvM86w8tlek1aNp+my1uk5dp4C6X6eN M8qWE0yIBKDGgOJAnX2GHs8y2sSmD5DhWJozng9O3lFENthuSdD/OosHrkcVCYTsgrAf RKhNSWmKsJi2K3/zE6hK1tey7k7cL0OcC/XpGu3Oyc21lxgsU1qq/PKB1LGiCUzhkmfl QVvaBG5J2YQw4UUr86EzeIRGQHFwEH4+PyR1peMLrwh2e7LLDYKOVmBcajEqXoUbjzWJ /P8g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:message-id:date:references :organization:in-reply-to:subject:to:from:ironport-sdr:ironport-sdr; bh=ijqljswlTfXg5WLuzCS9iFiqWhqJFP+ybT5mVitIV80=; b=LFe/Tq0GvTxksbu5z+amLo1KJW6IFQxStCvfewDyHRfqYyg642T1nvPDtDXphuR2+/ cR23lTpC2JPavi5p6IzRAnPt4q/xC3thnovcEr3CX2HhpU4qbJ7z7/5fA4RjWSTHd1O/ Dtu9yx4Fu7TJBNbCStNs0HhgWyn/ceoGWEUnnOu3vzMdWw7fN05kwljY1RpFmNlnOZj0 F+AecQ+F+kq2STBMnjKqoWyTH3tdfB0ngQwfWs7iGKtvxLF2vZBlR4Bdf/KavEcE5CRJ 9F3InYTQwvS2DHEo5cL7ebbmhPacmFngaIphrjy0J+e0EmFnsU2sY7lhoyVw52W9a0bv YYyQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id h12si3049305ejl.147.2021.05.06.11.09.32; Thu, 06 May 2021 11:09:57 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234054AbhEFKUv (ORCPT + 99 others); Thu, 6 May 2021 06:20:51 -0400 Received: from mga05.intel.com ([192.55.52.43]:46667 "EHLO mga05.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231976AbhEFKUu (ORCPT ); Thu, 6 May 2021 06:20:50 -0400 IronPort-SDR: ymccfx1WWiU5+6wJZOK2+OuUwZYUAbZpeLeMp/+qrlGBtIryEYA5uOZ8N0YSQLGaj1P78QW1Ka SMtgK5981vvg== X-IronPort-AV: E=McAfee;i="6200,9189,9975"; a="283876528" X-IronPort-AV: E=Sophos;i="5.82,277,1613462400"; d="scan'208";a="283876528" Received: from orsmga008.jf.intel.com ([10.7.209.65]) by fmsmga105.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 06 May 2021 03:19:52 -0700 IronPort-SDR: 2A5Ljam3LnzMWnpH2wyu5qYcOWIQYB5VoR7Ikh1p1P1PAc8QD7oFU9TCiD7RBkX9diy98QEvlr 97zmELTih3Sg== X-IronPort-AV: E=Sophos;i="5.82,277,1613462400"; d="scan'208";a="434281726" Received: from tchrzano-mobl.ger.corp.intel.com (HELO localhost) ([10.252.42.214]) by orsmga008-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 06 May 2021 03:19:49 -0700 From: Jani Nikula To: Werner Sembach , wse@tuxedocomputers.com, ville.syrjala@linux.intel.com, airlied@linux.ie, daniel@ffwll.ch, intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org Subject: Re: [Intel-gfx] [PATCH 1/3] New function to avoid duplicate code in upcomming commits In-Reply-To: <20210505172401.1453178-2-wse@tuxedocomputers.com> Organization: Intel Finland Oy - BIC 0357606-4 - Westendinkatu 7, 02160 Espoo References: <20210505172401.1453178-1-wse@tuxedocomputers.com> <20210505172401.1453178-2-wse@tuxedocomputers.com> Date: Thu, 06 May 2021 13:19:46 +0300 Message-ID: <87v97ww4e5.fsf@intel.com> MIME-Version: 1.0 Content-Type: text/plain Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, 05 May 2021, Werner Sembach wrote: > Moves some checks that later will be performed 2 times to an own fuction. This > avoids duplicate code later on. > > Signed-off-by: Werner Sembach > --- > > From 42a4a3a7d9ea9948b4071f406e7fcae23bfa0bdf Mon Sep 17 00:00:00 2001 > From: Werner Sembach > Date: Mon, 3 May 2021 14:35:39 +0200 > Subject: [PATCH 1/3] New function to avoid duplicate code in upcomming commits What are you using to generate and send the patches? This looks like unnecessary cruft, and our CI fails to apply and test the changes. BR, Jani. > > --- > drivers/gpu/drm/i915/display/intel_hdmi.c | 41 ++++++++++++++--------- > 1 file changed, 26 insertions(+), 15 deletions(-) > > diff --git a/drivers/gpu/drm/i915/display/intel_hdmi.c b/drivers/gpu/drm/i915/display/intel_hdmi.c > index 46de56af33db..576d3d910d06 100644 > --- a/drivers/gpu/drm/i915/display/intel_hdmi.c > +++ b/drivers/gpu/drm/i915/display/intel_hdmi.c > @@ -1861,6 +1861,31 @@ static int intel_hdmi_port_clock(int clock, int bpc) > return clock * bpc / 8; > } > > +static enum drm_mode_status > +intel_hdmi_mode_clock_valid(struct intel_hdmi *hdmi, int clock, bool has_hdmi_sink) > +{ > + struct drm_device *dev = intel_hdmi_to_dev(hdmi); > + struct drm_i915_private *dev_priv = to_i915(dev); > + enum drm_mode_status status; > + > + /* check if we can do 8bpc */ > + status = hdmi_port_clock_valid(hdmi, clock, true, has_hdmi_sink); > + > + if (has_hdmi_sink) { > + /* if we can't do 8bpc we may still be able to do 12bpc */ > + if (status != MODE_OK && !HAS_GMCH(dev_priv)) > + status = hdmi_port_clock_valid(hdmi, clock * 3 / 2, > + true, has_hdmi_sink); > + > + /* if we can't do 8,12bpc we may still be able to do 10bpc */ > + if (status != MODE_OK && INTEL_GEN(dev_priv) >= 11) > + status = hdmi_port_clock_valid(hdmi, clock * 5 / 4, > + true, has_hdmi_sink); > + } > + > + return status; > +} > + > static enum drm_mode_status > intel_hdmi_mode_valid(struct drm_connector *connector, > struct drm_display_mode *mode) > @@ -1891,21 +1916,7 @@ intel_hdmi_mode_valid(struct drm_connector *connector, > if (drm_mode_is_420_only(&connector->display_info, mode)) > clock /= 2; > > - /* check if we can do 8bpc */ > - status = hdmi_port_clock_valid(hdmi, intel_hdmi_port_clock(clock, 8), > - true, has_hdmi_sink); > - > - if (has_hdmi_sink) { > - /* if we can't do 8bpc we may still be able to do 12bpc */ > - if (status != MODE_OK && !HAS_GMCH(dev_priv)) > - status = hdmi_port_clock_valid(hdmi, intel_hdmi_port_clock(clock, 12), > - true, has_hdmi_sink); > - > - /* if we can't do 8,12bpc we may still be able to do 10bpc */ > - if (status != MODE_OK && DISPLAY_VER(dev_priv) >= 11) > - status = hdmi_port_clock_valid(hdmi, intel_hdmi_port_clock(clock, 10), > - true, has_hdmi_sink); > - } > + status = intel_hdmi_mode_clock_valid(hdmi, clock, has_hdmi_sink); > if (status != MODE_OK) > return status; -- Jani Nikula, Intel Open Source Graphics Center