From: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
To: Werner Sembach <wse@tuxedocomputers.com>
Cc: airlied@linux.ie, intel-gfx@lists.freedesktop.org,
dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org
Subject: Re: [Intel-gfx] [PATCH v6 1/3] drm/i915/display: New function to avoid duplicate code in upcomming commits
Date: Fri, 7 May 2021 20:47:08 +0300 [thread overview]
Message-ID: <YJV9HA5IuQW+KWOf@intel.com> (raw)
In-Reply-To: <20210507084903.28877-2-wse@tuxedocomputers.com>
On Fri, May 07, 2021 at 10:49:01AM +0200, Werner Sembach wrote:
> Moves some checks that later will be performed 2 times to an own function.
> This avoids duplicate code later on.
>
> Signed-off-by: Werner Sembach <wse@tuxedocomputers.com>
> ---
> 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,
Seems we've lost intel_hdmi_port_clock() here somehow.
> + 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,
Also here.
> + 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;
>
> --
> 2.25.1
--
Ville Syrjälä
Intel
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
WARNING: multiple messages have this Message-ID (diff)
From: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
To: Werner Sembach <wse@tuxedocomputers.com>
Cc: airlied@linux.ie, intel-gfx@lists.freedesktop.org,
dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH v6 1/3] drm/i915/display: New function to avoid duplicate code in upcomming commits
Date: Fri, 7 May 2021 20:47:08 +0300 [thread overview]
Message-ID: <YJV9HA5IuQW+KWOf@intel.com> (raw)
In-Reply-To: <20210507084903.28877-2-wse@tuxedocomputers.com>
On Fri, May 07, 2021 at 10:49:01AM +0200, Werner Sembach wrote:
> Moves some checks that later will be performed 2 times to an own function.
> This avoids duplicate code later on.
>
> Signed-off-by: Werner Sembach <wse@tuxedocomputers.com>
> ---
> 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,
Seems we've lost intel_hdmi_port_clock() here somehow.
> + 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,
Also here.
> + 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;
>
> --
> 2.25.1
--
Ville Syrjälä
Intel
WARNING: multiple messages have this Message-ID (diff)
From: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
To: Werner Sembach <wse@tuxedocomputers.com>
Cc: airlied@linux.ie, daniel@ffwll.ch,
intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH v6 1/3] drm/i915/display: New function to avoid duplicate code in upcomming commits
Date: Fri, 7 May 2021 20:47:08 +0300 [thread overview]
Message-ID: <YJV9HA5IuQW+KWOf@intel.com> (raw)
In-Reply-To: <20210507084903.28877-2-wse@tuxedocomputers.com>
On Fri, May 07, 2021 at 10:49:01AM +0200, Werner Sembach wrote:
> Moves some checks that later will be performed 2 times to an own function.
> This avoids duplicate code later on.
>
> Signed-off-by: Werner Sembach <wse@tuxedocomputers.com>
> ---
> 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,
Seems we've lost intel_hdmi_port_clock() here somehow.
> + 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,
Also here.
> + 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;
>
> --
> 2.25.1
--
Ville Syrjälä
Intel
next prev parent reply other threads:[~2021-05-07 17:47 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-05-06 17:23 [Intel-gfx] [PATCH 0/3] drm/i915/display: Try YCbCr420 color when RGB fails Werner Sembach
2021-05-06 17:23 ` Werner Sembach
2021-05-06 17:23 ` [Intel-gfx] [PATCH 1/3] drm/i915/display: New function to avoid duplicate code in upcomming commits Werner Sembach
2021-05-06 17:23 ` Werner Sembach
2021-05-06 17:23 ` [Intel-gfx] [PATCH 2/3] drm/i915/display: Restructure output format computation for better expandability Werner Sembach
2021-05-06 17:23 ` Werner Sembach
2021-05-06 17:23 ` [Intel-gfx] [PATCH 3/3] drm/i915/display: Use YCbCr420 as fallback when RGB fails Werner Sembach
2021-05-06 17:23 ` Werner Sembach
2021-05-06 17:35 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for drm/i915/display: Try YCbCr420 color " Patchwork
2021-05-06 18:04 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork
2021-05-06 19:21 ` [Intel-gfx] ✓ Fi.CI.IGT: " Patchwork
2021-05-07 8:49 ` [Intel-gfx] [PATCH v6 0/3] " Werner Sembach
2021-05-07 8:49 ` Werner Sembach
2021-05-07 8:49 ` [Intel-gfx] [PATCH v6 1/3] drm/i915/display: New function to avoid duplicate code in upcomming commits Werner Sembach
2021-05-07 8:49 ` Werner Sembach
2021-05-07 17:47 ` Ville Syrjälä [this message]
2021-05-07 17:47 ` Ville Syrjälä
2021-05-07 17:47 ` Ville Syrjälä
2021-05-07 20:33 ` [Intel-gfx] " Werner Sembach
2021-05-07 20:33 ` Werner Sembach
2021-05-07 20:33 ` Werner Sembach
2021-05-07 8:49 ` [Intel-gfx] [PATCH v6 2/3] drm/i915/display: Restructure output format computation for better expandability Werner Sembach
2021-05-07 8:49 ` Werner Sembach
2021-05-07 17:52 ` [Intel-gfx] " Ville Syrjälä
2021-05-07 17:52 ` Ville Syrjälä
2021-05-07 17:52 ` Ville Syrjälä
2021-05-07 17:56 ` [Intel-gfx] " Randy Dunlap
2021-05-07 17:56 ` Randy Dunlap
2021-05-07 17:56 ` Randy Dunlap
2021-05-07 21:24 ` [Intel-gfx] " Werner Sembach
2021-05-07 21:24 ` Werner Sembach
2021-05-07 21:24 ` Werner Sembach
2021-05-07 8:49 ` [Intel-gfx] [PATCH v6 3/3] drm/i915/display: Use YCbCr420 as fallback when RGB fails Werner Sembach
2021-05-07 8:49 ` Werner Sembach
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=YJV9HA5IuQW+KWOf@intel.com \
--to=ville.syrjala@linux.intel.com \
--cc=airlied@linux.ie \
--cc=dri-devel@lists.freedesktop.org \
--cc=intel-gfx@lists.freedesktop.org \
--cc=linux-kernel@vger.kernel.org \
--cc=wse@tuxedocomputers.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.