Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 33d1e7c6 authored by Jani Nikula's avatar Jani Nikula Committed by Daniel Vetter
Browse files

drm/i915: pass intel_encoder to intel_write_eld



Everything else can be derived from that. No functional changes.

Signed-off-by: default avatarJani Nikula <jani.nikula@intel.com>
Reviewed-by: default avatarRodrigo Vivi <rodrigo.vivi@intel.com>
Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
parent f9f682ae
Loading
Loading
Loading
Loading
+5 −4
Original line number Diff line number Diff line
@@ -313,10 +313,11 @@ static void ironlake_write_eld(struct drm_connector *connector,
	I915_WRITE(aud_cntrl_st2, tmp);
}

void intel_write_eld(struct drm_encoder *encoder,
		     struct drm_display_mode *mode)
void intel_write_eld(struct intel_encoder *intel_encoder)
{
	struct drm_crtc *crtc = encoder->crtc;
	struct drm_encoder *encoder = &intel_encoder->base;
	struct intel_crtc *crtc = to_intel_crtc(encoder->crtc);
	struct drm_display_mode *mode = &crtc->config.adjusted_mode;
	struct drm_connector *connector;
	struct drm_device *dev = encoder->dev;
	struct drm_i915_private *dev_priv = dev->dev_private;
@@ -334,7 +335,7 @@ void intel_write_eld(struct drm_encoder *encoder,
	connector->eld[6] = drm_av_sync_delay(connector, mode) / 2;

	if (dev_priv->display.write_eld)
		dev_priv->display.write_eld(connector, crtc, mode);
		dev_priv->display.write_eld(connector, encoder->crtc, mode);
}

/**
+1 −1
Original line number Diff line number Diff line
@@ -1126,7 +1126,7 @@ static void intel_ddi_pre_enable(struct intel_encoder *intel_encoder)

		/* write eld */
		DRM_DEBUG_DRIVER("DDI audio: write eld information\n");
		intel_write_eld(encoder, &crtc->config.adjusted_mode);
		intel_write_eld(intel_encoder);
	}

	if (type == INTEL_OUTPUT_EDP) {
+1 −1
Original line number Diff line number Diff line
@@ -1250,7 +1250,7 @@ static void intel_dp_prepare(struct intel_encoder *encoder)
		DRM_DEBUG_DRIVER("Enabling DP audio on pipe %c\n",
				 pipe_name(crtc->pipe));
		intel_dp->DP |= DP_AUDIO_OUTPUT_ENABLE;
		intel_write_eld(&encoder->base, adjusted_mode);
		intel_write_eld(encoder);
	}

	/* Split out the IBX/CPU vs CPT settings */
+1 −2
Original line number Diff line number Diff line
@@ -850,8 +850,7 @@ void intel_fb_obj_flush(struct drm_i915_gem_object *obj, bool retire);

/* intel_audio.c */
void intel_init_audio(struct drm_device *dev);
void intel_write_eld(struct drm_encoder *encoder,
		     struct drm_display_mode *mode);
void intel_write_eld(struct intel_encoder *encoder);

/* intel_display.c */
const char *intel_output_name(int output);
+1 −1
Original line number Diff line number Diff line
@@ -666,7 +666,7 @@ static void intel_hdmi_prepare(struct intel_encoder *encoder)
		DRM_DEBUG_DRIVER("Enabling HDMI audio on pipe %c\n",
				 pipe_name(crtc->pipe));
		hdmi_val |= SDVO_AUDIO_ENABLE;
		intel_write_eld(&encoder->base, adjusted_mode);
		intel_write_eld(encoder);
	}

	if (HAS_PCH_CPT(dev))