[Intel-gfx] [PATCH 07/13] drm/i915/sdvo: stop caching has_hdmi_monitor in struct intel_sdvo

Nautiyal, Ankit K ankit.k.nautiyal at intel.com
Mon May 29 06:05:09 UTC 2023


LGTM.

Reviewed-by: Ankit Nautiyal <ankit.k.nautiyal at intel.com>

On 4/21/2023 5:17 PM, Jani Nikula wrote:
> Use the information stored in display info.
>
> Signed-off-by: Jani Nikula <jani.nikula at intel.com>
> ---
>   drivers/gpu/drm/i915/display/intel_sdvo.c | 14 +++++++-------
>   1 file changed, 7 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_sdvo.c b/drivers/gpu/drm/i915/display/intel_sdvo.c
> index e12ba458636c..0bbfab95ca37 100644
> --- a/drivers/gpu/drm/i915/display/intel_sdvo.c
> +++ b/drivers/gpu/drm/i915/display/intel_sdvo.c
> @@ -117,7 +117,6 @@ struct intel_sdvo {
>   
>   	enum port port;
>   
> -	bool has_hdmi_monitor;
>   	bool has_hdmi_audio;
>   
>   	/* DDC bus used by this SDVO encoder */
> @@ -1303,10 +1302,13 @@ static void i9xx_adjust_sdvo_tv_clock(struct intel_crtc_state *pipe_config)
>   	pipe_config->clock_set = true;
>   }
>   
> -static bool intel_has_hdmi_sink(struct intel_sdvo *sdvo,
> +static bool intel_has_hdmi_sink(struct intel_sdvo_connector *intel_sdvo_connector,
>   				const struct drm_connector_state *conn_state)
>   {
> -	return sdvo->has_hdmi_monitor &&
> +	struct drm_connector *connector = conn_state->connector;
> +
> +	return intel_sdvo_connector->is_hdmi &&
> +		connector->display_info.is_hdmi &&
>   		READ_ONCE(to_intel_digital_connector_state(conn_state)->force_audio) != HDMI_AUDIO_OFF_DVI;
>   }
>   
> @@ -1400,7 +1402,7 @@ static int intel_sdvo_compute_config(struct intel_encoder *encoder,
>   	pipe_config->pixel_multiplier =
>   		intel_sdvo_get_pixel_multiplier(adjusted_mode);
>   
> -	pipe_config->has_hdmi_sink = intel_has_hdmi_sink(intel_sdvo, conn_state);
> +	pipe_config->has_hdmi_sink = intel_has_hdmi_sink(intel_sdvo_connector, conn_state);
>   
>   	pipe_config->has_audio =
>   		intel_sdvo_has_audio(encoder, pipe_config, conn_state) &&
> @@ -1906,7 +1908,7 @@ intel_sdvo_mode_valid(struct drm_connector *connector,
>   	struct intel_sdvo_connector *intel_sdvo_connector =
>   		to_intel_sdvo_connector(connector);
>   	int max_dotclk = to_i915(connector->dev)->max_dotclk_freq;
> -	bool has_hdmi_sink = intel_has_hdmi_sink(intel_sdvo, connector->state);
> +	bool has_hdmi_sink = intel_has_hdmi_sink(intel_sdvo_connector, connector->state);
>   	int clock = mode->clock;
>   
>   	if (mode->flags & DRM_MODE_FLAG_DBLSCAN)
> @@ -2095,7 +2097,6 @@ intel_sdvo_tmds_sink_detect(struct drm_connector *connector)
>   		if (edid->input & DRM_EDID_INPUT_DIGITAL) {
>   			status = connector_status_connected;
>   			if (intel_sdvo_connector->is_hdmi) {
> -				intel_sdvo->has_hdmi_monitor = drm_detect_hdmi_monitor(edid);
>   				intel_sdvo->has_hdmi_audio = drm_detect_monitor_audio(edid);
>   			}
>   		} else
> @@ -2147,7 +2148,6 @@ intel_sdvo_detect(struct drm_connector *connector, bool force)
>   
>   	intel_sdvo->attached_output = response;
>   
> -	intel_sdvo->has_hdmi_monitor = false;
>   	intel_sdvo->has_hdmi_audio = false;
>   
>   	if ((intel_sdvo_connector->output_flag & response) == 0)


More information about the Intel-gfx mailing list