Commit e5e70d4a authored by Ville Syrjälä's avatar Ville Syrjälä
Browse files

drm/i915: Store mask of enabled infoframes in the crtc state



Store the mask of enabled infoframes in the crtc state. We'll start
with just the readout for HDMI encoder, and we'll expand this
to compute the bitmask in .compute_config() later. SDVO will also
follow later.

Signed-off-by: default avatarVille Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
Link: https://patchwork.freedesktop.org/patch/msgid/20190225174106.2163-4-ville.syrjala@linux.intel.com
parent 509efa2b
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -3764,7 +3764,10 @@ void intel_ddi_get_config(struct intel_encoder *encoder,
		pipe_config->has_hdmi_sink = true;
		intel_dig_port = enc_to_dig_port(&encoder->base);

		if (intel_hdmi_infoframes_enabled(encoder, pipe_config))
		pipe_config->infoframes.enable |=
			intel_hdmi_infoframes_enabled(encoder, pipe_config);

		if (pipe_config->infoframes.enable)
			pipe_config->has_infoframe = true;

		if (temp & TRANS_DDI_HDMI_SCRAMBLING)
+4 −0
Original line number Diff line number Diff line
@@ -1031,6 +1031,10 @@ struct intel_crtc_state {
	/* bitmask of planes that will be updated during the commit */
	u8 update_planes;

	struct {
		u32 enable;
	} infoframes;

	/* HDMI scrambling status */
	bool hdmi_scrambling;

+4 −1
Original line number Diff line number Diff line
@@ -1507,7 +1507,10 @@ static void intel_hdmi_get_config(struct intel_encoder *encoder,
	if (tmp & HDMI_MODE_SELECT_HDMI)
		pipe_config->has_hdmi_sink = true;

	if (intel_hdmi_infoframes_enabled(encoder, pipe_config))
	pipe_config->infoframes.enable |=
		intel_hdmi_infoframes_enabled(encoder, pipe_config);

	if (pipe_config->infoframes.enable)
		pipe_config->has_infoframe = true;

	if (tmp & SDVO_AUDIO_ENABLE)