diff mbox series

[v2] drm/i915/tgl: Handle AUX interrupts for TC ports

Message ID 20191024173023.22113-1-matthew.d.roper@intel.com (mailing list archive)
State New, archived
Headers show
Series [v2] drm/i915/tgl: Handle AUX interrupts for TC ports | expand

Commit Message

Matt Roper Oct. 24, 2019, 5:30 p.m. UTC
We're currently only processing AUX interrupts on the combo ports; make
sure we handle the TC ports as well.

v2: Drop stale comment

Fixes: f663769a5eef ("drm/i915/tgl: initialize TC and TBT ports")
Cc: José Roberto de Souza <jose.souza@intel.com>
Cc: Lucas De Marchi <lucas.demarchi@intel.com>
Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
---
 drivers/gpu/drm/i915/i915_irq.c | 10 ++++++++--
 drivers/gpu/drm/i915/i915_reg.h |  6 ++++++
 2 files changed, 14 insertions(+), 2 deletions(-)

Comments

Souza, Jose Oct. 24, 2019, 9:05 p.m. UTC | #1
On Thu, 2019-10-24 at 10:30 -0700, Matt Roper wrote:
> We're currently only processing AUX interrupts on the combo ports;
> make
> sure we handle the TC ports as well.
> 
> v2: Drop stale comment

Reviewed-by: José Roberto de Souza <jose.souza@intel.com>

> 
> Fixes: f663769a5eef ("drm/i915/tgl: initialize TC and TBT ports")
> Cc: José Roberto de Souza <jose.souza@intel.com>
> Cc: Lucas De Marchi <lucas.demarchi@intel.com>
> Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
> ---
>  drivers/gpu/drm/i915/i915_irq.c | 10 ++++++++--
>  drivers/gpu/drm/i915/i915_reg.h |  6 ++++++
>  2 files changed, 14 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/i915_irq.c
> b/drivers/gpu/drm/i915/i915_irq.c
> index a048c79a6a55..2e67734a6d2a 100644
> --- a/drivers/gpu/drm/i915/i915_irq.c
> +++ b/drivers/gpu/drm/i915/i915_irq.c
> @@ -2575,10 +2575,16 @@ static u32 gen8_de_port_aux_mask(struct
> drm_i915_private *dev_priv)
>  	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;
> +			TGL_DE_PORT_AUX_DDIC |
> +			TGL_DE_PORT_AUX_USBC1 |
> +			TGL_DE_PORT_AUX_USBC2 |
> +			TGL_DE_PORT_AUX_USBC3 |
> +			TGL_DE_PORT_AUX_USBC4 |
> +			TGL_DE_PORT_AUX_USBC5 |
> +			TGL_DE_PORT_AUX_USBC6;
> +
>  
>  	mask = GEN8_AUX_CHANNEL_A;
>  	if (INTEL_GEN(dev_priv) >= 9)
> diff --git a/drivers/gpu/drm/i915/i915_reg.h
> b/drivers/gpu/drm/i915/i915_reg.h
> index 07cf67d42735..a7ba8100f13e 100644
> --- a/drivers/gpu/drm/i915/i915_reg.h
> +++ b/drivers/gpu/drm/i915/i915_reg.h
> @@ -7436,6 +7436,12 @@ 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_USBC6		(1 << 13)
> +#define  TGL_DE_PORT_AUX_USBC5		(1 << 12)
> +#define  TGL_DE_PORT_AUX_USBC4		(1 << 11)
> +#define  TGL_DE_PORT_AUX_USBC3		(1 << 10)
> +#define  TGL_DE_PORT_AUX_USBC2		(1 << 9)
> +#define  TGL_DE_PORT_AUX_USBC1		(1 << 8)
>  #define  TGL_DE_PORT_AUX_DDIC		(1 << 2)
>  #define  TGL_DE_PORT_AUX_DDIB		(1 << 1)
>  #define  TGL_DE_PORT_AUX_DDIA		(1 << 0)
diff mbox series

Patch

diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
index a048c79a6a55..2e67734a6d2a 100644
--- a/drivers/gpu/drm/i915/i915_irq.c
+++ b/drivers/gpu/drm/i915/i915_irq.c
@@ -2575,10 +2575,16 @@  static u32 gen8_de_port_aux_mask(struct drm_i915_private *dev_priv)
 	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;
+			TGL_DE_PORT_AUX_DDIC |
+			TGL_DE_PORT_AUX_USBC1 |
+			TGL_DE_PORT_AUX_USBC2 |
+			TGL_DE_PORT_AUX_USBC3 |
+			TGL_DE_PORT_AUX_USBC4 |
+			TGL_DE_PORT_AUX_USBC5 |
+			TGL_DE_PORT_AUX_USBC6;
+
 
 	mask = GEN8_AUX_CHANNEL_A;
 	if (INTEL_GEN(dev_priv) >= 9)
diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
index 07cf67d42735..a7ba8100f13e 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
@@ -7436,6 +7436,12 @@  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_USBC6		(1 << 13)
+#define  TGL_DE_PORT_AUX_USBC5		(1 << 12)
+#define  TGL_DE_PORT_AUX_USBC4		(1 << 11)
+#define  TGL_DE_PORT_AUX_USBC3		(1 << 10)
+#define  TGL_DE_PORT_AUX_USBC2		(1 << 9)
+#define  TGL_DE_PORT_AUX_USBC1		(1 << 8)
 #define  TGL_DE_PORT_AUX_DDIC		(1 << 2)
 #define  TGL_DE_PORT_AUX_DDIB		(1 << 1)
 #define  TGL_DE_PORT_AUX_DDIA		(1 << 0)