All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jani Nikula <jani.nikula@linux.intel.com>
To: Ville Syrjala <ville.syrjala@linux.intel.com>,
	intel-gfx@lists.freedesktop.org
Cc: stable@vger.kernel.org
Subject: Re: [Intel-gfx] [PATCH 1/8] drm/i915/sdvo: Filter out invalid outputs more sensibly
Date: Thu, 27 Oct 2022 17:32:42 +0300	[thread overview]
Message-ID: <87sfj9cp6d.fsf@intel.com> (raw)
In-Reply-To: <20221026101134.20865-2-ville.syrjala@linux.intel.com>

On Wed, 26 Oct 2022, Ville Syrjala <ville.syrjala@linux.intel.com> wrote:
> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
>
> We try to filter out the corresponding xxx1 output
> if the xxx0 output is not present. But the way that is
> being done is pretty awkward. Make it less so.
>
> Cc: stable@vger.kernel.org
> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>

Reviewed-by: Jani Nikula <jani.nikula@intel.com>

> ---
>  drivers/gpu/drm/i915/display/intel_sdvo.c | 29 ++++++++++++++++++-----
>  1 file changed, 23 insertions(+), 6 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_sdvo.c b/drivers/gpu/drm/i915/display/intel_sdvo.c
> index cf8e80936d8e..c6200a91a777 100644
> --- a/drivers/gpu/drm/i915/display/intel_sdvo.c
> +++ b/drivers/gpu/drm/i915/display/intel_sdvo.c
> @@ -2925,16 +2925,33 @@ intel_sdvo_lvds_init(struct intel_sdvo *intel_sdvo, int device)
>  	return false;
>  }
>  
> -static bool
> -intel_sdvo_output_setup(struct intel_sdvo *intel_sdvo, u16 flags)
> +static u16 intel_sdvo_filter_output_flags(u16 flags)
>  {
> +	flags &= SDVO_OUTPUT_MASK;
> +
>  	/* SDVO requires XXX1 function may not exist unless it has XXX0 function.*/
> +	if (!(flags & SDVO_OUTPUT_TMDS0))
> +		flags &= ~SDVO_OUTPUT_TMDS1;
> +
> +	if (!(flags & SDVO_OUTPUT_RGB0))
> +		flags &= ~SDVO_OUTPUT_RGB1;
> +
> +	if (!(flags & SDVO_OUTPUT_LVDS0))
> +		flags &= ~SDVO_OUTPUT_LVDS1;
> +
> +	return flags;
> +}
> +
> +static bool
> +intel_sdvo_output_setup(struct intel_sdvo *intel_sdvo, u16 flags)
> +{
> +	flags = intel_sdvo_filter_output_flags(flags);
>  
>  	if (flags & SDVO_OUTPUT_TMDS0)
>  		if (!intel_sdvo_dvi_init(intel_sdvo, 0))
>  			return false;
>  
> -	if ((flags & SDVO_TMDS_MASK) == SDVO_TMDS_MASK)
> +	if (flags & SDVO_OUTPUT_TMDS1)
>  		if (!intel_sdvo_dvi_init(intel_sdvo, 1))
>  			return false;
>  
> @@ -2955,7 +2972,7 @@ intel_sdvo_output_setup(struct intel_sdvo *intel_sdvo, u16 flags)
>  		if (!intel_sdvo_analog_init(intel_sdvo, 0))
>  			return false;
>  
> -	if ((flags & SDVO_RGB_MASK) == SDVO_RGB_MASK)
> +	if (flags & SDVO_OUTPUT_RGB1)
>  		if (!intel_sdvo_analog_init(intel_sdvo, 1))
>  			return false;
>  
> @@ -2963,11 +2980,11 @@ intel_sdvo_output_setup(struct intel_sdvo *intel_sdvo, u16 flags)
>  		if (!intel_sdvo_lvds_init(intel_sdvo, 0))
>  			return false;
>  
> -	if ((flags & SDVO_LVDS_MASK) == SDVO_LVDS_MASK)
> +	if (flags & SDVO_OUTPUT_LVDS1)
>  		if (!intel_sdvo_lvds_init(intel_sdvo, 1))
>  			return false;
>  
> -	if ((flags & SDVO_OUTPUT_MASK) == 0) {
> +	if (flags == 0) {
>  		unsigned char bytes[2];
>  
>  		intel_sdvo->controlled_output = 0;

-- 
Jani Nikula, Intel Open Source Graphics Center

  reply	other threads:[~2022-10-27 14:37 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-10-26 10:11 [Intel-gfx] [PATCH 0/8] drm/i915/sdvo: Fix LVDS fixed mode setup and clean up output setup Ville Syrjala
2022-10-26 10:11 ` [PATCH 1/8] drm/i915/sdvo: Filter out invalid outputs more sensibly Ville Syrjala
2022-10-26 10:11   ` [Intel-gfx] " Ville Syrjala
2022-10-27 14:32   ` Jani Nikula [this message]
2022-10-26 10:11 ` [PATCH 2/8] drm/i915/sdvo: Setup DDC fully before output init Ville Syrjala
2022-10-26 10:11   ` [Intel-gfx] " Ville Syrjala
2022-10-27 14:36   ` Jani Nikula
2022-10-27 14:49     ` Ville Syrjälä
2022-10-27 14:54       ` Ville Syrjälä
2022-10-27 17:33         ` Jani Nikula
2022-10-26 10:11 ` [PATCH 3/8] drm/i915/sdvo: Grab mode_config.mutex during LVDS init to avoid WARNs Ville Syrjala
2022-10-26 10:11   ` [Intel-gfx] " Ville Syrjala
2022-10-27 14:37   ` Jani Nikula
2022-10-26 10:11 ` [Intel-gfx] [PATCH 4/8] drm/i915/sdvo: Simplify output setup debugs Ville Syrjala
2022-10-27 14:38   ` Jani Nikula
2022-10-26 10:11 ` [Intel-gfx] [PATCH 5/8] drm/i915/sdvo: Don't add DDC modes for LVDS Ville Syrjala
2022-10-27 14:42   ` Jani Nikula
2022-10-26 10:11 ` [Intel-gfx] [PATCH 6/8] drm/i915/sdvo: Get rid of the output type<->device index stuff Ville Syrjala
2022-10-27 14:42   ` Jani Nikula
2022-10-26 10:11 ` [Intel-gfx] [PATCH 7/8] drm/i915/sdvo: Reduce copy-pasta in output setup Ville Syrjala
2022-10-27 14:45   ` Jani Nikula
2022-10-26 10:11 ` [Intel-gfx] [PATCH 8/8] drm/i915/sdvo: Fix debug print Ville Syrjala
2022-10-27 14:48   ` Jani Nikula
2022-10-26 11:25 ` [Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915/sdvo: Fix LVDS fixed mode setup and clean up output setup Patchwork
2022-10-26 21:40 ` [Intel-gfx] ✓ Fi.CI.IGT: " Patchwork

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=87sfj9cp6d.fsf@intel.com \
    --to=jani.nikula@linux.intel.com \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=stable@vger.kernel.org \
    --cc=ville.syrjala@linux.intel.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.