[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