Commit 55523360 authored by Lucas De Marchi's avatar Lucas De Marchi
Browse files

drm/i915/tgl: handle DP aux interrupts



For Tiger Lake the DE Port Interrupt Definition bits changed, so use the
new bit definitions.

Cc: Jose Souza <jose.souza@intel.com>
Signed-off-by: default avatarLucas De Marchi <lucas.demarchi@intel.com>
Reviewed-by: default avatarAnusha Srivatsa <anusha.srivatsa@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20190713010940.17711-7-lucas.demarchi@intel.com
Link: https://patchwork.freedesktop.org/patch/msgid/20190725234813.27179-4-lucas.demarchi@intel.com
parent 48ef15d3
Loading
Loading
Loading
Loading
+11 −5
Original line number Diff line number Diff line
@@ -2951,19 +2951,25 @@ static void gen11_hpd_irq_handler(struct drm_i915_private *dev_priv, u32 iir)

static u32 gen8_de_port_aux_mask(struct drm_i915_private *dev_priv)
{
	u32 mask = GEN8_AUX_CHANNEL_A;
	u32 mask;

	if (INTEL_GEN(dev_priv) >= 12)
		/* TODO: Add AUX entries for USBC */
		return TGL_DE_PORT_AUX_DDIA |
			TGL_DE_PORT_AUX_DDIB |
			TGL_DE_PORT_AUX_DDIC;

	mask = GEN8_AUX_CHANNEL_A;
	if (INTEL_GEN(dev_priv) >= 9)
		mask |= GEN9_AUX_CHANNEL_B |
			GEN9_AUX_CHANNEL_C |
			GEN9_AUX_CHANNEL_D;

	if (IS_CNL_WITH_PORT_F(dev_priv))
	if (IS_CNL_WITH_PORT_F(dev_priv) || IS_GEN(dev_priv, 11))
		mask |= CNL_AUX_CHANNEL_F;

	if (INTEL_GEN(dev_priv) >= 11)
		mask |= ICL_AUX_CHANNEL_E |
			CNL_AUX_CHANNEL_F;
	if (IS_GEN(dev_priv, 11))
		mask |= ICL_AUX_CHANNEL_E;

	return mask;
}
+3 −0
Original line number Diff line number Diff line
@@ -7418,6 +7418,9 @@ enum {
#define  GEN8_PORT_DP_A_HOTPLUG		(1 << 3)
#define  BXT_DE_PORT_GMBUS		(1 << 1)
#define  GEN8_AUX_CHANNEL_A		(1 << 0)
#define  TGL_DE_PORT_AUX_DDIC		(1 << 2)
#define  TGL_DE_PORT_AUX_DDIB		(1 << 1)
#define  TGL_DE_PORT_AUX_DDIA		(1 << 0)

#define GEN8_DE_MISC_ISR _MMIO(0x44460)
#define GEN8_DE_MISC_IMR _MMIO(0x44464)