Intel-XE Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Intel-xe] [PATCH 4/4] fixup! drm/xe/display: Implement display support
  2023-05-15  9:46 [Intel-xe] [PATCH 0/4] Revert frontbuffer tracking removal Jouni Högander
@ 2023-05-15  9:46 ` Jouni Högander
  0 siblings, 0 replies; 16+ messages in thread
From: Jouni Högander @ 2023-05-15  9:46 UTC (permalink / raw)
  To: intel-xe
  Cc: jani.nikula, lucas.demarchi, uma.shankar, rodrigo.vivi,
	Jouni Högander

Now we have struct intel_frontbuffer pointer in intel_fb for Xe as
well. Handle setting frontbuffer bit same way as done in i915.

Signed-off-by: Jouni Högander <jouni.hogander@intel.com>
---
 drivers/gpu/drm/xe/display/xe_plane_initial.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/xe/display/xe_plane_initial.c b/drivers/gpu/drm/xe/display/xe_plane_initial.c
index d0f91f37b6d8..34ae461865a7 100644
--- a/drivers/gpu/drm/xe/display/xe_plane_initial.c
+++ b/drivers/gpu/drm/xe/display/xe_plane_initial.c
@@ -228,7 +228,7 @@ intel_find_initial_plane_obj(struct intel_crtc *crtc,
 	plane_state->uapi.crtc = &crtc->base;
 	intel_plane_copy_uapi_to_hw_state(plane_state, plane_state, crtc);
 
-	atomic_or(plane->frontbuffer_bit, &to_intel_framebuffer(fb)->bits);
+	atomic_or(plane->frontbuffer_bit, &to_intel_frontbuffer(fb)->bits);
 
 	plane_config->vma = vma;
 
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [Intel-xe] [PATCH 0/4] drm/xe: use hotplug irq code from i915
@ 2023-05-16 13:32 Jani Nikula
  2023-05-16 13:32 ` [Intel-xe] [PATCH 1/4] drm/i915/irq: relocate gmbus and dp aux irq handlers Jani Nikula
                   ` (7 more replies)
  0 siblings, 8 replies; 16+ messages in thread
From: Jani Nikula @ 2023-05-16 13:32 UTC (permalink / raw)
  To: intel-xe; +Cc: jani.nikula

Use hotplug irq code from i915 instead of copy-paste.

The same for rest of the display irq code to follow, there were more
issues with that.

BR,
Jani.

Jani Nikula (4):
  drm/i915/irq: relocate gmbus and dp aux irq handlers
  drm/i915/irq: convert gen8_de_irq_handler() to void
  drm/i915/irq: split out hotplug irq handling
  fixup! drm/xe/display: Implement display support

 drivers/gpu/drm/i915/Makefile                 |    1 +
 drivers/gpu/drm/i915/display/intel_crt.c      |    1 +
 drivers/gpu/drm/i915/display/intel_dp.c       |    1 +
 drivers/gpu/drm/i915/display/intel_dp_aux.c   |    5 +
 drivers/gpu/drm/i915/display/intel_dp_aux.h   |    3 +
 drivers/gpu/drm/i915/display/intel_gmbus.c    |    5 +
 drivers/gpu/drm/i915/display/intel_gmbus.h    |    2 +
 drivers/gpu/drm/i915/display/intel_hotplug.c  |    1 +
 .../gpu/drm/i915/display/intel_hotplug_irq.c  | 1442 ++++++++++++++++
 .../gpu/drm/i915/display/intel_hotplug_irq.h  |   35 +
 drivers/gpu/drm/i915/i915_irq.c               | 1522 +----------------
 drivers/gpu/drm/i915/i915_irq.h               |   12 +-
 drivers/gpu/drm/xe/Makefile                   |    1 +
 .../gpu/drm/xe/compat-i915-headers/i915_drv.h |    1 +
 drivers/gpu/drm/xe/display/ext/i915_irq.c     |  579 +------
 drivers/gpu/drm/xe/display/ext/i915_irq.h     |   11 +-
 drivers/gpu/drm/xe/xe_device_types.h          |    6 +-
 17 files changed, 1598 insertions(+), 2030 deletions(-)
 create mode 100644 drivers/gpu/drm/i915/display/intel_hotplug_irq.c
 create mode 100644 drivers/gpu/drm/i915/display/intel_hotplug_irq.h

-- 
2.39.2


^ permalink raw reply	[flat|nested] 16+ messages in thread

* [Intel-xe] [PATCH 1/4] drm/i915/irq: relocate gmbus and dp aux irq handlers
  2023-05-16 13:32 [Intel-xe] [PATCH 0/4] drm/xe: use hotplug irq code from i915 Jani Nikula
@ 2023-05-16 13:32 ` Jani Nikula
  2023-05-16 13:32 ` [Intel-xe] [PATCH 2/4] drm/i915/irq: convert gen8_de_irq_handler() to void Jani Nikula
                   ` (6 subsequent siblings)
  7 siblings, 0 replies; 16+ messages in thread
From: Jani Nikula @ 2023-05-16 13:32 UTC (permalink / raw)
  To: intel-xe; +Cc: jani.nikula

Move gmbus and dp aux irq handlers to their respective files. It should
be up to them what to do with the irq, not the generic irq code.

Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/e825385fc03cb3d53c1f0b66712eea42dad69d59.1683219363.git.jani.nikula@intel.com
(cherry picked from commit 685282a3b39be5be000d28c8b88a3e0cae195104)
---
 drivers/gpu/drm/i915/display/intel_dp_aux.c |  5 +++
 drivers/gpu/drm/i915/display/intel_dp_aux.h |  3 ++
 drivers/gpu/drm/i915/display/intel_gmbus.c  |  5 +++
 drivers/gpu/drm/i915/display/intel_gmbus.h  |  2 ++
 drivers/gpu/drm/i915/i915_irq.c             | 40 +++++++++------------
 5 files changed, 31 insertions(+), 24 deletions(-)

diff --git a/drivers/gpu/drm/i915/display/intel_dp_aux.c b/drivers/gpu/drm/i915/display/intel_dp_aux.c
index ffa21990c1d3..1ef5b66c29fe 100644
--- a/drivers/gpu/drm/i915/display/intel_dp_aux.c
+++ b/drivers/gpu/drm/i915/display/intel_dp_aux.c
@@ -817,3 +817,8 @@ enum aux_ch intel_dp_aux_ch(struct intel_encoder *encoder)
 
 	return aux_ch;
 }
+
+void intel_dp_aux_irq_handler(struct drm_i915_private *i915)
+{
+	wake_up_all(&i915->display.gmbus.wait_queue);
+}
diff --git a/drivers/gpu/drm/i915/display/intel_dp_aux.h b/drivers/gpu/drm/i915/display/intel_dp_aux.h
index 138e340f94ee..5b608f9d3499 100644
--- a/drivers/gpu/drm/i915/display/intel_dp_aux.h
+++ b/drivers/gpu/drm/i915/display/intel_dp_aux.h
@@ -7,6 +7,7 @@
 #define __INTEL_DP_AUX_H__
 
 enum aux_ch;
+struct drm_i915_private;
 struct intel_dp;
 struct intel_encoder;
 
@@ -15,4 +16,6 @@ void intel_dp_aux_init(struct intel_dp *intel_dp);
 
 enum aux_ch intel_dp_aux_ch(struct intel_encoder *encoder);
 
+void intel_dp_aux_irq_handler(struct drm_i915_private *i915);
+
 #endif /* __INTEL_DP_AUX_H__ */
diff --git a/drivers/gpu/drm/i915/display/intel_gmbus.c b/drivers/gpu/drm/i915/display/intel_gmbus.c
index 3ddfc8080ee8..e95ddb580ef6 100644
--- a/drivers/gpu/drm/i915/display/intel_gmbus.c
+++ b/drivers/gpu/drm/i915/display/intel_gmbus.c
@@ -991,3 +991,8 @@ void intel_gmbus_teardown(struct drm_i915_private *i915)
 		i915->display.gmbus.bus[pin] = NULL;
 	}
 }
+
+void intel_gmbus_irq_handler(struct drm_i915_private *i915)
+{
+	wake_up_all(&i915->display.gmbus.wait_queue);
+}
diff --git a/drivers/gpu/drm/i915/display/intel_gmbus.h b/drivers/gpu/drm/i915/display/intel_gmbus.h
index 20f704bd4e70..8111eb23e2af 100644
--- a/drivers/gpu/drm/i915/display/intel_gmbus.h
+++ b/drivers/gpu/drm/i915/display/intel_gmbus.h
@@ -46,4 +46,6 @@ void intel_gmbus_force_bit(struct i2c_adapter *adapter, bool force_bit);
 bool intel_gmbus_is_forced_bit(struct i2c_adapter *adapter);
 void intel_gmbus_reset(struct drm_i915_private *dev_priv);
 
+void intel_gmbus_irq_handler(struct drm_i915_private *i915);
+
 #endif /* __INTEL_GMBUS_H__ */
diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
index e5f12aa141f6..02b6cbb832e9 100644
--- a/drivers/gpu/drm/i915/i915_irq.c
+++ b/drivers/gpu/drm/i915/i915_irq.c
@@ -37,8 +37,10 @@
 #include "display/intel_de.h"
 #include "display/intel_display_trace.h"
 #include "display/intel_display_types.h"
+#include "display/intel_dp_aux.h"
 #include "display/intel_fdi_regs.h"
 #include "display/intel_fifo_underrun.h"
+#include "display/intel_gmbus.h"
 #include "display/intel_hotplug.h"
 #include "display/intel_lpe_audio.h"
 #include "display/intel_psr.h"
@@ -925,16 +927,6 @@ static u32 intel_hpd_hotplug_enables(struct drm_i915_private *i915,
 	return hotplug;
 }
 
-static void gmbus_irq_handler(struct drm_i915_private *dev_priv)
-{
-	wake_up_all(&dev_priv->display.gmbus.wait_queue);
-}
-
-static void dp_aux_irq_handler(struct drm_i915_private *dev_priv)
-{
-	wake_up_all(&dev_priv->display.gmbus.wait_queue);
-}
-
 #if defined(CONFIG_DEBUG_FS)
 static void display_pipe_crc_irq_handler(struct drm_i915_private *dev_priv,
 					 enum pipe pipe,
@@ -1181,7 +1173,7 @@ static void i965_pipestat_irq_handler(struct drm_i915_private *dev_priv,
 		intel_opregion_asle_intr(dev_priv);
 
 	if (pipe_stats[0] & PIPE_GMBUS_INTERRUPT_STATUS)
-		gmbus_irq_handler(dev_priv);
+		intel_gmbus_irq_handler(dev_priv);
 }
 
 static void valleyview_pipestat_irq_handler(struct drm_i915_private *dev_priv,
@@ -1204,7 +1196,7 @@ static void valleyview_pipestat_irq_handler(struct drm_i915_private *dev_priv,
 	}
 
 	if (pipe_stats[0] & PIPE_GMBUS_INTERRUPT_STATUS)
-		gmbus_irq_handler(dev_priv);
+		intel_gmbus_irq_handler(dev_priv);
 }
 
 static u32 i9xx_hpd_irq_ack(struct drm_i915_private *dev_priv)
@@ -1269,7 +1261,7 @@ static void i9xx_hpd_irq_handler(struct drm_i915_private *dev_priv,
 	if ((IS_G4X(dev_priv) ||
 	     IS_VALLEYVIEW(dev_priv) || IS_CHERRYVIEW(dev_priv)) &&
 	    hotplug_status & DP_AUX_CHANNEL_MASK_INT_STATUS_G4X)
-		dp_aux_irq_handler(dev_priv);
+		intel_dp_aux_irq_handler(dev_priv);
 }
 
 static irqreturn_t valleyview_irq_handler(int irq, void *arg)
@@ -1483,10 +1475,10 @@ static void ibx_irq_handler(struct drm_i915_private *dev_priv, u32 pch_iir)
 	}
 
 	if (pch_iir & SDE_AUX_MASK)
-		dp_aux_irq_handler(dev_priv);
+		intel_dp_aux_irq_handler(dev_priv);
 
 	if (pch_iir & SDE_GMBUS)
-		gmbus_irq_handler(dev_priv);
+		intel_gmbus_irq_handler(dev_priv);
 
 	if (pch_iir & SDE_AUDIO_HDCP_MASK)
 		drm_dbg(&dev_priv->drm, "PCH HDCP audio interrupt\n");
@@ -1571,10 +1563,10 @@ static void cpt_irq_handler(struct drm_i915_private *dev_priv, u32 pch_iir)
 	}
 
 	if (pch_iir & SDE_AUX_MASK_CPT)
-		dp_aux_irq_handler(dev_priv);
+		intel_dp_aux_irq_handler(dev_priv);
 
 	if (pch_iir & SDE_GMBUS_CPT)
-		gmbus_irq_handler(dev_priv);
+		intel_gmbus_irq_handler(dev_priv);
 
 	if (pch_iir & SDE_AUDIO_CP_REQ_CPT)
 		drm_dbg(&dev_priv->drm, "Audio CP request interrupt\n");
@@ -1624,7 +1616,7 @@ static void xelpdp_pica_irq_handler(struct drm_i915_private *i915, u32 iir)
 	}
 
 	if (trigger_aux)
-		dp_aux_irq_handler(i915);
+		intel_dp_aux_irq_handler(i915);
 
 	if (!pin_mask && !trigger_aux)
 		drm_err(&i915->drm,
@@ -1666,7 +1658,7 @@ static void icp_irq_handler(struct drm_i915_private *dev_priv, u32 pch_iir)
 		intel_hpd_irq_handler(dev_priv, pin_mask, long_mask);
 
 	if (pch_iir & SDE_GMBUS_ICP)
-		gmbus_irq_handler(dev_priv);
+		intel_gmbus_irq_handler(dev_priv);
 }
 
 static void spt_irq_handler(struct drm_i915_private *dev_priv, u32 pch_iir)
@@ -1702,7 +1694,7 @@ static void spt_irq_handler(struct drm_i915_private *dev_priv, u32 pch_iir)
 		intel_hpd_irq_handler(dev_priv, pin_mask, long_mask);
 
 	if (pch_iir & SDE_GMBUS_CPT)
-		gmbus_irq_handler(dev_priv);
+		intel_gmbus_irq_handler(dev_priv);
 }
 
 static void ilk_hpd_irq_handler(struct drm_i915_private *dev_priv,
@@ -1730,7 +1722,7 @@ static void ilk_display_irq_handler(struct drm_i915_private *dev_priv,
 		ilk_hpd_irq_handler(dev_priv, hotplug_trigger);
 
 	if (de_iir & DE_AUX_CHANNEL_A)
-		dp_aux_irq_handler(dev_priv);
+		intel_dp_aux_irq_handler(dev_priv);
 
 	if (de_iir & DE_GSE)
 		intel_opregion_asle_intr(dev_priv);
@@ -1782,7 +1774,7 @@ static void ivb_display_irq_handler(struct drm_i915_private *dev_priv,
 		ivb_err_int_handler(dev_priv);
 
 	if (de_iir & DE_AUX_CHANNEL_A_IVB)
-		dp_aux_irq_handler(dev_priv);
+		intel_dp_aux_irq_handler(dev_priv);
 
 	if (de_iir & DE_GSE_IVB)
 		intel_opregion_asle_intr(dev_priv);
@@ -2174,7 +2166,7 @@ gen8_de_irq_handler(struct drm_i915_private *dev_priv, u32 master_ctl)
 			ret = IRQ_HANDLED;
 
 			if (iir & gen8_de_port_aux_mask(dev_priv)) {
-				dp_aux_irq_handler(dev_priv);
+				intel_dp_aux_irq_handler(dev_priv);
 				found = true;
 			}
 
@@ -2196,7 +2188,7 @@ gen8_de_irq_handler(struct drm_i915_private *dev_priv, u32 master_ctl)
 
 			if ((IS_GEMINILAKE(dev_priv) || IS_BROXTON(dev_priv)) &&
 			    (iir & BXT_DE_PORT_GMBUS)) {
-				gmbus_irq_handler(dev_priv);
+				intel_gmbus_irq_handler(dev_priv);
 				found = true;
 			}
 
-- 
2.39.2


^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [Intel-xe] [PATCH 2/4] drm/i915/irq: convert gen8_de_irq_handler() to void
  2023-05-16 13:32 [Intel-xe] [PATCH 0/4] drm/xe: use hotplug irq code from i915 Jani Nikula
  2023-05-16 13:32 ` [Intel-xe] [PATCH 1/4] drm/i915/irq: relocate gmbus and dp aux irq handlers Jani Nikula
@ 2023-05-16 13:32 ` Jani Nikula
  2023-05-16 13:32 ` [Intel-xe] [PATCH 3/4] drm/i915/irq: split out hotplug irq handling Jani Nikula
                   ` (5 subsequent siblings)
  7 siblings, 0 replies; 16+ messages in thread
From: Jani Nikula @ 2023-05-16 13:32 UTC (permalink / raw)
  To: intel-xe; +Cc: jani.nikula

The return value is not used for anything.

Reviewed-by: Gustavo Sousa <gustavo.sousa@intel.com>
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20230515101738.2399816-1-jani.nikula@intel.com
(cherry picked from commit 08d8f43045af8589671d4462190d27765653cdf8)
---
 drivers/gpu/drm/i915/i915_irq.c | 12 +-----------
 1 file changed, 1 insertion(+), 11 deletions(-)

diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
index 02b6cbb832e9..64cc52538206 100644
--- a/drivers/gpu/drm/i915/i915_irq.c
+++ b/drivers/gpu/drm/i915/i915_irq.c
@@ -2124,10 +2124,8 @@ static void gen8_read_and_ack_pch_irqs(struct drm_i915_private *i915, u32 *pch_i
 		intel_de_write(i915, PICAINTERRUPT_IER, pica_ier);
 }
 
-static irqreturn_t
-gen8_de_irq_handler(struct drm_i915_private *dev_priv, u32 master_ctl)
+static void gen8_de_irq_handler(struct drm_i915_private *dev_priv, u32 master_ctl)
 {
-	irqreturn_t ret = IRQ_NONE;
 	u32 iir;
 	enum pipe pipe;
 
@@ -2137,7 +2135,6 @@ gen8_de_irq_handler(struct drm_i915_private *dev_priv, u32 master_ctl)
 		iir = intel_uncore_read(&dev_priv->uncore, GEN8_DE_MISC_IIR);
 		if (iir) {
 			intel_uncore_write(&dev_priv->uncore, GEN8_DE_MISC_IIR, iir);
-			ret = IRQ_HANDLED;
 			gen8_de_misc_irq_handler(dev_priv, iir);
 		} else {
 			drm_err_ratelimited(&dev_priv->drm,
@@ -2149,7 +2146,6 @@ gen8_de_irq_handler(struct drm_i915_private *dev_priv, u32 master_ctl)
 		iir = intel_uncore_read(&dev_priv->uncore, GEN11_DE_HPD_IIR);
 		if (iir) {
 			intel_uncore_write(&dev_priv->uncore, GEN11_DE_HPD_IIR, iir);
-			ret = IRQ_HANDLED;
 			gen11_hpd_irq_handler(dev_priv, iir);
 		} else {
 			drm_err_ratelimited(&dev_priv->drm,
@@ -2163,7 +2159,6 @@ gen8_de_irq_handler(struct drm_i915_private *dev_priv, u32 master_ctl)
 			bool found = false;
 
 			intel_uncore_write(&dev_priv->uncore, GEN8_DE_PORT_IIR, iir);
-			ret = IRQ_HANDLED;
 
 			if (iir & gen8_de_port_aux_mask(dev_priv)) {
 				intel_dp_aux_irq_handler(dev_priv);
@@ -2223,7 +2218,6 @@ gen8_de_irq_handler(struct drm_i915_private *dev_priv, u32 master_ctl)
 			continue;
 		}
 
-		ret = IRQ_HANDLED;
 		intel_uncore_write(&dev_priv->uncore, GEN8_DE_PIPE_IIR(pipe), iir);
 
 		if (iir & GEN8_PIPE_VBLANK)
@@ -2257,8 +2251,6 @@ gen8_de_irq_handler(struct drm_i915_private *dev_priv, u32 master_ctl)
 		 */
 		gen8_read_and_ack_pch_irqs(dev_priv, &iir, &pica_iir);
 		if (iir) {
-			ret = IRQ_HANDLED;
-
 			if (pica_iir)
 				xelpdp_pica_irq_handler(dev_priv, pica_iir);
 
@@ -2277,8 +2269,6 @@ gen8_de_irq_handler(struct drm_i915_private *dev_priv, u32 master_ctl)
 				"The master control interrupt lied (SDE)!\n");
 		}
 	}
-
-	return ret;
 }
 
 static inline u32 gen8_master_intr_disable(void __iomem * const regs)
-- 
2.39.2


^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [Intel-xe] [PATCH 3/4] drm/i915/irq: split out hotplug irq handling
  2023-05-16 13:32 [Intel-xe] [PATCH 0/4] drm/xe: use hotplug irq code from i915 Jani Nikula
  2023-05-16 13:32 ` [Intel-xe] [PATCH 1/4] drm/i915/irq: relocate gmbus and dp aux irq handlers Jani Nikula
  2023-05-16 13:32 ` [Intel-xe] [PATCH 2/4] drm/i915/irq: convert gen8_de_irq_handler() to void Jani Nikula
@ 2023-05-16 13:32 ` Jani Nikula
  2023-05-16 13:32 ` [Intel-xe] [PATCH 4/4] fixup! drm/xe/display: Implement display support Jani Nikula
                   ` (4 subsequent siblings)
  7 siblings, 0 replies; 16+ messages in thread
From: Jani Nikula @ 2023-05-16 13:32 UTC (permalink / raw)
  To: intel-xe; +Cc: jani.nikula

Split hotplug irq handling out of i915_irq.[ch] into
display/intel_hotplug_irq.[ch].

The line between the new intel_hotplug_irq.[ch] and the existing
intel_hotplug.[ch] needs further clarification, but the first step is to
move the stuff out of i915_irq.[ch].

Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
Reviewed-by: Gustavo Sousa <gustavo.sousa@intel.com>
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20230515101738.2399816-2-jani.nikula@intel.com
(cherry picked from commit da38ba98645d789ddda2a584d40e2de00139e98b)
---
 drivers/gpu/drm/i915/Makefile                 |    1 +
 drivers/gpu/drm/i915/display/intel_crt.c      |    1 +
 drivers/gpu/drm/i915/display/intel_dp.c       |    1 +
 drivers/gpu/drm/i915/display/intel_hotplug.c  |    1 +
 .../gpu/drm/i915/display/intel_hotplug_irq.c  | 1442 ++++++++++++++++
 .../gpu/drm/i915/display/intel_hotplug_irq.h  |   35 +
 drivers/gpu/drm/i915/i915_irq.c               | 1504 +----------------
 drivers/gpu/drm/i915/i915_irq.h               |   12 +-
 8 files changed, 1525 insertions(+), 1472 deletions(-)
 create mode 100644 drivers/gpu/drm/i915/display/intel_hotplug_irq.c
 create mode 100644 drivers/gpu/drm/i915/display/intel_hotplug_irq.h

diff --git a/drivers/gpu/drm/i915/Makefile b/drivers/gpu/drm/i915/Makefile
index 85267e0fa408..a7b86523b9c7 100644
--- a/drivers/gpu/drm/i915/Makefile
+++ b/drivers/gpu/drm/i915/Makefile
@@ -260,6 +260,7 @@ i915-y += \
 	display/intel_hdcp.o \
 	display/intel_hdcp_gsc.o \
 	display/intel_hotplug.o \
+	display/intel_hotplug_irq.o \
 	display/intel_hti.o \
 	display/intel_load_detect.o \
 	display/intel_lpe_audio.o \
diff --git a/drivers/gpu/drm/i915/display/intel_crt.c b/drivers/gpu/drm/i915/display/intel_crt.c
index 13519f78cf9f..ab57bc0873f1 100644
--- a/drivers/gpu/drm/i915/display/intel_crt.c
+++ b/drivers/gpu/drm/i915/display/intel_crt.c
@@ -48,6 +48,7 @@
 #include "intel_fifo_underrun.h"
 #include "intel_gmbus.h"
 #include "intel_hotplug.h"
+#include "intel_hotplug_irq.h"
 #include "intel_load_detect.h"
 #include "intel_pch_display.h"
 #include "intel_pch_refclk.h"
diff --git a/drivers/gpu/drm/i915/display/intel_dp.c b/drivers/gpu/drm/i915/display/intel_dp.c
index f672607dd02b..eae92bb7f614 100644
--- a/drivers/gpu/drm/i915/display/intel_dp.c
+++ b/drivers/gpu/drm/i915/display/intel_dp.c
@@ -68,6 +68,7 @@
 #include "intel_hdcp.h"
 #include "intel_hdmi.h"
 #include "intel_hotplug.h"
+#include "intel_hotplug_irq.h"
 #include "intel_lspcon.h"
 #include "intel_lvds.h"
 #include "intel_panel.h"
diff --git a/drivers/gpu/drm/i915/display/intel_hotplug.c b/drivers/gpu/drm/i915/display/intel_hotplug.c
index b12900446828..23a5e1a875f1 100644
--- a/drivers/gpu/drm/i915/display/intel_hotplug.c
+++ b/drivers/gpu/drm/i915/display/intel_hotplug.c
@@ -27,6 +27,7 @@
 #include "i915_irq.h"
 #include "intel_display_types.h"
 #include "intel_hotplug.h"
+#include "intel_hotplug_irq.h"
 
 /**
  * DOC: Hotplug
diff --git a/drivers/gpu/drm/i915/display/intel_hotplug_irq.c b/drivers/gpu/drm/i915/display/intel_hotplug_irq.c
new file mode 100644
index 000000000000..1d7ae49e073e
--- /dev/null
+++ b/drivers/gpu/drm/i915/display/intel_hotplug_irq.c
@@ -0,0 +1,1442 @@
+// SPDX-License-Identifier: MIT
+/*
+ * Copyright © 2023 Intel Corporation
+ */
+
+#include "i915_drv.h"
+#include "i915_irq.h"
+#include "i915_reg.h"
+#include "intel_de.h"
+#include "intel_display_types.h"
+#include "intel_dp_aux.h"
+#include "intel_gmbus.h"
+#include "intel_hotplug.h"
+#include "intel_hotplug_irq.h"
+
+typedef bool (*long_pulse_detect_func)(enum hpd_pin pin, u32 val);
+typedef u32 (*hotplug_enables_func)(struct intel_encoder *encoder);
+typedef u32 (*hotplug_mask_func)(enum hpd_pin pin);
+
+static const u32 hpd_ilk[HPD_NUM_PINS] = {
+	[HPD_PORT_A] = DE_DP_A_HOTPLUG,
+};
+
+static const u32 hpd_ivb[HPD_NUM_PINS] = {
+	[HPD_PORT_A] = DE_DP_A_HOTPLUG_IVB,
+};
+
+static const u32 hpd_bdw[HPD_NUM_PINS] = {
+	[HPD_PORT_A] = GEN8_DE_PORT_HOTPLUG(HPD_PORT_A),
+};
+
+static const u32 hpd_ibx[HPD_NUM_PINS] = {
+	[HPD_CRT] = SDE_CRT_HOTPLUG,
+	[HPD_SDVO_B] = SDE_SDVOB_HOTPLUG,
+	[HPD_PORT_B] = SDE_PORTB_HOTPLUG,
+	[HPD_PORT_C] = SDE_PORTC_HOTPLUG,
+	[HPD_PORT_D] = SDE_PORTD_HOTPLUG,
+};
+
+static const u32 hpd_cpt[HPD_NUM_PINS] = {
+	[HPD_CRT] = SDE_CRT_HOTPLUG_CPT,
+	[HPD_SDVO_B] = SDE_SDVOB_HOTPLUG_CPT,
+	[HPD_PORT_B] = SDE_PORTB_HOTPLUG_CPT,
+	[HPD_PORT_C] = SDE_PORTC_HOTPLUG_CPT,
+	[HPD_PORT_D] = SDE_PORTD_HOTPLUG_CPT,
+};
+
+static const u32 hpd_spt[HPD_NUM_PINS] = {
+	[HPD_PORT_A] = SDE_PORTA_HOTPLUG_SPT,
+	[HPD_PORT_B] = SDE_PORTB_HOTPLUG_CPT,
+	[HPD_PORT_C] = SDE_PORTC_HOTPLUG_CPT,
+	[HPD_PORT_D] = SDE_PORTD_HOTPLUG_CPT,
+	[HPD_PORT_E] = SDE_PORTE_HOTPLUG_SPT,
+};
+
+static const u32 hpd_mask_i915[HPD_NUM_PINS] = {
+	[HPD_CRT] = CRT_HOTPLUG_INT_EN,
+	[HPD_SDVO_B] = SDVOB_HOTPLUG_INT_EN,
+	[HPD_SDVO_C] = SDVOC_HOTPLUG_INT_EN,
+	[HPD_PORT_B] = PORTB_HOTPLUG_INT_EN,
+	[HPD_PORT_C] = PORTC_HOTPLUG_INT_EN,
+	[HPD_PORT_D] = PORTD_HOTPLUG_INT_EN,
+};
+
+static const u32 hpd_status_g4x[HPD_NUM_PINS] = {
+	[HPD_CRT] = CRT_HOTPLUG_INT_STATUS,
+	[HPD_SDVO_B] = SDVOB_HOTPLUG_INT_STATUS_G4X,
+	[HPD_SDVO_C] = SDVOC_HOTPLUG_INT_STATUS_G4X,
+	[HPD_PORT_B] = PORTB_HOTPLUG_INT_STATUS,
+	[HPD_PORT_C] = PORTC_HOTPLUG_INT_STATUS,
+	[HPD_PORT_D] = PORTD_HOTPLUG_INT_STATUS,
+};
+
+static const u32 hpd_status_i915[HPD_NUM_PINS] = {
+	[HPD_CRT] = CRT_HOTPLUG_INT_STATUS,
+	[HPD_SDVO_B] = SDVOB_HOTPLUG_INT_STATUS_I915,
+	[HPD_SDVO_C] = SDVOC_HOTPLUG_INT_STATUS_I915,
+	[HPD_PORT_B] = PORTB_HOTPLUG_INT_STATUS,
+	[HPD_PORT_C] = PORTC_HOTPLUG_INT_STATUS,
+	[HPD_PORT_D] = PORTD_HOTPLUG_INT_STATUS,
+};
+
+static const u32 hpd_bxt[HPD_NUM_PINS] = {
+	[HPD_PORT_A] = GEN8_DE_PORT_HOTPLUG(HPD_PORT_A),
+	[HPD_PORT_B] = GEN8_DE_PORT_HOTPLUG(HPD_PORT_B),
+	[HPD_PORT_C] = GEN8_DE_PORT_HOTPLUG(HPD_PORT_C),
+};
+
+static const u32 hpd_gen11[HPD_NUM_PINS] = {
+	[HPD_PORT_TC1] = GEN11_TC_HOTPLUG(HPD_PORT_TC1) | GEN11_TBT_HOTPLUG(HPD_PORT_TC1),
+	[HPD_PORT_TC2] = GEN11_TC_HOTPLUG(HPD_PORT_TC2) | GEN11_TBT_HOTPLUG(HPD_PORT_TC2),
+	[HPD_PORT_TC3] = GEN11_TC_HOTPLUG(HPD_PORT_TC3) | GEN11_TBT_HOTPLUG(HPD_PORT_TC3),
+	[HPD_PORT_TC4] = GEN11_TC_HOTPLUG(HPD_PORT_TC4) | GEN11_TBT_HOTPLUG(HPD_PORT_TC4),
+	[HPD_PORT_TC5] = GEN11_TC_HOTPLUG(HPD_PORT_TC5) | GEN11_TBT_HOTPLUG(HPD_PORT_TC5),
+	[HPD_PORT_TC6] = GEN11_TC_HOTPLUG(HPD_PORT_TC6) | GEN11_TBT_HOTPLUG(HPD_PORT_TC6),
+};
+
+static const u32 hpd_xelpdp[HPD_NUM_PINS] = {
+	[HPD_PORT_TC1] = XELPDP_TBT_HOTPLUG(HPD_PORT_TC1) | XELPDP_DP_ALT_HOTPLUG(HPD_PORT_TC1),
+	[HPD_PORT_TC2] = XELPDP_TBT_HOTPLUG(HPD_PORT_TC2) | XELPDP_DP_ALT_HOTPLUG(HPD_PORT_TC2),
+	[HPD_PORT_TC3] = XELPDP_TBT_HOTPLUG(HPD_PORT_TC3) | XELPDP_DP_ALT_HOTPLUG(HPD_PORT_TC3),
+	[HPD_PORT_TC4] = XELPDP_TBT_HOTPLUG(HPD_PORT_TC4) | XELPDP_DP_ALT_HOTPLUG(HPD_PORT_TC4),
+};
+
+static const u32 hpd_icp[HPD_NUM_PINS] = {
+	[HPD_PORT_A] = SDE_DDI_HOTPLUG_ICP(HPD_PORT_A),
+	[HPD_PORT_B] = SDE_DDI_HOTPLUG_ICP(HPD_PORT_B),
+	[HPD_PORT_C] = SDE_DDI_HOTPLUG_ICP(HPD_PORT_C),
+	[HPD_PORT_TC1] = SDE_TC_HOTPLUG_ICP(HPD_PORT_TC1),
+	[HPD_PORT_TC2] = SDE_TC_HOTPLUG_ICP(HPD_PORT_TC2),
+	[HPD_PORT_TC3] = SDE_TC_HOTPLUG_ICP(HPD_PORT_TC3),
+	[HPD_PORT_TC4] = SDE_TC_HOTPLUG_ICP(HPD_PORT_TC4),
+	[HPD_PORT_TC5] = SDE_TC_HOTPLUG_ICP(HPD_PORT_TC5),
+	[HPD_PORT_TC6] = SDE_TC_HOTPLUG_ICP(HPD_PORT_TC6),
+};
+
+static const u32 hpd_sde_dg1[HPD_NUM_PINS] = {
+	[HPD_PORT_A] = SDE_DDI_HOTPLUG_ICP(HPD_PORT_A),
+	[HPD_PORT_B] = SDE_DDI_HOTPLUG_ICP(HPD_PORT_B),
+	[HPD_PORT_C] = SDE_DDI_HOTPLUG_ICP(HPD_PORT_C),
+	[HPD_PORT_D] = SDE_DDI_HOTPLUG_ICP(HPD_PORT_D),
+	[HPD_PORT_TC1] = SDE_TC_HOTPLUG_DG2(HPD_PORT_TC1),
+};
+
+static const u32 hpd_mtp[HPD_NUM_PINS] = {
+	[HPD_PORT_A] = SDE_DDI_HOTPLUG_ICP(HPD_PORT_A),
+	[HPD_PORT_B] = SDE_DDI_HOTPLUG_ICP(HPD_PORT_B),
+	[HPD_PORT_TC1] = SDE_TC_HOTPLUG_ICP(HPD_PORT_TC1),
+	[HPD_PORT_TC2] = SDE_TC_HOTPLUG_ICP(HPD_PORT_TC2),
+	[HPD_PORT_TC3] = SDE_TC_HOTPLUG_ICP(HPD_PORT_TC3),
+	[HPD_PORT_TC4] = SDE_TC_HOTPLUG_ICP(HPD_PORT_TC4),
+};
+
+static void intel_hpd_init_pins(struct drm_i915_private *dev_priv)
+{
+	struct intel_hotplug *hpd = &dev_priv->display.hotplug;
+
+	if (HAS_GMCH(dev_priv)) {
+		if (IS_G4X(dev_priv) || IS_VALLEYVIEW(dev_priv) ||
+		    IS_CHERRYVIEW(dev_priv))
+			hpd->hpd = hpd_status_g4x;
+		else
+			hpd->hpd = hpd_status_i915;
+		return;
+	}
+
+	if (DISPLAY_VER(dev_priv) >= 14)
+		hpd->hpd = hpd_xelpdp;
+	else if (DISPLAY_VER(dev_priv) >= 11)
+		hpd->hpd = hpd_gen11;
+	else if (IS_GEMINILAKE(dev_priv) || IS_BROXTON(dev_priv))
+		hpd->hpd = hpd_bxt;
+	else if (DISPLAY_VER(dev_priv) == 9)
+		hpd->hpd = NULL; /* no north HPD on SKL */
+	else if (DISPLAY_VER(dev_priv) >= 8)
+		hpd->hpd = hpd_bdw;
+	else if (DISPLAY_VER(dev_priv) >= 7)
+		hpd->hpd = hpd_ivb;
+	else
+		hpd->hpd = hpd_ilk;
+
+	if ((INTEL_PCH_TYPE(dev_priv) < PCH_DG1) &&
+	    (!HAS_PCH_SPLIT(dev_priv) || HAS_PCH_NOP(dev_priv)))
+		return;
+
+	if (INTEL_PCH_TYPE(dev_priv) >= PCH_DG1)
+		hpd->pch_hpd = hpd_sde_dg1;
+	else if (INTEL_PCH_TYPE(dev_priv) >= PCH_MTP)
+		hpd->pch_hpd = hpd_mtp;
+	else if (INTEL_PCH_TYPE(dev_priv) >= PCH_ICP)
+		hpd->pch_hpd = hpd_icp;
+	else if (HAS_PCH_CNP(dev_priv) || HAS_PCH_SPT(dev_priv))
+		hpd->pch_hpd = hpd_spt;
+	else if (HAS_PCH_LPT(dev_priv) || HAS_PCH_CPT(dev_priv))
+		hpd->pch_hpd = hpd_cpt;
+	else if (HAS_PCH_IBX(dev_priv))
+		hpd->pch_hpd = hpd_ibx;
+	else
+		MISSING_CASE(INTEL_PCH_TYPE(dev_priv));
+}
+
+/* For display hotplug interrupt */
+void i915_hotplug_interrupt_update_locked(struct drm_i915_private *dev_priv,
+					  u32 mask, u32 bits)
+{
+	lockdep_assert_held(&dev_priv->irq_lock);
+	drm_WARN_ON(&dev_priv->drm, bits & ~mask);
+
+	intel_uncore_rmw(&dev_priv->uncore, PORT_HOTPLUG_EN, mask, bits);
+}
+
+/**
+ * i915_hotplug_interrupt_update - update hotplug interrupt enable
+ * @dev_priv: driver private
+ * @mask: bits to update
+ * @bits: bits to enable
+ * NOTE: the HPD enable bits are modified both inside and outside
+ * of an interrupt context. To avoid that read-modify-write cycles
+ * interfer, these bits are protected by a spinlock. Since this
+ * function is usually not called from a context where the lock is
+ * held already, this function acquires the lock itself. A non-locking
+ * version is also available.
+ */
+void i915_hotplug_interrupt_update(struct drm_i915_private *dev_priv,
+				   u32 mask,
+				   u32 bits)
+{
+	spin_lock_irq(&dev_priv->irq_lock);
+	i915_hotplug_interrupt_update_locked(dev_priv, mask, bits);
+	spin_unlock_irq(&dev_priv->irq_lock);
+}
+
+static bool gen11_port_hotplug_long_detect(enum hpd_pin pin, u32 val)
+{
+	switch (pin) {
+	case HPD_PORT_TC1:
+	case HPD_PORT_TC2:
+	case HPD_PORT_TC3:
+	case HPD_PORT_TC4:
+	case HPD_PORT_TC5:
+	case HPD_PORT_TC6:
+		return val & GEN11_HOTPLUG_CTL_LONG_DETECT(pin);
+	default:
+		return false;
+	}
+}
+
+static bool bxt_port_hotplug_long_detect(enum hpd_pin pin, u32 val)
+{
+	switch (pin) {
+	case HPD_PORT_A:
+		return val & PORTA_HOTPLUG_LONG_DETECT;
+	case HPD_PORT_B:
+		return val & PORTB_HOTPLUG_LONG_DETECT;
+	case HPD_PORT_C:
+		return val & PORTC_HOTPLUG_LONG_DETECT;
+	default:
+		return false;
+	}
+}
+
+static bool icp_ddi_port_hotplug_long_detect(enum hpd_pin pin, u32 val)
+{
+	switch (pin) {
+	case HPD_PORT_A:
+	case HPD_PORT_B:
+	case HPD_PORT_C:
+	case HPD_PORT_D:
+		return val & SHOTPLUG_CTL_DDI_HPD_LONG_DETECT(pin);
+	default:
+		return false;
+	}
+}
+
+static bool icp_tc_port_hotplug_long_detect(enum hpd_pin pin, u32 val)
+{
+	switch (pin) {
+	case HPD_PORT_TC1:
+	case HPD_PORT_TC2:
+	case HPD_PORT_TC3:
+	case HPD_PORT_TC4:
+	case HPD_PORT_TC5:
+	case HPD_PORT_TC6:
+		return val & ICP_TC_HPD_LONG_DETECT(pin);
+	default:
+		return false;
+	}
+}
+
+static bool spt_port_hotplug2_long_detect(enum hpd_pin pin, u32 val)
+{
+	switch (pin) {
+	case HPD_PORT_E:
+		return val & PORTE_HOTPLUG_LONG_DETECT;
+	default:
+		return false;
+	}
+}
+
+static bool spt_port_hotplug_long_detect(enum hpd_pin pin, u32 val)
+{
+	switch (pin) {
+	case HPD_PORT_A:
+		return val & PORTA_HOTPLUG_LONG_DETECT;
+	case HPD_PORT_B:
+		return val & PORTB_HOTPLUG_LONG_DETECT;
+	case HPD_PORT_C:
+		return val & PORTC_HOTPLUG_LONG_DETECT;
+	case HPD_PORT_D:
+		return val & PORTD_HOTPLUG_LONG_DETECT;
+	default:
+		return false;
+	}
+}
+
+static bool ilk_port_hotplug_long_detect(enum hpd_pin pin, u32 val)
+{
+	switch (pin) {
+	case HPD_PORT_A:
+		return val & DIGITAL_PORTA_HOTPLUG_LONG_DETECT;
+	default:
+		return false;
+	}
+}
+
+static bool pch_port_hotplug_long_detect(enum hpd_pin pin, u32 val)
+{
+	switch (pin) {
+	case HPD_PORT_B:
+		return val & PORTB_HOTPLUG_LONG_DETECT;
+	case HPD_PORT_C:
+		return val & PORTC_HOTPLUG_LONG_DETECT;
+	case HPD_PORT_D:
+		return val & PORTD_HOTPLUG_LONG_DETECT;
+	default:
+		return false;
+	}
+}
+
+static bool i9xx_port_hotplug_long_detect(enum hpd_pin pin, u32 val)
+{
+	switch (pin) {
+	case HPD_PORT_B:
+		return val & PORTB_HOTPLUG_INT_LONG_PULSE;
+	case HPD_PORT_C:
+		return val & PORTC_HOTPLUG_INT_LONG_PULSE;
+	case HPD_PORT_D:
+		return val & PORTD_HOTPLUG_INT_LONG_PULSE;
+	default:
+		return false;
+	}
+}
+
+/*
+ * Get a bit mask of pins that have triggered, and which ones may be long.
+ * This can be called multiple times with the same masks to accumulate
+ * hotplug detection results from several registers.
+ *
+ * Note that the caller is expected to zero out the masks initially.
+ */
+static void intel_get_hpd_pins(struct drm_i915_private *dev_priv,
+			       u32 *pin_mask, u32 *long_mask,
+			       u32 hotplug_trigger, u32 dig_hotplug_reg,
+			       const u32 hpd[HPD_NUM_PINS],
+			       bool long_pulse_detect(enum hpd_pin pin, u32 val))
+{
+	enum hpd_pin pin;
+
+	BUILD_BUG_ON(BITS_PER_TYPE(*pin_mask) < HPD_NUM_PINS);
+
+	for_each_hpd_pin(pin) {
+		if ((hpd[pin] & hotplug_trigger) == 0)
+			continue;
+
+		*pin_mask |= BIT(pin);
+
+		if (long_pulse_detect(pin, dig_hotplug_reg))
+			*long_mask |= BIT(pin);
+	}
+
+	drm_dbg(&dev_priv->drm,
+		"hotplug event received, stat 0x%08x, dig 0x%08x, pins 0x%08x, long 0x%08x\n",
+		hotplug_trigger, dig_hotplug_reg, *pin_mask, *long_mask);
+}
+
+static u32 intel_hpd_enabled_irqs(struct drm_i915_private *dev_priv,
+				  const u32 hpd[HPD_NUM_PINS])
+{
+	struct intel_encoder *encoder;
+	u32 enabled_irqs = 0;
+
+	for_each_intel_encoder(&dev_priv->drm, encoder)
+		if (dev_priv->display.hotplug.stats[encoder->hpd_pin].state == HPD_ENABLED)
+			enabled_irqs |= hpd[encoder->hpd_pin];
+
+	return enabled_irqs;
+}
+
+static u32 intel_hpd_hotplug_irqs(struct drm_i915_private *dev_priv,
+				  const u32 hpd[HPD_NUM_PINS])
+{
+	struct intel_encoder *encoder;
+	u32 hotplug_irqs = 0;
+
+	for_each_intel_encoder(&dev_priv->drm, encoder)
+		hotplug_irqs |= hpd[encoder->hpd_pin];
+
+	return hotplug_irqs;
+}
+
+static u32 intel_hpd_hotplug_mask(struct drm_i915_private *i915,
+				  hotplug_mask_func hotplug_mask)
+{
+	enum hpd_pin pin;
+	u32 hotplug = 0;
+
+	for_each_hpd_pin(pin)
+		hotplug |= hotplug_mask(pin);
+
+	return hotplug;
+}
+
+static u32 intel_hpd_hotplug_enables(struct drm_i915_private *i915,
+				     hotplug_enables_func hotplug_enables)
+{
+	struct intel_encoder *encoder;
+	u32 hotplug = 0;
+
+	for_each_intel_encoder(&i915->drm, encoder)
+		hotplug |= hotplug_enables(encoder);
+
+	return hotplug;
+}
+
+u32 i9xx_hpd_irq_ack(struct drm_i915_private *dev_priv)
+{
+	u32 hotplug_status = 0, hotplug_status_mask;
+	int i;
+
+	if (IS_G4X(dev_priv) ||
+	    IS_VALLEYVIEW(dev_priv) || IS_CHERRYVIEW(dev_priv))
+		hotplug_status_mask = HOTPLUG_INT_STATUS_G4X |
+			DP_AUX_CHANNEL_MASK_INT_STATUS_G4X;
+	else
+		hotplug_status_mask = HOTPLUG_INT_STATUS_I915;
+
+	/*
+	 * We absolutely have to clear all the pending interrupt
+	 * bits in PORT_HOTPLUG_STAT. Otherwise the ISR port
+	 * interrupt bit won't have an edge, and the i965/g4x
+	 * edge triggered IIR will not notice that an interrupt
+	 * is still pending. We can't use PORT_HOTPLUG_EN to
+	 * guarantee the edge as the act of toggling the enable
+	 * bits can itself generate a new hotplug interrupt :(
+	 */
+	for (i = 0; i < 10; i++) {
+		u32 tmp = intel_uncore_read(&dev_priv->uncore, PORT_HOTPLUG_STAT) & hotplug_status_mask;
+
+		if (tmp == 0)
+			return hotplug_status;
+
+		hotplug_status |= tmp;
+		intel_uncore_write(&dev_priv->uncore, PORT_HOTPLUG_STAT, hotplug_status);
+	}
+
+	drm_WARN_ONCE(&dev_priv->drm, 1,
+		      "PORT_HOTPLUG_STAT did not clear (0x%08x)\n",
+		      intel_uncore_read(&dev_priv->uncore, PORT_HOTPLUG_STAT));
+
+	return hotplug_status;
+}
+
+void i9xx_hpd_irq_handler(struct drm_i915_private *dev_priv, u32 hotplug_status)
+{
+	u32 pin_mask = 0, long_mask = 0;
+	u32 hotplug_trigger;
+
+	if (IS_G4X(dev_priv) ||
+	    IS_VALLEYVIEW(dev_priv) || IS_CHERRYVIEW(dev_priv))
+		hotplug_trigger = hotplug_status & HOTPLUG_INT_STATUS_G4X;
+	else
+		hotplug_trigger = hotplug_status & HOTPLUG_INT_STATUS_I915;
+
+	if (hotplug_trigger) {
+		intel_get_hpd_pins(dev_priv, &pin_mask, &long_mask,
+				   hotplug_trigger, hotplug_trigger,
+				   dev_priv->display.hotplug.hpd,
+				   i9xx_port_hotplug_long_detect);
+
+		intel_hpd_irq_handler(dev_priv, pin_mask, long_mask);
+	}
+
+	if ((IS_G4X(dev_priv) ||
+	     IS_VALLEYVIEW(dev_priv) || IS_CHERRYVIEW(dev_priv)) &&
+	    hotplug_status & DP_AUX_CHANNEL_MASK_INT_STATUS_G4X)
+		intel_dp_aux_irq_handler(dev_priv);
+}
+
+void ibx_hpd_irq_handler(struct drm_i915_private *dev_priv, u32 hotplug_trigger)
+{
+	u32 dig_hotplug_reg, pin_mask = 0, long_mask = 0;
+
+	/*
+	 * Somehow the PCH doesn't seem to really ack the interrupt to the CPU
+	 * unless we touch the hotplug register, even if hotplug_trigger is
+	 * zero. Not acking leads to "The master control interrupt lied (SDE)!"
+	 * errors.
+	 */
+	dig_hotplug_reg = intel_uncore_read(&dev_priv->uncore, PCH_PORT_HOTPLUG);
+	if (!hotplug_trigger) {
+		u32 mask = PORTA_HOTPLUG_STATUS_MASK |
+			PORTD_HOTPLUG_STATUS_MASK |
+			PORTC_HOTPLUG_STATUS_MASK |
+			PORTB_HOTPLUG_STATUS_MASK;
+		dig_hotplug_reg &= ~mask;
+	}
+
+	intel_uncore_write(&dev_priv->uncore, PCH_PORT_HOTPLUG, dig_hotplug_reg);
+	if (!hotplug_trigger)
+		return;
+
+	intel_get_hpd_pins(dev_priv, &pin_mask, &long_mask,
+			   hotplug_trigger, dig_hotplug_reg,
+			   dev_priv->display.hotplug.pch_hpd,
+			   pch_port_hotplug_long_detect);
+
+	intel_hpd_irq_handler(dev_priv, pin_mask, long_mask);
+}
+
+void xelpdp_pica_irq_handler(struct drm_i915_private *i915, u32 iir)
+{
+	enum hpd_pin pin;
+	u32 hotplug_trigger = iir & (XELPDP_DP_ALT_HOTPLUG_MASK | XELPDP_TBT_HOTPLUG_MASK);
+	u32 trigger_aux = iir & XELPDP_AUX_TC_MASK;
+	u32 pin_mask = 0, long_mask = 0;
+
+	for (pin = HPD_PORT_TC1; pin <= HPD_PORT_TC4; pin++) {
+		u32 val;
+
+		if (!(i915->display.hotplug.hpd[pin] & hotplug_trigger))
+			continue;
+
+		pin_mask |= BIT(pin);
+
+		val = intel_de_read(i915, XELPDP_PORT_HOTPLUG_CTL(pin));
+		intel_de_write(i915, XELPDP_PORT_HOTPLUG_CTL(pin), val);
+
+		if (val & (XELPDP_DP_ALT_HPD_LONG_DETECT | XELPDP_TBT_HPD_LONG_DETECT))
+			long_mask |= BIT(pin);
+	}
+
+	if (pin_mask) {
+		drm_dbg(&i915->drm,
+			"pica hotplug event received, stat 0x%08x, pins 0x%08x, long 0x%08x\n",
+			hotplug_trigger, pin_mask, long_mask);
+
+		intel_hpd_irq_handler(i915, pin_mask, long_mask);
+	}
+
+	if (trigger_aux)
+		intel_dp_aux_irq_handler(i915);
+
+	if (!pin_mask && !trigger_aux)
+		drm_err(&i915->drm,
+			"Unexpected DE HPD/AUX interrupt 0x%08x\n", iir);
+}
+
+void icp_irq_handler(struct drm_i915_private *dev_priv, u32 pch_iir)
+{
+	u32 ddi_hotplug_trigger = pch_iir & SDE_DDI_HOTPLUG_MASK_ICP;
+	u32 tc_hotplug_trigger = pch_iir & SDE_TC_HOTPLUG_MASK_ICP;
+	u32 pin_mask = 0, long_mask = 0;
+
+	if (ddi_hotplug_trigger) {
+		u32 dig_hotplug_reg;
+
+		/* Locking due to DSI native GPIO sequences */
+		spin_lock(&dev_priv->irq_lock);
+		dig_hotplug_reg = intel_uncore_rmw(&dev_priv->uncore, SHOTPLUG_CTL_DDI, 0, 0);
+		spin_unlock(&dev_priv->irq_lock);
+
+		intel_get_hpd_pins(dev_priv, &pin_mask, &long_mask,
+				   ddi_hotplug_trigger, dig_hotplug_reg,
+				   dev_priv->display.hotplug.pch_hpd,
+				   icp_ddi_port_hotplug_long_detect);
+	}
+
+	if (tc_hotplug_trigger) {
+		u32 dig_hotplug_reg;
+
+		dig_hotplug_reg = intel_uncore_rmw(&dev_priv->uncore, SHOTPLUG_CTL_TC, 0, 0);
+
+		intel_get_hpd_pins(dev_priv, &pin_mask, &long_mask,
+				   tc_hotplug_trigger, dig_hotplug_reg,
+				   dev_priv->display.hotplug.pch_hpd,
+				   icp_tc_port_hotplug_long_detect);
+	}
+
+	if (pin_mask)
+		intel_hpd_irq_handler(dev_priv, pin_mask, long_mask);
+
+	if (pch_iir & SDE_GMBUS_ICP)
+		intel_gmbus_irq_handler(dev_priv);
+}
+
+void spt_irq_handler(struct drm_i915_private *dev_priv, u32 pch_iir)
+{
+	u32 hotplug_trigger = pch_iir & SDE_HOTPLUG_MASK_SPT &
+		~SDE_PORTE_HOTPLUG_SPT;
+	u32 hotplug2_trigger = pch_iir & SDE_PORTE_HOTPLUG_SPT;
+	u32 pin_mask = 0, long_mask = 0;
+
+	if (hotplug_trigger) {
+		u32 dig_hotplug_reg;
+
+		dig_hotplug_reg = intel_uncore_rmw(&dev_priv->uncore, PCH_PORT_HOTPLUG, 0, 0);
+
+		intel_get_hpd_pins(dev_priv, &pin_mask, &long_mask,
+				   hotplug_trigger, dig_hotplug_reg,
+				   dev_priv->display.hotplug.pch_hpd,
+				   spt_port_hotplug_long_detect);
+	}
+
+	if (hotplug2_trigger) {
+		u32 dig_hotplug_reg;
+
+		dig_hotplug_reg = intel_uncore_rmw(&dev_priv->uncore, PCH_PORT_HOTPLUG2, 0, 0);
+
+		intel_get_hpd_pins(dev_priv, &pin_mask, &long_mask,
+				   hotplug2_trigger, dig_hotplug_reg,
+				   dev_priv->display.hotplug.pch_hpd,
+				   spt_port_hotplug2_long_detect);
+	}
+
+	if (pin_mask)
+		intel_hpd_irq_handler(dev_priv, pin_mask, long_mask);
+
+	if (pch_iir & SDE_GMBUS_CPT)
+		intel_gmbus_irq_handler(dev_priv);
+}
+
+void ilk_hpd_irq_handler(struct drm_i915_private *dev_priv, u32 hotplug_trigger)
+{
+	u32 dig_hotplug_reg, pin_mask = 0, long_mask = 0;
+
+	dig_hotplug_reg = intel_uncore_rmw(&dev_priv->uncore, DIGITAL_PORT_HOTPLUG_CNTRL, 0, 0);
+
+	intel_get_hpd_pins(dev_priv, &pin_mask, &long_mask,
+			   hotplug_trigger, dig_hotplug_reg,
+			   dev_priv->display.hotplug.hpd,
+			   ilk_port_hotplug_long_detect);
+
+	intel_hpd_irq_handler(dev_priv, pin_mask, long_mask);
+}
+
+void bxt_hpd_irq_handler(struct drm_i915_private *dev_priv, u32 hotplug_trigger)
+{
+	u32 dig_hotplug_reg, pin_mask = 0, long_mask = 0;
+
+	dig_hotplug_reg = intel_uncore_rmw(&dev_priv->uncore, PCH_PORT_HOTPLUG, 0, 0);
+
+	intel_get_hpd_pins(dev_priv, &pin_mask, &long_mask,
+			   hotplug_trigger, dig_hotplug_reg,
+			   dev_priv->display.hotplug.hpd,
+			   bxt_port_hotplug_long_detect);
+
+	intel_hpd_irq_handler(dev_priv, pin_mask, long_mask);
+}
+
+void gen11_hpd_irq_handler(struct drm_i915_private *dev_priv, u32 iir)
+{
+	u32 pin_mask = 0, long_mask = 0;
+	u32 trigger_tc = iir & GEN11_DE_TC_HOTPLUG_MASK;
+	u32 trigger_tbt = iir & GEN11_DE_TBT_HOTPLUG_MASK;
+
+	if (trigger_tc) {
+		u32 dig_hotplug_reg;
+
+		dig_hotplug_reg = intel_uncore_rmw(&dev_priv->uncore, GEN11_TC_HOTPLUG_CTL, 0, 0);
+
+		intel_get_hpd_pins(dev_priv, &pin_mask, &long_mask,
+				   trigger_tc, dig_hotplug_reg,
+				   dev_priv->display.hotplug.hpd,
+				   gen11_port_hotplug_long_detect);
+	}
+
+	if (trigger_tbt) {
+		u32 dig_hotplug_reg;
+
+		dig_hotplug_reg = intel_uncore_rmw(&dev_priv->uncore, GEN11_TBT_HOTPLUG_CTL, 0, 0);
+
+		intel_get_hpd_pins(dev_priv, &pin_mask, &long_mask,
+				   trigger_tbt, dig_hotplug_reg,
+				   dev_priv->display.hotplug.hpd,
+				   gen11_port_hotplug_long_detect);
+	}
+
+	if (pin_mask)
+		intel_hpd_irq_handler(dev_priv, pin_mask, long_mask);
+	else
+		drm_err(&dev_priv->drm,
+			"Unexpected DE HPD interrupt 0x%08x\n", iir);
+}
+
+static u32 ibx_hotplug_mask(enum hpd_pin hpd_pin)
+{
+	switch (hpd_pin) {
+	case HPD_PORT_A:
+		return PORTA_HOTPLUG_ENABLE;
+	case HPD_PORT_B:
+		return PORTB_HOTPLUG_ENABLE | PORTB_PULSE_DURATION_MASK;
+	case HPD_PORT_C:
+		return PORTC_HOTPLUG_ENABLE | PORTC_PULSE_DURATION_MASK;
+	case HPD_PORT_D:
+		return PORTD_HOTPLUG_ENABLE | PORTD_PULSE_DURATION_MASK;
+	default:
+		return 0;
+	}
+}
+
+static u32 ibx_hotplug_enables(struct intel_encoder *encoder)
+{
+	struct drm_i915_private *i915 = to_i915(encoder->base.dev);
+
+	switch (encoder->hpd_pin) {
+	case HPD_PORT_A:
+		/*
+		 * When CPU and PCH are on the same package, port A
+		 * HPD must be enabled in both north and south.
+		 */
+		return HAS_PCH_LPT_LP(i915) ?
+			PORTA_HOTPLUG_ENABLE : 0;
+	case HPD_PORT_B:
+		return PORTB_HOTPLUG_ENABLE |
+			PORTB_PULSE_DURATION_2ms;
+	case HPD_PORT_C:
+		return PORTC_HOTPLUG_ENABLE |
+			PORTC_PULSE_DURATION_2ms;
+	case HPD_PORT_D:
+		return PORTD_HOTPLUG_ENABLE |
+			PORTD_PULSE_DURATION_2ms;
+	default:
+		return 0;
+	}
+}
+
+static void ibx_hpd_detection_setup(struct drm_i915_private *dev_priv)
+{
+	/*
+	 * Enable digital hotplug on the PCH, and configure the DP short pulse
+	 * duration to 2ms (which is the minimum in the Display Port spec).
+	 * The pulse duration bits are reserved on LPT+.
+	 */
+	intel_uncore_rmw(&dev_priv->uncore, PCH_PORT_HOTPLUG,
+			 intel_hpd_hotplug_mask(dev_priv, ibx_hotplug_mask),
+			 intel_hpd_hotplug_enables(dev_priv, ibx_hotplug_enables));
+}
+
+static void ibx_hpd_enable_detection(struct intel_encoder *encoder)
+{
+	struct drm_i915_private *i915 = to_i915(encoder->base.dev);
+
+	intel_uncore_rmw(&i915->uncore, PCH_PORT_HOTPLUG,
+			 ibx_hotplug_mask(encoder->hpd_pin),
+			 ibx_hotplug_enables(encoder));
+}
+
+static void ibx_hpd_irq_setup(struct drm_i915_private *dev_priv)
+{
+	u32 hotplug_irqs, enabled_irqs;
+
+	enabled_irqs = intel_hpd_enabled_irqs(dev_priv, dev_priv->display.hotplug.pch_hpd);
+	hotplug_irqs = intel_hpd_hotplug_irqs(dev_priv, dev_priv->display.hotplug.pch_hpd);
+
+	ibx_display_interrupt_update(dev_priv, hotplug_irqs, enabled_irqs);
+
+	ibx_hpd_detection_setup(dev_priv);
+}
+
+static u32 icp_ddi_hotplug_mask(enum hpd_pin hpd_pin)
+{
+	switch (hpd_pin) {
+	case HPD_PORT_A:
+	case HPD_PORT_B:
+	case HPD_PORT_C:
+	case HPD_PORT_D:
+		return SHOTPLUG_CTL_DDI_HPD_ENABLE(hpd_pin);
+	default:
+		return 0;
+	}
+}
+
+static u32 icp_ddi_hotplug_enables(struct intel_encoder *encoder)
+{
+	return icp_ddi_hotplug_mask(encoder->hpd_pin);
+}
+
+static u32 icp_tc_hotplug_mask(enum hpd_pin hpd_pin)
+{
+	switch (hpd_pin) {
+	case HPD_PORT_TC1:
+	case HPD_PORT_TC2:
+	case HPD_PORT_TC3:
+	case HPD_PORT_TC4:
+	case HPD_PORT_TC5:
+	case HPD_PORT_TC6:
+		return ICP_TC_HPD_ENABLE(hpd_pin);
+	default:
+		return 0;
+	}
+}
+
+static u32 icp_tc_hotplug_enables(struct intel_encoder *encoder)
+{
+	return icp_tc_hotplug_mask(encoder->hpd_pin);
+}
+
+static void icp_ddi_hpd_detection_setup(struct drm_i915_private *dev_priv)
+{
+	intel_uncore_rmw(&dev_priv->uncore, SHOTPLUG_CTL_DDI,
+			 intel_hpd_hotplug_mask(dev_priv, icp_ddi_hotplug_mask),
+			 intel_hpd_hotplug_enables(dev_priv, icp_ddi_hotplug_enables));
+}
+
+static void icp_ddi_hpd_enable_detection(struct intel_encoder *encoder)
+{
+	struct drm_i915_private *i915 = to_i915(encoder->base.dev);
+
+	intel_uncore_rmw(&i915->uncore, SHOTPLUG_CTL_DDI,
+			 icp_ddi_hotplug_mask(encoder->hpd_pin),
+			 icp_ddi_hotplug_enables(encoder));
+}
+
+static void icp_tc_hpd_detection_setup(struct drm_i915_private *dev_priv)
+{
+	intel_uncore_rmw(&dev_priv->uncore, SHOTPLUG_CTL_TC,
+			 intel_hpd_hotplug_mask(dev_priv, icp_tc_hotplug_mask),
+			 intel_hpd_hotplug_enables(dev_priv, icp_tc_hotplug_enables));
+}
+
+static void icp_tc_hpd_enable_detection(struct intel_encoder *encoder)
+{
+	struct drm_i915_private *i915 = to_i915(encoder->base.dev);
+
+	intel_uncore_rmw(&i915->uncore, SHOTPLUG_CTL_TC,
+			 icp_tc_hotplug_mask(encoder->hpd_pin),
+			 icp_tc_hotplug_enables(encoder));
+}
+
+static void icp_hpd_enable_detection(struct intel_encoder *encoder)
+{
+	icp_ddi_hpd_enable_detection(encoder);
+	icp_tc_hpd_enable_detection(encoder);
+}
+
+static void icp_hpd_irq_setup(struct drm_i915_private *dev_priv)
+{
+	u32 hotplug_irqs, enabled_irqs;
+
+	enabled_irqs = intel_hpd_enabled_irqs(dev_priv, dev_priv->display.hotplug.pch_hpd);
+	hotplug_irqs = intel_hpd_hotplug_irqs(dev_priv, dev_priv->display.hotplug.pch_hpd);
+
+	if (INTEL_PCH_TYPE(dev_priv) <= PCH_TGP)
+		intel_uncore_write(&dev_priv->uncore, SHPD_FILTER_CNT, SHPD_FILTER_CNT_500_ADJ);
+
+	ibx_display_interrupt_update(dev_priv, hotplug_irqs, enabled_irqs);
+
+	icp_ddi_hpd_detection_setup(dev_priv);
+	icp_tc_hpd_detection_setup(dev_priv);
+}
+
+static u32 gen11_hotplug_mask(enum hpd_pin hpd_pin)
+{
+	switch (hpd_pin) {
+	case HPD_PORT_TC1:
+	case HPD_PORT_TC2:
+	case HPD_PORT_TC3:
+	case HPD_PORT_TC4:
+	case HPD_PORT_TC5:
+	case HPD_PORT_TC6:
+		return GEN11_HOTPLUG_CTL_ENABLE(hpd_pin);
+	default:
+		return 0;
+	}
+}
+
+static u32 gen11_hotplug_enables(struct intel_encoder *encoder)
+{
+	return gen11_hotplug_mask(encoder->hpd_pin);
+}
+
+static void dg1_hpd_invert(struct drm_i915_private *i915)
+{
+	u32 val = (INVERT_DDIA_HPD |
+		   INVERT_DDIB_HPD |
+		   INVERT_DDIC_HPD |
+		   INVERT_DDID_HPD);
+	intel_uncore_rmw(&i915->uncore, SOUTH_CHICKEN1, 0, val);
+}
+
+static void dg1_hpd_enable_detection(struct intel_encoder *encoder)
+{
+	struct drm_i915_private *i915 = to_i915(encoder->base.dev);
+
+	dg1_hpd_invert(i915);
+	icp_hpd_enable_detection(encoder);
+}
+
+static void dg1_hpd_irq_setup(struct drm_i915_private *dev_priv)
+{
+	dg1_hpd_invert(dev_priv);
+	icp_hpd_irq_setup(dev_priv);
+}
+
+static void gen11_tc_hpd_detection_setup(struct drm_i915_private *dev_priv)
+{
+	intel_uncore_rmw(&dev_priv->uncore, GEN11_TC_HOTPLUG_CTL,
+			 intel_hpd_hotplug_mask(dev_priv, gen11_hotplug_mask),
+			 intel_hpd_hotplug_enables(dev_priv, gen11_hotplug_enables));
+}
+
+static void gen11_tc_hpd_enable_detection(struct intel_encoder *encoder)
+{
+	struct drm_i915_private *i915 = to_i915(encoder->base.dev);
+
+	intel_uncore_rmw(&i915->uncore, GEN11_TC_HOTPLUG_CTL,
+			 gen11_hotplug_mask(encoder->hpd_pin),
+			 gen11_hotplug_enables(encoder));
+}
+
+static void gen11_tbt_hpd_detection_setup(struct drm_i915_private *dev_priv)
+{
+	intel_uncore_rmw(&dev_priv->uncore, GEN11_TBT_HOTPLUG_CTL,
+			 intel_hpd_hotplug_mask(dev_priv, gen11_hotplug_mask),
+			 intel_hpd_hotplug_enables(dev_priv, gen11_hotplug_enables));
+}
+
+static void gen11_tbt_hpd_enable_detection(struct intel_encoder *encoder)
+{
+	struct drm_i915_private *i915 = to_i915(encoder->base.dev);
+
+	intel_uncore_rmw(&i915->uncore, GEN11_TBT_HOTPLUG_CTL,
+			 gen11_hotplug_mask(encoder->hpd_pin),
+			 gen11_hotplug_enables(encoder));
+}
+
+static void gen11_hpd_enable_detection(struct intel_encoder *encoder)
+{
+	struct drm_i915_private *i915 = to_i915(encoder->base.dev);
+
+	gen11_tc_hpd_enable_detection(encoder);
+	gen11_tbt_hpd_enable_detection(encoder);
+
+	if (INTEL_PCH_TYPE(i915) >= PCH_ICP)
+		icp_hpd_enable_detection(encoder);
+}
+
+static void gen11_hpd_irq_setup(struct drm_i915_private *dev_priv)
+{
+	u32 hotplug_irqs, enabled_irqs;
+
+	enabled_irqs = intel_hpd_enabled_irqs(dev_priv, dev_priv->display.hotplug.hpd);
+	hotplug_irqs = intel_hpd_hotplug_irqs(dev_priv, dev_priv->display.hotplug.hpd);
+
+	intel_uncore_rmw(&dev_priv->uncore, GEN11_DE_HPD_IMR, hotplug_irqs,
+			 ~enabled_irqs & hotplug_irqs);
+	intel_uncore_posting_read(&dev_priv->uncore, GEN11_DE_HPD_IMR);
+
+	gen11_tc_hpd_detection_setup(dev_priv);
+	gen11_tbt_hpd_detection_setup(dev_priv);
+
+	if (INTEL_PCH_TYPE(dev_priv) >= PCH_ICP)
+		icp_hpd_irq_setup(dev_priv);
+}
+
+static u32 mtp_ddi_hotplug_mask(enum hpd_pin hpd_pin)
+{
+	switch (hpd_pin) {
+	case HPD_PORT_A:
+	case HPD_PORT_B:
+		return SHOTPLUG_CTL_DDI_HPD_ENABLE(hpd_pin);
+	default:
+		return 0;
+	}
+}
+
+static u32 mtp_ddi_hotplug_enables(struct intel_encoder *encoder)
+{
+	return mtp_ddi_hotplug_mask(encoder->hpd_pin);
+}
+
+static u32 mtp_tc_hotplug_mask(enum hpd_pin hpd_pin)
+{
+	switch (hpd_pin) {
+	case HPD_PORT_TC1:
+	case HPD_PORT_TC2:
+	case HPD_PORT_TC3:
+	case HPD_PORT_TC4:
+		return ICP_TC_HPD_ENABLE(hpd_pin);
+	default:
+		return 0;
+	}
+}
+
+static u32 mtp_tc_hotplug_enables(struct intel_encoder *encoder)
+{
+	return mtp_tc_hotplug_mask(encoder->hpd_pin);
+}
+
+static void mtp_ddi_hpd_detection_setup(struct drm_i915_private *i915)
+{
+	intel_de_rmw(i915, SHOTPLUG_CTL_DDI,
+		     intel_hpd_hotplug_mask(i915, mtp_ddi_hotplug_mask),
+		     intel_hpd_hotplug_enables(i915, mtp_ddi_hotplug_enables));
+}
+
+static void mtp_ddi_hpd_enable_detection(struct intel_encoder *encoder)
+{
+	struct drm_i915_private *i915 = to_i915(encoder->base.dev);
+
+	intel_de_rmw(i915, SHOTPLUG_CTL_DDI,
+		     mtp_ddi_hotplug_mask(encoder->hpd_pin),
+		     mtp_ddi_hotplug_enables(encoder));
+}
+
+static void mtp_tc_hpd_detection_setup(struct drm_i915_private *i915)
+{
+	intel_de_rmw(i915, SHOTPLUG_CTL_TC,
+		     intel_hpd_hotplug_mask(i915, mtp_tc_hotplug_mask),
+		     intel_hpd_hotplug_enables(i915, mtp_tc_hotplug_enables));
+}
+
+static void mtp_tc_hpd_enable_detection(struct intel_encoder *encoder)
+{
+	struct drm_i915_private *i915 = to_i915(encoder->base.dev);
+
+	intel_de_rmw(i915, SHOTPLUG_CTL_DDI,
+		     mtp_tc_hotplug_mask(encoder->hpd_pin),
+		     mtp_tc_hotplug_enables(encoder));
+}
+
+static void mtp_hpd_invert(struct drm_i915_private *i915)
+{
+	u32 val = (INVERT_DDIA_HPD |
+		   INVERT_DDIB_HPD |
+		   INVERT_DDIC_HPD |
+		   INVERT_TC1_HPD |
+		   INVERT_TC2_HPD |
+		   INVERT_TC3_HPD |
+		   INVERT_TC4_HPD |
+		   INVERT_DDID_HPD_MTP |
+		   INVERT_DDIE_HPD);
+	intel_de_rmw(i915, SOUTH_CHICKEN1, 0, val);
+}
+
+static void mtp_hpd_enable_detection(struct intel_encoder *encoder)
+{
+	struct drm_i915_private *i915 = to_i915(encoder->base.dev);
+
+	mtp_hpd_invert(i915);
+	mtp_ddi_hpd_enable_detection(encoder);
+	mtp_tc_hpd_enable_detection(encoder);
+}
+
+static void mtp_hpd_irq_setup(struct drm_i915_private *i915)
+{
+	u32 hotplug_irqs, enabled_irqs;
+
+	enabled_irqs = intel_hpd_enabled_irqs(i915, i915->display.hotplug.pch_hpd);
+	hotplug_irqs = intel_hpd_hotplug_irqs(i915, i915->display.hotplug.pch_hpd);
+
+	intel_de_write(i915, SHPD_FILTER_CNT, SHPD_FILTER_CNT_500_ADJ);
+
+	mtp_hpd_invert(i915);
+	ibx_display_interrupt_update(i915, hotplug_irqs, enabled_irqs);
+
+	mtp_ddi_hpd_detection_setup(i915);
+	mtp_tc_hpd_detection_setup(i915);
+}
+
+static bool is_xelpdp_pica_hpd_pin(enum hpd_pin hpd_pin)
+{
+	return hpd_pin >= HPD_PORT_TC1 && hpd_pin <= HPD_PORT_TC4;
+}
+
+static void _xelpdp_pica_hpd_detection_setup(struct drm_i915_private *i915,
+					     enum hpd_pin hpd_pin, bool enable)
+{
+	u32 mask = XELPDP_TBT_HOTPLUG_ENABLE |
+		XELPDP_DP_ALT_HOTPLUG_ENABLE;
+
+	if (!is_xelpdp_pica_hpd_pin(hpd_pin))
+		return;
+
+	intel_de_rmw(i915, XELPDP_PORT_HOTPLUG_CTL(hpd_pin),
+		     mask, enable ? mask : 0);
+}
+
+static void xelpdp_pica_hpd_enable_detection(struct intel_encoder *encoder)
+{
+	struct drm_i915_private *i915 = to_i915(encoder->base.dev);
+
+	_xelpdp_pica_hpd_detection_setup(i915, encoder->hpd_pin, true);
+}
+
+static void xelpdp_pica_hpd_detection_setup(struct drm_i915_private *i915)
+{
+	struct intel_encoder *encoder;
+	u32 available_pins = 0;
+	enum hpd_pin pin;
+
+	BUILD_BUG_ON(BITS_PER_TYPE(available_pins) < HPD_NUM_PINS);
+
+	for_each_intel_encoder(&i915->drm, encoder)
+		available_pins |= BIT(encoder->hpd_pin);
+
+	for_each_hpd_pin(pin)
+		_xelpdp_pica_hpd_detection_setup(i915, pin, available_pins & BIT(pin));
+}
+
+static void xelpdp_hpd_enable_detection(struct intel_encoder *encoder)
+{
+	xelpdp_pica_hpd_enable_detection(encoder);
+	mtp_hpd_enable_detection(encoder);
+}
+
+static void xelpdp_hpd_irq_setup(struct drm_i915_private *i915)
+{
+	u32 hotplug_irqs, enabled_irqs;
+
+	enabled_irqs = intel_hpd_enabled_irqs(i915, i915->display.hotplug.hpd);
+	hotplug_irqs = intel_hpd_hotplug_irqs(i915, i915->display.hotplug.hpd);
+
+	intel_de_rmw(i915, PICAINTERRUPT_IMR, hotplug_irqs,
+		     ~enabled_irqs & hotplug_irqs);
+	intel_uncore_posting_read(&i915->uncore, PICAINTERRUPT_IMR);
+
+	xelpdp_pica_hpd_detection_setup(i915);
+
+	if (INTEL_PCH_TYPE(i915) >= PCH_MTP)
+		mtp_hpd_irq_setup(i915);
+}
+
+static u32 spt_hotplug_mask(enum hpd_pin hpd_pin)
+{
+	switch (hpd_pin) {
+	case HPD_PORT_A:
+		return PORTA_HOTPLUG_ENABLE;
+	case HPD_PORT_B:
+		return PORTB_HOTPLUG_ENABLE;
+	case HPD_PORT_C:
+		return PORTC_HOTPLUG_ENABLE;
+	case HPD_PORT_D:
+		return PORTD_HOTPLUG_ENABLE;
+	default:
+		return 0;
+	}
+}
+
+static u32 spt_hotplug_enables(struct intel_encoder *encoder)
+{
+	return spt_hotplug_mask(encoder->hpd_pin);
+}
+
+static u32 spt_hotplug2_mask(enum hpd_pin hpd_pin)
+{
+	switch (hpd_pin) {
+	case HPD_PORT_E:
+		return PORTE_HOTPLUG_ENABLE;
+	default:
+		return 0;
+	}
+}
+
+static u32 spt_hotplug2_enables(struct intel_encoder *encoder)
+{
+	return spt_hotplug2_mask(encoder->hpd_pin);
+}
+
+static void spt_hpd_detection_setup(struct drm_i915_private *dev_priv)
+{
+	/* Display WA #1179 WaHardHangonHotPlug: cnp */
+	if (HAS_PCH_CNP(dev_priv)) {
+		intel_uncore_rmw(&dev_priv->uncore, SOUTH_CHICKEN1, CHASSIS_CLK_REQ_DURATION_MASK,
+				 CHASSIS_CLK_REQ_DURATION(0xf));
+	}
+
+	/* Enable digital hotplug on the PCH */
+	intel_uncore_rmw(&dev_priv->uncore, PCH_PORT_HOTPLUG,
+			 intel_hpd_hotplug_mask(dev_priv, spt_hotplug_mask),
+			 intel_hpd_hotplug_enables(dev_priv, spt_hotplug_enables));
+
+	intel_uncore_rmw(&dev_priv->uncore, PCH_PORT_HOTPLUG2,
+			 intel_hpd_hotplug_mask(dev_priv, spt_hotplug2_mask),
+			 intel_hpd_hotplug_enables(dev_priv, spt_hotplug2_enables));
+}
+
+static void spt_hpd_enable_detection(struct intel_encoder *encoder)
+{
+	struct drm_i915_private *i915 = to_i915(encoder->base.dev);
+
+	/* Display WA #1179 WaHardHangonHotPlug: cnp */
+	if (HAS_PCH_CNP(i915)) {
+		intel_uncore_rmw(&i915->uncore, SOUTH_CHICKEN1,
+				 CHASSIS_CLK_REQ_DURATION_MASK,
+				 CHASSIS_CLK_REQ_DURATION(0xf));
+	}
+
+	intel_uncore_rmw(&i915->uncore, PCH_PORT_HOTPLUG,
+			 spt_hotplug_mask(encoder->hpd_pin),
+			 spt_hotplug_enables(encoder));
+
+	intel_uncore_rmw(&i915->uncore, PCH_PORT_HOTPLUG2,
+			 spt_hotplug2_mask(encoder->hpd_pin),
+			 spt_hotplug2_enables(encoder));
+}
+
+static void spt_hpd_irq_setup(struct drm_i915_private *dev_priv)
+{
+	u32 hotplug_irqs, enabled_irqs;
+
+	if (INTEL_PCH_TYPE(dev_priv) >= PCH_CNP)
+		intel_uncore_write(&dev_priv->uncore, SHPD_FILTER_CNT, SHPD_FILTER_CNT_500_ADJ);
+
+	enabled_irqs = intel_hpd_enabled_irqs(dev_priv, dev_priv->display.hotplug.pch_hpd);
+	hotplug_irqs = intel_hpd_hotplug_irqs(dev_priv, dev_priv->display.hotplug.pch_hpd);
+
+	ibx_display_interrupt_update(dev_priv, hotplug_irqs, enabled_irqs);
+
+	spt_hpd_detection_setup(dev_priv);
+}
+
+static u32 ilk_hotplug_mask(enum hpd_pin hpd_pin)
+{
+	switch (hpd_pin) {
+	case HPD_PORT_A:
+		return DIGITAL_PORTA_HOTPLUG_ENABLE |
+			DIGITAL_PORTA_PULSE_DURATION_MASK;
+	default:
+		return 0;
+	}
+}
+
+static u32 ilk_hotplug_enables(struct intel_encoder *encoder)
+{
+	switch (encoder->hpd_pin) {
+	case HPD_PORT_A:
+		return DIGITAL_PORTA_HOTPLUG_ENABLE |
+			DIGITAL_PORTA_PULSE_DURATION_2ms;
+	default:
+		return 0;
+	}
+}
+
+static void ilk_hpd_detection_setup(struct drm_i915_private *dev_priv)
+{
+	/*
+	 * Enable digital hotplug on the CPU, and configure the DP short pulse
+	 * duration to 2ms (which is the minimum in the Display Port spec)
+	 * The pulse duration bits are reserved on HSW+.
+	 */
+	intel_uncore_rmw(&dev_priv->uncore, DIGITAL_PORT_HOTPLUG_CNTRL,
+			 intel_hpd_hotplug_mask(dev_priv, ilk_hotplug_mask),
+			 intel_hpd_hotplug_enables(dev_priv, ilk_hotplug_enables));
+}
+
+static void ilk_hpd_enable_detection(struct intel_encoder *encoder)
+{
+	struct drm_i915_private *i915 = to_i915(encoder->base.dev);
+
+	intel_uncore_rmw(&i915->uncore, DIGITAL_PORT_HOTPLUG_CNTRL,
+			 ilk_hotplug_mask(encoder->hpd_pin),
+			 ilk_hotplug_enables(encoder));
+
+	ibx_hpd_enable_detection(encoder);
+}
+
+static void ilk_hpd_irq_setup(struct drm_i915_private *dev_priv)
+{
+	u32 hotplug_irqs, enabled_irqs;
+
+	enabled_irqs = intel_hpd_enabled_irqs(dev_priv, dev_priv->display.hotplug.hpd);
+	hotplug_irqs = intel_hpd_hotplug_irqs(dev_priv, dev_priv->display.hotplug.hpd);
+
+	if (DISPLAY_VER(dev_priv) >= 8)
+		bdw_update_port_irq(dev_priv, hotplug_irqs, enabled_irqs);
+	else
+		ilk_update_display_irq(dev_priv, hotplug_irqs, enabled_irqs);
+
+	ilk_hpd_detection_setup(dev_priv);
+
+	ibx_hpd_irq_setup(dev_priv);
+}
+
+static u32 bxt_hotplug_mask(enum hpd_pin hpd_pin)
+{
+	switch (hpd_pin) {
+	case HPD_PORT_A:
+		return PORTA_HOTPLUG_ENABLE | BXT_DDIA_HPD_INVERT;
+	case HPD_PORT_B:
+		return PORTB_HOTPLUG_ENABLE | BXT_DDIB_HPD_INVERT;
+	case HPD_PORT_C:
+		return PORTC_HOTPLUG_ENABLE | BXT_DDIC_HPD_INVERT;
+	default:
+		return 0;
+	}
+}
+
+static u32 bxt_hotplug_enables(struct intel_encoder *encoder)
+{
+	u32 hotplug;
+
+	switch (encoder->hpd_pin) {
+	case HPD_PORT_A:
+		hotplug = PORTA_HOTPLUG_ENABLE;
+		if (intel_bios_encoder_hpd_invert(encoder->devdata))
+			hotplug |= BXT_DDIA_HPD_INVERT;
+		return hotplug;
+	case HPD_PORT_B:
+		hotplug = PORTB_HOTPLUG_ENABLE;
+		if (intel_bios_encoder_hpd_invert(encoder->devdata))
+			hotplug |= BXT_DDIB_HPD_INVERT;
+		return hotplug;
+	case HPD_PORT_C:
+		hotplug = PORTC_HOTPLUG_ENABLE;
+		if (intel_bios_encoder_hpd_invert(encoder->devdata))
+			hotplug |= BXT_DDIC_HPD_INVERT;
+		return hotplug;
+	default:
+		return 0;
+	}
+}
+
+static void bxt_hpd_detection_setup(struct drm_i915_private *dev_priv)
+{
+	intel_uncore_rmw(&dev_priv->uncore, PCH_PORT_HOTPLUG,
+			 intel_hpd_hotplug_mask(dev_priv, bxt_hotplug_mask),
+			 intel_hpd_hotplug_enables(dev_priv, bxt_hotplug_enables));
+}
+
+static void bxt_hpd_enable_detection(struct intel_encoder *encoder)
+{
+	struct drm_i915_private *i915 = to_i915(encoder->base.dev);
+
+	intel_uncore_rmw(&i915->uncore, PCH_PORT_HOTPLUG,
+			 bxt_hotplug_mask(encoder->hpd_pin),
+			 bxt_hotplug_enables(encoder));
+}
+
+static void bxt_hpd_irq_setup(struct drm_i915_private *dev_priv)
+{
+	u32 hotplug_irqs, enabled_irqs;
+
+	enabled_irqs = intel_hpd_enabled_irqs(dev_priv, dev_priv->display.hotplug.hpd);
+	hotplug_irqs = intel_hpd_hotplug_irqs(dev_priv, dev_priv->display.hotplug.hpd);
+
+	bdw_update_port_irq(dev_priv, hotplug_irqs, enabled_irqs);
+
+	bxt_hpd_detection_setup(dev_priv);
+}
+
+static void i915_hpd_enable_detection(struct intel_encoder *encoder)
+{
+	struct drm_i915_private *i915 = to_i915(encoder->base.dev);
+	u32 hotplug_en = hpd_mask_i915[encoder->hpd_pin];
+
+	/* HPD sense and interrupt enable are one and the same */
+	i915_hotplug_interrupt_update(i915, hotplug_en, hotplug_en);
+}
+
+static void i915_hpd_irq_setup(struct drm_i915_private *dev_priv)
+{
+	u32 hotplug_en;
+
+	lockdep_assert_held(&dev_priv->irq_lock);
+
+	/*
+	 * Note HDMI and DP share hotplug bits. Enable bits are the same for all
+	 * generations.
+	 */
+	hotplug_en = intel_hpd_enabled_irqs(dev_priv, hpd_mask_i915);
+	/*
+	 * Programming the CRT detection parameters tends to generate a spurious
+	 * hotplug event about three seconds later. So just do it once.
+	 */
+	if (IS_G4X(dev_priv))
+		hotplug_en |= CRT_HOTPLUG_ACTIVATION_PERIOD_64;
+	hotplug_en |= CRT_HOTPLUG_VOLTAGE_COMPARE_50;
+
+	/* Ignore TV since it's buggy */
+	i915_hotplug_interrupt_update_locked(dev_priv,
+					     HOTPLUG_INT_EN_MASK |
+					     CRT_HOTPLUG_VOLTAGE_COMPARE_MASK |
+					     CRT_HOTPLUG_ACTIVATION_PERIOD_64,
+					     hotplug_en);
+}
+
+struct intel_hotplug_funcs {
+	/* Enable HPD sense and interrupts for all present encoders */
+	void (*hpd_irq_setup)(struct drm_i915_private *i915);
+	/* Enable HPD sense for a single encoder */
+	void (*hpd_enable_detection)(struct intel_encoder *encoder);
+};
+
+#define HPD_FUNCS(platform)					 \
+static const struct intel_hotplug_funcs platform##_hpd_funcs = { \
+	.hpd_irq_setup = platform##_hpd_irq_setup,		 \
+	.hpd_enable_detection = platform##_hpd_enable_detection, \
+}
+
+HPD_FUNCS(i915);
+HPD_FUNCS(xelpdp);
+HPD_FUNCS(dg1);
+HPD_FUNCS(gen11);
+HPD_FUNCS(bxt);
+HPD_FUNCS(icp);
+HPD_FUNCS(spt);
+HPD_FUNCS(ilk);
+#undef HPD_FUNCS
+
+void intel_hpd_enable_detection(struct intel_encoder *encoder)
+{
+	struct drm_i915_private *i915 = to_i915(encoder->base.dev);
+
+	if (i915->display.funcs.hotplug)
+		i915->display.funcs.hotplug->hpd_enable_detection(encoder);
+}
+
+void intel_hpd_irq_setup(struct drm_i915_private *i915)
+{
+	if (i915->display_irqs_enabled && i915->display.funcs.hotplug)
+		i915->display.funcs.hotplug->hpd_irq_setup(i915);
+}
+
+void intel_hotplug_irq_init(struct drm_i915_private *i915)
+{
+	intel_hpd_init_pins(i915);
+
+	intel_hpd_init_early(i915);
+
+	if (HAS_GMCH(i915)) {
+		if (I915_HAS_HOTPLUG(i915))
+			i915->display.funcs.hotplug = &i915_hpd_funcs;
+	} else {
+		if (HAS_PCH_DG2(i915))
+			i915->display.funcs.hotplug = &icp_hpd_funcs;
+		else if (HAS_PCH_DG1(i915))
+			i915->display.funcs.hotplug = &dg1_hpd_funcs;
+		else if (DISPLAY_VER(i915) >= 14)
+			i915->display.funcs.hotplug = &xelpdp_hpd_funcs;
+		else if (DISPLAY_VER(i915) >= 11)
+			i915->display.funcs.hotplug = &gen11_hpd_funcs;
+		else if (IS_GEMINILAKE(i915) || IS_BROXTON(i915))
+			i915->display.funcs.hotplug = &bxt_hpd_funcs;
+		else if (INTEL_PCH_TYPE(i915) >= PCH_ICP)
+			i915->display.funcs.hotplug = &icp_hpd_funcs;
+		else if (INTEL_PCH_TYPE(i915) >= PCH_SPT)
+			i915->display.funcs.hotplug = &spt_hpd_funcs;
+		else
+			i915->display.funcs.hotplug = &ilk_hpd_funcs;
+	}
+}
diff --git a/drivers/gpu/drm/i915/display/intel_hotplug_irq.h b/drivers/gpu/drm/i915/display/intel_hotplug_irq.h
new file mode 100644
index 000000000000..e4db752df096
--- /dev/null
+++ b/drivers/gpu/drm/i915/display/intel_hotplug_irq.h
@@ -0,0 +1,35 @@
+/* SPDX-License-Identifier: MIT */
+/*
+ * Copyright © 2023 Intel Corporation
+ */
+
+#ifndef __INTEL_HOTPLUG_IRQ_H__
+#define __INTEL_HOTPLUG_IRQ_H__
+
+#include <linux/types.h>
+
+struct drm_i915_private;
+struct intel_encoder;
+
+u32 i9xx_hpd_irq_ack(struct drm_i915_private *i915);
+
+void i9xx_hpd_irq_handler(struct drm_i915_private *i915, u32 hotplug_status);
+void ibx_hpd_irq_handler(struct drm_i915_private *i915, u32 hotplug_trigger);
+void ilk_hpd_irq_handler(struct drm_i915_private *i915, u32 hotplug_trigger);
+void gen11_hpd_irq_handler(struct drm_i915_private *i915, u32 iir);
+void bxt_hpd_irq_handler(struct drm_i915_private *i915, u32 hotplug_trigger);
+void xelpdp_pica_irq_handler(struct drm_i915_private *i915, u32 iir);
+void icp_irq_handler(struct drm_i915_private *i915, u32 pch_iir);
+void spt_irq_handler(struct drm_i915_private *i915, u32 pch_iir);
+
+void i915_hotplug_interrupt_update_locked(struct drm_i915_private *i915,
+					  u32 mask, u32 bits);
+void i915_hotplug_interrupt_update(struct drm_i915_private *i915,
+				   u32 mask, u32 bits);
+
+void intel_hpd_enable_detection(struct intel_encoder *encoder);
+void intel_hpd_irq_setup(struct drm_i915_private *i915);
+
+void intel_hotplug_irq_init(struct drm_i915_private *i915);
+
+#endif /* __INTEL_HOTPLUG_IRQ_H__ */
diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
index 64cc52538206..61f53b283210 100644
--- a/drivers/gpu/drm/i915/i915_irq.c
+++ b/drivers/gpu/drm/i915/i915_irq.c
@@ -42,6 +42,7 @@
 #include "display/intel_fifo_underrun.h"
 #include "display/intel_gmbus.h"
 #include "display/intel_hotplug.h"
+#include "display/intel_hotplug_irq.h"
 #include "display/intel_lpe_audio.h"
 #include "display/intel_psr.h"
 #include "display/intel_psr_regs.h"
@@ -84,172 +85,6 @@ static inline void pmu_irq_stats(struct drm_i915_private *i915,
 	WRITE_ONCE(i915->pmu.irq_count, i915->pmu.irq_count + 1);
 }
 
-typedef bool (*long_pulse_detect_func)(enum hpd_pin pin, u32 val);
-typedef u32 (*hotplug_enables_func)(struct intel_encoder *encoder);
-typedef u32 (*hotplug_mask_func)(enum hpd_pin pin);
-
-static const u32 hpd_ilk[HPD_NUM_PINS] = {
-	[HPD_PORT_A] = DE_DP_A_HOTPLUG,
-};
-
-static const u32 hpd_ivb[HPD_NUM_PINS] = {
-	[HPD_PORT_A] = DE_DP_A_HOTPLUG_IVB,
-};
-
-static const u32 hpd_bdw[HPD_NUM_PINS] = {
-	[HPD_PORT_A] = GEN8_DE_PORT_HOTPLUG(HPD_PORT_A),
-};
-
-static const u32 hpd_ibx[HPD_NUM_PINS] = {
-	[HPD_CRT] = SDE_CRT_HOTPLUG,
-	[HPD_SDVO_B] = SDE_SDVOB_HOTPLUG,
-	[HPD_PORT_B] = SDE_PORTB_HOTPLUG,
-	[HPD_PORT_C] = SDE_PORTC_HOTPLUG,
-	[HPD_PORT_D] = SDE_PORTD_HOTPLUG,
-};
-
-static const u32 hpd_cpt[HPD_NUM_PINS] = {
-	[HPD_CRT] = SDE_CRT_HOTPLUG_CPT,
-	[HPD_SDVO_B] = SDE_SDVOB_HOTPLUG_CPT,
-	[HPD_PORT_B] = SDE_PORTB_HOTPLUG_CPT,
-	[HPD_PORT_C] = SDE_PORTC_HOTPLUG_CPT,
-	[HPD_PORT_D] = SDE_PORTD_HOTPLUG_CPT,
-};
-
-static const u32 hpd_spt[HPD_NUM_PINS] = {
-	[HPD_PORT_A] = SDE_PORTA_HOTPLUG_SPT,
-	[HPD_PORT_B] = SDE_PORTB_HOTPLUG_CPT,
-	[HPD_PORT_C] = SDE_PORTC_HOTPLUG_CPT,
-	[HPD_PORT_D] = SDE_PORTD_HOTPLUG_CPT,
-	[HPD_PORT_E] = SDE_PORTE_HOTPLUG_SPT,
-};
-
-static const u32 hpd_mask_i915[HPD_NUM_PINS] = {
-	[HPD_CRT] = CRT_HOTPLUG_INT_EN,
-	[HPD_SDVO_B] = SDVOB_HOTPLUG_INT_EN,
-	[HPD_SDVO_C] = SDVOC_HOTPLUG_INT_EN,
-	[HPD_PORT_B] = PORTB_HOTPLUG_INT_EN,
-	[HPD_PORT_C] = PORTC_HOTPLUG_INT_EN,
-	[HPD_PORT_D] = PORTD_HOTPLUG_INT_EN,
-};
-
-static const u32 hpd_status_g4x[HPD_NUM_PINS] = {
-	[HPD_CRT] = CRT_HOTPLUG_INT_STATUS,
-	[HPD_SDVO_B] = SDVOB_HOTPLUG_INT_STATUS_G4X,
-	[HPD_SDVO_C] = SDVOC_HOTPLUG_INT_STATUS_G4X,
-	[HPD_PORT_B] = PORTB_HOTPLUG_INT_STATUS,
-	[HPD_PORT_C] = PORTC_HOTPLUG_INT_STATUS,
-	[HPD_PORT_D] = PORTD_HOTPLUG_INT_STATUS,
-};
-
-static const u32 hpd_status_i915[HPD_NUM_PINS] = {
-	[HPD_CRT] = CRT_HOTPLUG_INT_STATUS,
-	[HPD_SDVO_B] = SDVOB_HOTPLUG_INT_STATUS_I915,
-	[HPD_SDVO_C] = SDVOC_HOTPLUG_INT_STATUS_I915,
-	[HPD_PORT_B] = PORTB_HOTPLUG_INT_STATUS,
-	[HPD_PORT_C] = PORTC_HOTPLUG_INT_STATUS,
-	[HPD_PORT_D] = PORTD_HOTPLUG_INT_STATUS,
-};
-
-static const u32 hpd_bxt[HPD_NUM_PINS] = {
-	[HPD_PORT_A] = GEN8_DE_PORT_HOTPLUG(HPD_PORT_A),
-	[HPD_PORT_B] = GEN8_DE_PORT_HOTPLUG(HPD_PORT_B),
-	[HPD_PORT_C] = GEN8_DE_PORT_HOTPLUG(HPD_PORT_C),
-};
-
-static const u32 hpd_gen11[HPD_NUM_PINS] = {
-	[HPD_PORT_TC1] = GEN11_TC_HOTPLUG(HPD_PORT_TC1) | GEN11_TBT_HOTPLUG(HPD_PORT_TC1),
-	[HPD_PORT_TC2] = GEN11_TC_HOTPLUG(HPD_PORT_TC2) | GEN11_TBT_HOTPLUG(HPD_PORT_TC2),
-	[HPD_PORT_TC3] = GEN11_TC_HOTPLUG(HPD_PORT_TC3) | GEN11_TBT_HOTPLUG(HPD_PORT_TC3),
-	[HPD_PORT_TC4] = GEN11_TC_HOTPLUG(HPD_PORT_TC4) | GEN11_TBT_HOTPLUG(HPD_PORT_TC4),
-	[HPD_PORT_TC5] = GEN11_TC_HOTPLUG(HPD_PORT_TC5) | GEN11_TBT_HOTPLUG(HPD_PORT_TC5),
-	[HPD_PORT_TC6] = GEN11_TC_HOTPLUG(HPD_PORT_TC6) | GEN11_TBT_HOTPLUG(HPD_PORT_TC6),
-};
-
-static const u32 hpd_xelpdp[HPD_NUM_PINS] = {
-	[HPD_PORT_TC1] = XELPDP_TBT_HOTPLUG(HPD_PORT_TC1) | XELPDP_DP_ALT_HOTPLUG(HPD_PORT_TC1),
-	[HPD_PORT_TC2] = XELPDP_TBT_HOTPLUG(HPD_PORT_TC2) | XELPDP_DP_ALT_HOTPLUG(HPD_PORT_TC2),
-	[HPD_PORT_TC3] = XELPDP_TBT_HOTPLUG(HPD_PORT_TC3) | XELPDP_DP_ALT_HOTPLUG(HPD_PORT_TC3),
-	[HPD_PORT_TC4] = XELPDP_TBT_HOTPLUG(HPD_PORT_TC4) | XELPDP_DP_ALT_HOTPLUG(HPD_PORT_TC4),
-};
-
-static const u32 hpd_icp[HPD_NUM_PINS] = {
-	[HPD_PORT_A] = SDE_DDI_HOTPLUG_ICP(HPD_PORT_A),
-	[HPD_PORT_B] = SDE_DDI_HOTPLUG_ICP(HPD_PORT_B),
-	[HPD_PORT_C] = SDE_DDI_HOTPLUG_ICP(HPD_PORT_C),
-	[HPD_PORT_TC1] = SDE_TC_HOTPLUG_ICP(HPD_PORT_TC1),
-	[HPD_PORT_TC2] = SDE_TC_HOTPLUG_ICP(HPD_PORT_TC2),
-	[HPD_PORT_TC3] = SDE_TC_HOTPLUG_ICP(HPD_PORT_TC3),
-	[HPD_PORT_TC4] = SDE_TC_HOTPLUG_ICP(HPD_PORT_TC4),
-	[HPD_PORT_TC5] = SDE_TC_HOTPLUG_ICP(HPD_PORT_TC5),
-	[HPD_PORT_TC6] = SDE_TC_HOTPLUG_ICP(HPD_PORT_TC6),
-};
-
-static const u32 hpd_sde_dg1[HPD_NUM_PINS] = {
-	[HPD_PORT_A] = SDE_DDI_HOTPLUG_ICP(HPD_PORT_A),
-	[HPD_PORT_B] = SDE_DDI_HOTPLUG_ICP(HPD_PORT_B),
-	[HPD_PORT_C] = SDE_DDI_HOTPLUG_ICP(HPD_PORT_C),
-	[HPD_PORT_D] = SDE_DDI_HOTPLUG_ICP(HPD_PORT_D),
-	[HPD_PORT_TC1] = SDE_TC_HOTPLUG_DG2(HPD_PORT_TC1),
-};
-
-static const u32 hpd_mtp[HPD_NUM_PINS] = {
-	[HPD_PORT_A] = SDE_DDI_HOTPLUG_ICP(HPD_PORT_A),
-	[HPD_PORT_B] = SDE_DDI_HOTPLUG_ICP(HPD_PORT_B),
-	[HPD_PORT_TC1] = SDE_TC_HOTPLUG_ICP(HPD_PORT_TC1),
-	[HPD_PORT_TC2] = SDE_TC_HOTPLUG_ICP(HPD_PORT_TC2),
-	[HPD_PORT_TC3] = SDE_TC_HOTPLUG_ICP(HPD_PORT_TC3),
-	[HPD_PORT_TC4] = SDE_TC_HOTPLUG_ICP(HPD_PORT_TC4),
-};
-
-static void intel_hpd_init_pins(struct drm_i915_private *dev_priv)
-{
-	struct intel_hotplug *hpd = &dev_priv->display.hotplug;
-
-	if (HAS_GMCH(dev_priv)) {
-		if (IS_G4X(dev_priv) || IS_VALLEYVIEW(dev_priv) ||
-		    IS_CHERRYVIEW(dev_priv))
-			hpd->hpd = hpd_status_g4x;
-		else
-			hpd->hpd = hpd_status_i915;
-		return;
-	}
-
-	if (DISPLAY_VER(dev_priv) >= 14)
-		hpd->hpd = hpd_xelpdp;
-	else if (DISPLAY_VER(dev_priv) >= 11)
-		hpd->hpd = hpd_gen11;
-	else if (IS_GEMINILAKE(dev_priv) || IS_BROXTON(dev_priv))
-		hpd->hpd = hpd_bxt;
-	else if (DISPLAY_VER(dev_priv) == 9)
-		hpd->hpd = NULL; /* no north HPD on SKL */
-	else if (DISPLAY_VER(dev_priv) >= 8)
-		hpd->hpd = hpd_bdw;
-	else if (DISPLAY_VER(dev_priv) >= 7)
-		hpd->hpd = hpd_ivb;
-	else
-		hpd->hpd = hpd_ilk;
-
-	if ((INTEL_PCH_TYPE(dev_priv) < PCH_DG1) &&
-	    (!HAS_PCH_SPLIT(dev_priv) || HAS_PCH_NOP(dev_priv)))
-		return;
-
-	if (INTEL_PCH_TYPE(dev_priv) >= PCH_DG1)
-		hpd->pch_hpd = hpd_sde_dg1;
-	else if (INTEL_PCH_TYPE(dev_priv) >= PCH_MTP)
-		hpd->pch_hpd = hpd_mtp;
-	else if (INTEL_PCH_TYPE(dev_priv) >= PCH_ICP)
-		hpd->pch_hpd = hpd_icp;
-	else if (HAS_PCH_CNP(dev_priv) || HAS_PCH_SPT(dev_priv))
-		hpd->pch_hpd = hpd_spt;
-	else if (HAS_PCH_LPT(dev_priv) || HAS_PCH_CPT(dev_priv))
-		hpd->pch_hpd = hpd_cpt;
-	else if (HAS_PCH_IBX(dev_priv))
-		hpd->pch_hpd = hpd_ibx;
-	else
-		MISSING_CASE(INTEL_PCH_TYPE(dev_priv));
-}
-
 static void
 intel_handle_vblank(struct drm_i915_private *dev_priv, enum pipe pipe)
 {
@@ -344,47 +179,14 @@ static void gen2_irq_init(struct intel_uncore *uncore,
 	intel_uncore_posting_read16(uncore, GEN2_IMR);
 }
 
-/* For display hotplug interrupt */
-static inline void
-i915_hotplug_interrupt_update_locked(struct drm_i915_private *dev_priv,
-				     u32 mask,
-				     u32 bits)
-{
-	lockdep_assert_held(&dev_priv->irq_lock);
-	drm_WARN_ON(&dev_priv->drm, bits & ~mask);
-
-	intel_uncore_rmw(&dev_priv->uncore, PORT_HOTPLUG_EN, mask, bits);
-}
-
-/**
- * i915_hotplug_interrupt_update - update hotplug interrupt enable
- * @dev_priv: driver private
- * @mask: bits to update
- * @bits: bits to enable
- * NOTE: the HPD enable bits are modified both inside and outside
- * of an interrupt context. To avoid that read-modify-write cycles
- * interfer, these bits are protected by a spinlock. Since this
- * function is usually not called from a context where the lock is
- * held already, this function acquires the lock itself. A non-locking
- * version is also available.
- */
-void i915_hotplug_interrupt_update(struct drm_i915_private *dev_priv,
-				   u32 mask,
-				   u32 bits)
-{
-	spin_lock_irq(&dev_priv->irq_lock);
-	i915_hotplug_interrupt_update_locked(dev_priv, mask, bits);
-	spin_unlock_irq(&dev_priv->irq_lock);
-}
-
 /**
  * ilk_update_display_irq - update DEIMR
  * @dev_priv: driver private
  * @interrupt_mask: mask of interrupt bits to update
  * @enabled_irq_mask: mask of interrupt bits to enable
  */
-static void ilk_update_display_irq(struct drm_i915_private *dev_priv,
-				   u32 interrupt_mask, u32 enabled_irq_mask)
+void ilk_update_display_irq(struct drm_i915_private *dev_priv,
+			    u32 interrupt_mask, u32 enabled_irq_mask)
 {
 	u32 new_val;
 
@@ -419,9 +221,8 @@ void ilk_disable_display_irq(struct drm_i915_private *i915, u32 bits)
  * @interrupt_mask: mask of interrupt bits to update
  * @enabled_irq_mask: mask of interrupt bits to enable
  */
-static void bdw_update_port_irq(struct drm_i915_private *dev_priv,
-				u32 interrupt_mask,
-				u32 enabled_irq_mask)
+void bdw_update_port_irq(struct drm_i915_private *dev_priv,
+			 u32 interrupt_mask, u32 enabled_irq_mask)
 {
 	u32 new_val;
 	u32 old_val;
@@ -494,9 +295,9 @@ void bdw_disable_pipe_irq(struct drm_i915_private *i915,
  * @interrupt_mask: mask of interrupt bits to update
  * @enabled_irq_mask: mask of interrupt bits to enable
  */
-static void ibx_display_interrupt_update(struct drm_i915_private *dev_priv,
-					 u32 interrupt_mask,
-					 u32 enabled_irq_mask)
+void ibx_display_interrupt_update(struct drm_i915_private *dev_priv,
+				  u32 interrupt_mask,
+				  u32 enabled_irq_mask)
 {
 	u32 sdeimr = intel_uncore_read(&dev_priv->uncore, SDEIMR);
 	sdeimr &= ~interrupt_mask;
@@ -724,209 +525,6 @@ static void ivb_parity_work(struct work_struct *work)
 	mutex_unlock(&dev_priv->drm.struct_mutex);
 }
 
-static bool gen11_port_hotplug_long_detect(enum hpd_pin pin, u32 val)
-{
-	switch (pin) {
-	case HPD_PORT_TC1:
-	case HPD_PORT_TC2:
-	case HPD_PORT_TC3:
-	case HPD_PORT_TC4:
-	case HPD_PORT_TC5:
-	case HPD_PORT_TC6:
-		return val & GEN11_HOTPLUG_CTL_LONG_DETECT(pin);
-	default:
-		return false;
-	}
-}
-
-static bool bxt_port_hotplug_long_detect(enum hpd_pin pin, u32 val)
-{
-	switch (pin) {
-	case HPD_PORT_A:
-		return val & PORTA_HOTPLUG_LONG_DETECT;
-	case HPD_PORT_B:
-		return val & PORTB_HOTPLUG_LONG_DETECT;
-	case HPD_PORT_C:
-		return val & PORTC_HOTPLUG_LONG_DETECT;
-	default:
-		return false;
-	}
-}
-
-static bool icp_ddi_port_hotplug_long_detect(enum hpd_pin pin, u32 val)
-{
-	switch (pin) {
-	case HPD_PORT_A:
-	case HPD_PORT_B:
-	case HPD_PORT_C:
-	case HPD_PORT_D:
-		return val & SHOTPLUG_CTL_DDI_HPD_LONG_DETECT(pin);
-	default:
-		return false;
-	}
-}
-
-static bool icp_tc_port_hotplug_long_detect(enum hpd_pin pin, u32 val)
-{
-	switch (pin) {
-	case HPD_PORT_TC1:
-	case HPD_PORT_TC2:
-	case HPD_PORT_TC3:
-	case HPD_PORT_TC4:
-	case HPD_PORT_TC5:
-	case HPD_PORT_TC6:
-		return val & ICP_TC_HPD_LONG_DETECT(pin);
-	default:
-		return false;
-	}
-}
-
-static bool spt_port_hotplug2_long_detect(enum hpd_pin pin, u32 val)
-{
-	switch (pin) {
-	case HPD_PORT_E:
-		return val & PORTE_HOTPLUG_LONG_DETECT;
-	default:
-		return false;
-	}
-}
-
-static bool spt_port_hotplug_long_detect(enum hpd_pin pin, u32 val)
-{
-	switch (pin) {
-	case HPD_PORT_A:
-		return val & PORTA_HOTPLUG_LONG_DETECT;
-	case HPD_PORT_B:
-		return val & PORTB_HOTPLUG_LONG_DETECT;
-	case HPD_PORT_C:
-		return val & PORTC_HOTPLUG_LONG_DETECT;
-	case HPD_PORT_D:
-		return val & PORTD_HOTPLUG_LONG_DETECT;
-	default:
-		return false;
-	}
-}
-
-static bool ilk_port_hotplug_long_detect(enum hpd_pin pin, u32 val)
-{
-	switch (pin) {
-	case HPD_PORT_A:
-		return val & DIGITAL_PORTA_HOTPLUG_LONG_DETECT;
-	default:
-		return false;
-	}
-}
-
-static bool pch_port_hotplug_long_detect(enum hpd_pin pin, u32 val)
-{
-	switch (pin) {
-	case HPD_PORT_B:
-		return val & PORTB_HOTPLUG_LONG_DETECT;
-	case HPD_PORT_C:
-		return val & PORTC_HOTPLUG_LONG_DETECT;
-	case HPD_PORT_D:
-		return val & PORTD_HOTPLUG_LONG_DETECT;
-	default:
-		return false;
-	}
-}
-
-static bool i9xx_port_hotplug_long_detect(enum hpd_pin pin, u32 val)
-{
-	switch (pin) {
-	case HPD_PORT_B:
-		return val & PORTB_HOTPLUG_INT_LONG_PULSE;
-	case HPD_PORT_C:
-		return val & PORTC_HOTPLUG_INT_LONG_PULSE;
-	case HPD_PORT_D:
-		return val & PORTD_HOTPLUG_INT_LONG_PULSE;
-	default:
-		return false;
-	}
-}
-
-/*
- * Get a bit mask of pins that have triggered, and which ones may be long.
- * This can be called multiple times with the same masks to accumulate
- * hotplug detection results from several registers.
- *
- * Note that the caller is expected to zero out the masks initially.
- */
-static void intel_get_hpd_pins(struct drm_i915_private *dev_priv,
-			       u32 *pin_mask, u32 *long_mask,
-			       u32 hotplug_trigger, u32 dig_hotplug_reg,
-			       const u32 hpd[HPD_NUM_PINS],
-			       bool long_pulse_detect(enum hpd_pin pin, u32 val))
-{
-	enum hpd_pin pin;
-
-	BUILD_BUG_ON(BITS_PER_TYPE(*pin_mask) < HPD_NUM_PINS);
-
-	for_each_hpd_pin(pin) {
-		if ((hpd[pin] & hotplug_trigger) == 0)
-			continue;
-
-		*pin_mask |= BIT(pin);
-
-		if (long_pulse_detect(pin, dig_hotplug_reg))
-			*long_mask |= BIT(pin);
-	}
-
-	drm_dbg(&dev_priv->drm,
-		"hotplug event received, stat 0x%08x, dig 0x%08x, pins 0x%08x, long 0x%08x\n",
-		hotplug_trigger, dig_hotplug_reg, *pin_mask, *long_mask);
-
-}
-
-static u32 intel_hpd_enabled_irqs(struct drm_i915_private *dev_priv,
-				  const u32 hpd[HPD_NUM_PINS])
-{
-	struct intel_encoder *encoder;
-	u32 enabled_irqs = 0;
-
-	for_each_intel_encoder(&dev_priv->drm, encoder)
-		if (dev_priv->display.hotplug.stats[encoder->hpd_pin].state == HPD_ENABLED)
-			enabled_irqs |= hpd[encoder->hpd_pin];
-
-	return enabled_irqs;
-}
-
-static u32 intel_hpd_hotplug_irqs(struct drm_i915_private *dev_priv,
-				  const u32 hpd[HPD_NUM_PINS])
-{
-	struct intel_encoder *encoder;
-	u32 hotplug_irqs = 0;
-
-	for_each_intel_encoder(&dev_priv->drm, encoder)
-		hotplug_irqs |= hpd[encoder->hpd_pin];
-
-	return hotplug_irqs;
-}
-
-static u32 intel_hpd_hotplug_mask(struct drm_i915_private *i915,
-				  hotplug_mask_func hotplug_mask)
-{
-	enum hpd_pin pin;
-	u32 hotplug = 0;
-
-	for_each_hpd_pin(pin)
-		hotplug |= hotplug_mask(pin);
-
-	return hotplug;
-}
-
-static u32 intel_hpd_hotplug_enables(struct drm_i915_private *i915,
-				     hotplug_enables_func hotplug_enables)
-{
-	struct intel_encoder *encoder;
-	u32 hotplug = 0;
-
-	for_each_intel_encoder(&i915->drm, encoder)
-		hotplug |= hotplug_enables(encoder);
-
-	return hotplug;
-}
-
 #if defined(CONFIG_DEBUG_FS)
 static void display_pipe_crc_irq_handler(struct drm_i915_private *dev_priv,
 					 enum pipe pipe,
@@ -1199,71 +797,6 @@ static void valleyview_pipestat_irq_handler(struct drm_i915_private *dev_priv,
 		intel_gmbus_irq_handler(dev_priv);
 }
 
-static u32 i9xx_hpd_irq_ack(struct drm_i915_private *dev_priv)
-{
-	u32 hotplug_status = 0, hotplug_status_mask;
-	int i;
-
-	if (IS_G4X(dev_priv) ||
-	    IS_VALLEYVIEW(dev_priv) || IS_CHERRYVIEW(dev_priv))
-		hotplug_status_mask = HOTPLUG_INT_STATUS_G4X |
-			DP_AUX_CHANNEL_MASK_INT_STATUS_G4X;
-	else
-		hotplug_status_mask = HOTPLUG_INT_STATUS_I915;
-
-	/*
-	 * We absolutely have to clear all the pending interrupt
-	 * bits in PORT_HOTPLUG_STAT. Otherwise the ISR port
-	 * interrupt bit won't have an edge, and the i965/g4x
-	 * edge triggered IIR will not notice that an interrupt
-	 * is still pending. We can't use PORT_HOTPLUG_EN to
-	 * guarantee the edge as the act of toggling the enable
-	 * bits can itself generate a new hotplug interrupt :(
-	 */
-	for (i = 0; i < 10; i++) {
-		u32 tmp = intel_uncore_read(&dev_priv->uncore, PORT_HOTPLUG_STAT) & hotplug_status_mask;
-
-		if (tmp == 0)
-			return hotplug_status;
-
-		hotplug_status |= tmp;
-		intel_uncore_write(&dev_priv->uncore, PORT_HOTPLUG_STAT, hotplug_status);
-	}
-
-	drm_WARN_ONCE(&dev_priv->drm, 1,
-		      "PORT_HOTPLUG_STAT did not clear (0x%08x)\n",
-		      intel_uncore_read(&dev_priv->uncore, PORT_HOTPLUG_STAT));
-
-	return hotplug_status;
-}
-
-static void i9xx_hpd_irq_handler(struct drm_i915_private *dev_priv,
-				 u32 hotplug_status)
-{
-	u32 pin_mask = 0, long_mask = 0;
-	u32 hotplug_trigger;
-
-	if (IS_G4X(dev_priv) ||
-	    IS_VALLEYVIEW(dev_priv) || IS_CHERRYVIEW(dev_priv))
-		hotplug_trigger = hotplug_status & HOTPLUG_INT_STATUS_G4X;
-	else
-		hotplug_trigger = hotplug_status & HOTPLUG_INT_STATUS_I915;
-
-	if (hotplug_trigger) {
-		intel_get_hpd_pins(dev_priv, &pin_mask, &long_mask,
-				   hotplug_trigger, hotplug_trigger,
-				   dev_priv->display.hotplug.hpd,
-				   i9xx_port_hotplug_long_detect);
-
-		intel_hpd_irq_handler(dev_priv, pin_mask, long_mask);
-	}
-
-	if ((IS_G4X(dev_priv) ||
-	     IS_VALLEYVIEW(dev_priv) || IS_CHERRYVIEW(dev_priv)) &&
-	    hotplug_status & DP_AUX_CHANNEL_MASK_INT_STATUS_G4X)
-		intel_dp_aux_irq_handler(dev_priv);
-}
-
 static irqreturn_t valleyview_irq_handler(int irq, void *arg)
 {
 	struct drm_i915_private *dev_priv = arg;
@@ -1428,38 +961,6 @@ static irqreturn_t cherryview_irq_handler(int irq, void *arg)
 	return ret;
 }
 
-static void ibx_hpd_irq_handler(struct drm_i915_private *dev_priv,
-				u32 hotplug_trigger)
-{
-	u32 dig_hotplug_reg, pin_mask = 0, long_mask = 0;
-
-	/*
-	 * Somehow the PCH doesn't seem to really ack the interrupt to the CPU
-	 * unless we touch the hotplug register, even if hotplug_trigger is
-	 * zero. Not acking leads to "The master control interrupt lied (SDE)!"
-	 * errors.
-	 */
-	dig_hotplug_reg = intel_uncore_read(&dev_priv->uncore, PCH_PORT_HOTPLUG);
-	if (!hotplug_trigger) {
-		u32 mask = PORTA_HOTPLUG_STATUS_MASK |
-			PORTD_HOTPLUG_STATUS_MASK |
-			PORTC_HOTPLUG_STATUS_MASK |
-			PORTB_HOTPLUG_STATUS_MASK;
-		dig_hotplug_reg &= ~mask;
-	}
-
-	intel_uncore_write(&dev_priv->uncore, PCH_PORT_HOTPLUG, dig_hotplug_reg);
-	if (!hotplug_trigger)
-		return;
-
-	intel_get_hpd_pins(dev_priv, &pin_mask, &long_mask,
-			   hotplug_trigger, dig_hotplug_reg,
-			   dev_priv->display.hotplug.pch_hpd,
-			   pch_port_hotplug_long_detect);
-
-	intel_hpd_irq_handler(dev_priv, pin_mask, long_mask);
-}
-
 static void ibx_irq_handler(struct drm_i915_private *dev_priv, u32 pch_iir)
 {
 	enum pipe pipe;
@@ -1585,133 +1086,6 @@ static void cpt_irq_handler(struct drm_i915_private *dev_priv, u32 pch_iir)
 		cpt_serr_int_handler(dev_priv);
 }
 
-static void xelpdp_pica_irq_handler(struct drm_i915_private *i915, u32 iir)
-{
-	enum hpd_pin pin;
-	u32 hotplug_trigger = iir & (XELPDP_DP_ALT_HOTPLUG_MASK | XELPDP_TBT_HOTPLUG_MASK);
-	u32 trigger_aux = iir & XELPDP_AUX_TC_MASK;
-	u32 pin_mask = 0, long_mask = 0;
-
-	for (pin = HPD_PORT_TC1; pin <= HPD_PORT_TC4; pin++) {
-		u32 val;
-
-		if (!(i915->display.hotplug.hpd[pin] & hotplug_trigger))
-			continue;
-
-		pin_mask |= BIT(pin);
-
-		val = intel_de_read(i915, XELPDP_PORT_HOTPLUG_CTL(pin));
-		intel_de_write(i915, XELPDP_PORT_HOTPLUG_CTL(pin), val);
-
-		if (val & (XELPDP_DP_ALT_HPD_LONG_DETECT | XELPDP_TBT_HPD_LONG_DETECT))
-			long_mask |= BIT(pin);
-	}
-
-	if (pin_mask) {
-		drm_dbg(&i915->drm,
-			"pica hotplug event received, stat 0x%08x, pins 0x%08x, long 0x%08x\n",
-			hotplug_trigger, pin_mask, long_mask);
-
-		intel_hpd_irq_handler(i915, pin_mask, long_mask);
-	}
-
-	if (trigger_aux)
-		intel_dp_aux_irq_handler(i915);
-
-	if (!pin_mask && !trigger_aux)
-		drm_err(&i915->drm,
-			"Unexpected DE HPD/AUX interrupt 0x%08x\n", iir);
-}
-
-static void icp_irq_handler(struct drm_i915_private *dev_priv, u32 pch_iir)
-{
-	u32 ddi_hotplug_trigger = pch_iir & SDE_DDI_HOTPLUG_MASK_ICP;
-	u32 tc_hotplug_trigger = pch_iir & SDE_TC_HOTPLUG_MASK_ICP;
-	u32 pin_mask = 0, long_mask = 0;
-
-	if (ddi_hotplug_trigger) {
-		u32 dig_hotplug_reg;
-
-		/* Locking due to DSI native GPIO sequences */
-		spin_lock(&dev_priv->irq_lock);
-		dig_hotplug_reg = intel_uncore_rmw(&dev_priv->uncore, SHOTPLUG_CTL_DDI, 0, 0);
-		spin_unlock(&dev_priv->irq_lock);
-
-		intel_get_hpd_pins(dev_priv, &pin_mask, &long_mask,
-				   ddi_hotplug_trigger, dig_hotplug_reg,
-				   dev_priv->display.hotplug.pch_hpd,
-				   icp_ddi_port_hotplug_long_detect);
-	}
-
-	if (tc_hotplug_trigger) {
-		u32 dig_hotplug_reg;
-
-		dig_hotplug_reg = intel_uncore_rmw(&dev_priv->uncore, SHOTPLUG_CTL_TC, 0, 0);
-
-		intel_get_hpd_pins(dev_priv, &pin_mask, &long_mask,
-				   tc_hotplug_trigger, dig_hotplug_reg,
-				   dev_priv->display.hotplug.pch_hpd,
-				   icp_tc_port_hotplug_long_detect);
-	}
-
-	if (pin_mask)
-		intel_hpd_irq_handler(dev_priv, pin_mask, long_mask);
-
-	if (pch_iir & SDE_GMBUS_ICP)
-		intel_gmbus_irq_handler(dev_priv);
-}
-
-static void spt_irq_handler(struct drm_i915_private *dev_priv, u32 pch_iir)
-{
-	u32 hotplug_trigger = pch_iir & SDE_HOTPLUG_MASK_SPT &
-		~SDE_PORTE_HOTPLUG_SPT;
-	u32 hotplug2_trigger = pch_iir & SDE_PORTE_HOTPLUG_SPT;
-	u32 pin_mask = 0, long_mask = 0;
-
-	if (hotplug_trigger) {
-		u32 dig_hotplug_reg;
-
-		dig_hotplug_reg = intel_uncore_rmw(&dev_priv->uncore, PCH_PORT_HOTPLUG, 0, 0);
-
-		intel_get_hpd_pins(dev_priv, &pin_mask, &long_mask,
-				   hotplug_trigger, dig_hotplug_reg,
-				   dev_priv->display.hotplug.pch_hpd,
-				   spt_port_hotplug_long_detect);
-	}
-
-	if (hotplug2_trigger) {
-		u32 dig_hotplug_reg;
-
-		dig_hotplug_reg = intel_uncore_rmw(&dev_priv->uncore, PCH_PORT_HOTPLUG2, 0, 0);
-
-		intel_get_hpd_pins(dev_priv, &pin_mask, &long_mask,
-				   hotplug2_trigger, dig_hotplug_reg,
-				   dev_priv->display.hotplug.pch_hpd,
-				   spt_port_hotplug2_long_detect);
-	}
-
-	if (pin_mask)
-		intel_hpd_irq_handler(dev_priv, pin_mask, long_mask);
-
-	if (pch_iir & SDE_GMBUS_CPT)
-		intel_gmbus_irq_handler(dev_priv);
-}
-
-static void ilk_hpd_irq_handler(struct drm_i915_private *dev_priv,
-				u32 hotplug_trigger)
-{
-	u32 dig_hotplug_reg, pin_mask = 0, long_mask = 0;
-
-	dig_hotplug_reg = intel_uncore_rmw(&dev_priv->uncore, DIGITAL_PORT_HOTPLUG_CNTRL, 0, 0);
-
-	intel_get_hpd_pins(dev_priv, &pin_mask, &long_mask,
-			   hotplug_trigger, dig_hotplug_reg,
-			   dev_priv->display.hotplug.hpd,
-			   ilk_port_hotplug_long_detect);
-
-	intel_hpd_irq_handler(dev_priv, pin_mask, long_mask);
-}
-
 static void ilk_display_irq_handler(struct drm_i915_private *dev_priv,
 				    u32 de_iir)
 {
@@ -1876,56 +1250,6 @@ static irqreturn_t ilk_irq_handler(int irq, void *arg)
 	return ret;
 }
 
-static void bxt_hpd_irq_handler(struct drm_i915_private *dev_priv,
-				u32 hotplug_trigger)
-{
-	u32 dig_hotplug_reg, pin_mask = 0, long_mask = 0;
-
-	dig_hotplug_reg = intel_uncore_rmw(&dev_priv->uncore, PCH_PORT_HOTPLUG, 0, 0);
-
-	intel_get_hpd_pins(dev_priv, &pin_mask, &long_mask,
-			   hotplug_trigger, dig_hotplug_reg,
-			   dev_priv->display.hotplug.hpd,
-			   bxt_port_hotplug_long_detect);
-
-	intel_hpd_irq_handler(dev_priv, pin_mask, long_mask);
-}
-
-static void gen11_hpd_irq_handler(struct drm_i915_private *dev_priv, u32 iir)
-{
-	u32 pin_mask = 0, long_mask = 0;
-	u32 trigger_tc = iir & GEN11_DE_TC_HOTPLUG_MASK;
-	u32 trigger_tbt = iir & GEN11_DE_TBT_HOTPLUG_MASK;
-
-	if (trigger_tc) {
-		u32 dig_hotplug_reg;
-
-		dig_hotplug_reg = intel_uncore_rmw(&dev_priv->uncore, GEN11_TC_HOTPLUG_CTL, 0, 0);
-
-		intel_get_hpd_pins(dev_priv, &pin_mask, &long_mask,
-				   trigger_tc, dig_hotplug_reg,
-				   dev_priv->display.hotplug.hpd,
-				   gen11_port_hotplug_long_detect);
-	}
-
-	if (trigger_tbt) {
-		u32 dig_hotplug_reg;
-
-		dig_hotplug_reg = intel_uncore_rmw(&dev_priv->uncore, GEN11_TBT_HOTPLUG_CTL, 0, 0);
-
-		intel_get_hpd_pins(dev_priv, &pin_mask, &long_mask,
-				   trigger_tbt, dig_hotplug_reg,
-				   dev_priv->display.hotplug.hpd,
-				   gen11_port_hotplug_long_detect);
-	}
-
-	if (pin_mask)
-		intel_hpd_irq_handler(dev_priv, pin_mask, long_mask);
-	else
-		drm_err(&dev_priv->drm,
-			"Unexpected DE HPD interrupt 0x%08x\n", iir);
-}
-
 static u32 gen8_de_port_aux_mask(struct drm_i915_private *dev_priv)
 {
 	u32 mask;
@@ -2933,696 +2257,39 @@ static void cherryview_irq_reset(struct drm_i915_private *dev_priv)
 	spin_unlock_irq(&dev_priv->irq_lock);
 }
 
-static u32 ibx_hotplug_mask(enum hpd_pin hpd_pin)
+/*
+ * SDEIER is also touched by the interrupt handler to work around missed PCH
+ * interrupts. Hence we can't update it after the interrupt handler is enabled -
+ * instead we unconditionally enable all PCH interrupt sources here, but then
+ * only unmask them as needed with SDEIMR.
+ *
+ * Note that we currently do this after installing the interrupt handler,
+ * but before we enable the master interrupt. That should be sufficient
+ * to avoid races with the irq handler, assuming we have MSI. Shared legacy
+ * interrupts could still race.
+ */
+static void ibx_irq_postinstall(struct drm_i915_private *dev_priv)
 {
-	switch (hpd_pin) {
-	case HPD_PORT_A:
-		return PORTA_HOTPLUG_ENABLE;
-	case HPD_PORT_B:
-		return PORTB_HOTPLUG_ENABLE | PORTB_PULSE_DURATION_MASK;
-	case HPD_PORT_C:
-		return PORTC_HOTPLUG_ENABLE | PORTC_PULSE_DURATION_MASK;
-	case HPD_PORT_D:
-		return PORTD_HOTPLUG_ENABLE | PORTD_PULSE_DURATION_MASK;
-	default:
-		return 0;
-	}
+	struct intel_uncore *uncore = &dev_priv->uncore;
+	u32 mask;
+
+	if (HAS_PCH_NOP(dev_priv))
+		return;
+
+	if (HAS_PCH_IBX(dev_priv))
+		mask = SDE_GMBUS | SDE_AUX_MASK | SDE_POISON;
+	else if (HAS_PCH_CPT(dev_priv) || HAS_PCH_LPT(dev_priv))
+		mask = SDE_GMBUS_CPT | SDE_AUX_MASK_CPT;
+	else
+		mask = SDE_GMBUS_CPT;
+
+	GEN3_IRQ_INIT(uncore, SDE, ~mask, 0xffffffff);
 }
 
-static u32 ibx_hotplug_enables(struct intel_encoder *encoder)
+static void ilk_irq_postinstall(struct drm_i915_private *dev_priv)
 {
-	struct drm_i915_private *i915 = to_i915(encoder->base.dev);
-
-	switch (encoder->hpd_pin) {
-	case HPD_PORT_A:
-		/*
-		 * When CPU and PCH are on the same package, port A
-		 * HPD must be enabled in both north and south.
-		 */
-		return HAS_PCH_LPT_LP(i915) ?
-			PORTA_HOTPLUG_ENABLE : 0;
-	case HPD_PORT_B:
-		return PORTB_HOTPLUG_ENABLE |
-			PORTB_PULSE_DURATION_2ms;
-	case HPD_PORT_C:
-		return PORTC_HOTPLUG_ENABLE |
-			PORTC_PULSE_DURATION_2ms;
-	case HPD_PORT_D:
-		return PORTD_HOTPLUG_ENABLE |
-			PORTD_PULSE_DURATION_2ms;
-	default:
-		return 0;
-	}
-}
-
-static void ibx_hpd_detection_setup(struct drm_i915_private *dev_priv)
-{
-	/*
-	 * Enable digital hotplug on the PCH, and configure the DP short pulse
-	 * duration to 2ms (which is the minimum in the Display Port spec).
-	 * The pulse duration bits are reserved on LPT+.
-	 */
-	intel_uncore_rmw(&dev_priv->uncore, PCH_PORT_HOTPLUG,
-			 intel_hpd_hotplug_mask(dev_priv, ibx_hotplug_mask),
-			 intel_hpd_hotplug_enables(dev_priv, ibx_hotplug_enables));
-}
-
-static void ibx_hpd_enable_detection(struct intel_encoder *encoder)
-{
-	struct drm_i915_private *i915 = to_i915(encoder->base.dev);
-
-	intel_uncore_rmw(&i915->uncore, PCH_PORT_HOTPLUG,
-			 ibx_hotplug_mask(encoder->hpd_pin),
-			 ibx_hotplug_enables(encoder));
-}
-
-static void ibx_hpd_irq_setup(struct drm_i915_private *dev_priv)
-{
-	u32 hotplug_irqs, enabled_irqs;
-
-	enabled_irqs = intel_hpd_enabled_irqs(dev_priv, dev_priv->display.hotplug.pch_hpd);
-	hotplug_irqs = intel_hpd_hotplug_irqs(dev_priv, dev_priv->display.hotplug.pch_hpd);
-
-	ibx_display_interrupt_update(dev_priv, hotplug_irqs, enabled_irqs);
-
-	ibx_hpd_detection_setup(dev_priv);
-}
-
-static u32 icp_ddi_hotplug_mask(enum hpd_pin hpd_pin)
-{
-	switch (hpd_pin) {
-	case HPD_PORT_A:
-	case HPD_PORT_B:
-	case HPD_PORT_C:
-	case HPD_PORT_D:
-		return SHOTPLUG_CTL_DDI_HPD_ENABLE(hpd_pin);
-	default:
-		return 0;
-	}
-}
-
-static u32 icp_ddi_hotplug_enables(struct intel_encoder *encoder)
-{
-	return icp_ddi_hotplug_mask(encoder->hpd_pin);
-}
-
-static u32 icp_tc_hotplug_mask(enum hpd_pin hpd_pin)
-{
-	switch (hpd_pin) {
-	case HPD_PORT_TC1:
-	case HPD_PORT_TC2:
-	case HPD_PORT_TC3:
-	case HPD_PORT_TC4:
-	case HPD_PORT_TC5:
-	case HPD_PORT_TC6:
-		return ICP_TC_HPD_ENABLE(hpd_pin);
-	default:
-		return 0;
-	}
-}
-
-static u32 icp_tc_hotplug_enables(struct intel_encoder *encoder)
-{
-	return icp_tc_hotplug_mask(encoder->hpd_pin);
-}
-
-static void icp_ddi_hpd_detection_setup(struct drm_i915_private *dev_priv)
-{
-	intel_uncore_rmw(&dev_priv->uncore, SHOTPLUG_CTL_DDI,
-			 intel_hpd_hotplug_mask(dev_priv, icp_ddi_hotplug_mask),
-			 intel_hpd_hotplug_enables(dev_priv, icp_ddi_hotplug_enables));
-}
-
-static void icp_ddi_hpd_enable_detection(struct intel_encoder *encoder)
-{
-	struct drm_i915_private *i915 = to_i915(encoder->base.dev);
-
-	intel_uncore_rmw(&i915->uncore, SHOTPLUG_CTL_DDI,
-			 icp_ddi_hotplug_mask(encoder->hpd_pin),
-			 icp_ddi_hotplug_enables(encoder));
-}
-
-static void icp_tc_hpd_detection_setup(struct drm_i915_private *dev_priv)
-{
-	intel_uncore_rmw(&dev_priv->uncore, SHOTPLUG_CTL_TC,
-			 intel_hpd_hotplug_mask(dev_priv, icp_tc_hotplug_mask),
-			 intel_hpd_hotplug_enables(dev_priv, icp_tc_hotplug_enables));
-}
-
-static void icp_tc_hpd_enable_detection(struct intel_encoder *encoder)
-{
-	struct drm_i915_private *i915 = to_i915(encoder->base.dev);
-
-	intel_uncore_rmw(&i915->uncore, SHOTPLUG_CTL_TC,
-			 icp_tc_hotplug_mask(encoder->hpd_pin),
-			 icp_tc_hotplug_enables(encoder));
-}
-
-static void icp_hpd_enable_detection(struct intel_encoder *encoder)
-{
-	icp_ddi_hpd_enable_detection(encoder);
-	icp_tc_hpd_enable_detection(encoder);
-}
-
-static void icp_hpd_irq_setup(struct drm_i915_private *dev_priv)
-{
-	u32 hotplug_irqs, enabled_irqs;
-
-	enabled_irqs = intel_hpd_enabled_irqs(dev_priv, dev_priv->display.hotplug.pch_hpd);
-	hotplug_irqs = intel_hpd_hotplug_irqs(dev_priv, dev_priv->display.hotplug.pch_hpd);
-
-	if (INTEL_PCH_TYPE(dev_priv) <= PCH_TGP)
-		intel_uncore_write(&dev_priv->uncore, SHPD_FILTER_CNT, SHPD_FILTER_CNT_500_ADJ);
-
-	ibx_display_interrupt_update(dev_priv, hotplug_irqs, enabled_irqs);
-
-	icp_ddi_hpd_detection_setup(dev_priv);
-	icp_tc_hpd_detection_setup(dev_priv);
-}
-
-static u32 gen11_hotplug_mask(enum hpd_pin hpd_pin)
-{
-	switch (hpd_pin) {
-	case HPD_PORT_TC1:
-	case HPD_PORT_TC2:
-	case HPD_PORT_TC3:
-	case HPD_PORT_TC4:
-	case HPD_PORT_TC5:
-	case HPD_PORT_TC6:
-		return GEN11_HOTPLUG_CTL_ENABLE(hpd_pin);
-	default:
-		return 0;
-	}
-}
-
-static u32 gen11_hotplug_enables(struct intel_encoder *encoder)
-{
-	return gen11_hotplug_mask(encoder->hpd_pin);
-}
-
-static void dg1_hpd_invert(struct drm_i915_private *i915)
-{
-	u32 val = (INVERT_DDIA_HPD |
-		   INVERT_DDIB_HPD |
-		   INVERT_DDIC_HPD |
-		   INVERT_DDID_HPD);
-	intel_uncore_rmw(&i915->uncore, SOUTH_CHICKEN1, 0, val);
-}
-
-static void dg1_hpd_enable_detection(struct intel_encoder *encoder)
-{
-	struct drm_i915_private *i915 = to_i915(encoder->base.dev);
-
-	dg1_hpd_invert(i915);
-	icp_hpd_enable_detection(encoder);
-}
-
-static void dg1_hpd_irq_setup(struct drm_i915_private *dev_priv)
-{
-	dg1_hpd_invert(dev_priv);
-	icp_hpd_irq_setup(dev_priv);
-}
-
-static void gen11_tc_hpd_detection_setup(struct drm_i915_private *dev_priv)
-{
-	intel_uncore_rmw(&dev_priv->uncore, GEN11_TC_HOTPLUG_CTL,
-			 intel_hpd_hotplug_mask(dev_priv, gen11_hotplug_mask),
-			 intel_hpd_hotplug_enables(dev_priv, gen11_hotplug_enables));
-}
-
-static void gen11_tc_hpd_enable_detection(struct intel_encoder *encoder)
-{
-	struct drm_i915_private *i915 = to_i915(encoder->base.dev);
-
-	intel_uncore_rmw(&i915->uncore, GEN11_TC_HOTPLUG_CTL,
-			 gen11_hotplug_mask(encoder->hpd_pin),
-			 gen11_hotplug_enables(encoder));
-}
-
-static void gen11_tbt_hpd_detection_setup(struct drm_i915_private *dev_priv)
-{
-	intel_uncore_rmw(&dev_priv->uncore, GEN11_TBT_HOTPLUG_CTL,
-			 intel_hpd_hotplug_mask(dev_priv, gen11_hotplug_mask),
-			 intel_hpd_hotplug_enables(dev_priv, gen11_hotplug_enables));
-}
-
-static void gen11_tbt_hpd_enable_detection(struct intel_encoder *encoder)
-{
-	struct drm_i915_private *i915 = to_i915(encoder->base.dev);
-
-	intel_uncore_rmw(&i915->uncore, GEN11_TBT_HOTPLUG_CTL,
-			 gen11_hotplug_mask(encoder->hpd_pin),
-			 gen11_hotplug_enables(encoder));
-}
-
-static void gen11_hpd_enable_detection(struct intel_encoder *encoder)
-{
-	struct drm_i915_private *i915 = to_i915(encoder->base.dev);
-
-	gen11_tc_hpd_enable_detection(encoder);
-	gen11_tbt_hpd_enable_detection(encoder);
-
-	if (INTEL_PCH_TYPE(i915) >= PCH_ICP)
-		icp_hpd_enable_detection(encoder);
-}
-
-static void gen11_hpd_irq_setup(struct drm_i915_private *dev_priv)
-{
-	u32 hotplug_irqs, enabled_irqs;
-
-	enabled_irqs = intel_hpd_enabled_irqs(dev_priv, dev_priv->display.hotplug.hpd);
-	hotplug_irqs = intel_hpd_hotplug_irqs(dev_priv, dev_priv->display.hotplug.hpd);
-
-	intel_uncore_rmw(&dev_priv->uncore, GEN11_DE_HPD_IMR, hotplug_irqs,
-			 ~enabled_irqs & hotplug_irqs);
-	intel_uncore_posting_read(&dev_priv->uncore, GEN11_DE_HPD_IMR);
-
-	gen11_tc_hpd_detection_setup(dev_priv);
-	gen11_tbt_hpd_detection_setup(dev_priv);
-
-	if (INTEL_PCH_TYPE(dev_priv) >= PCH_ICP)
-		icp_hpd_irq_setup(dev_priv);
-}
-
-static u32 mtp_ddi_hotplug_mask(enum hpd_pin hpd_pin)
-{
-	switch (hpd_pin) {
-	case HPD_PORT_A:
-	case HPD_PORT_B:
-		return SHOTPLUG_CTL_DDI_HPD_ENABLE(hpd_pin);
-	default:
-		return 0;
-	}
-}
-
-static u32 mtp_ddi_hotplug_enables(struct intel_encoder *encoder)
-{
-	return mtp_ddi_hotplug_mask(encoder->hpd_pin);
-}
-
-static u32 mtp_tc_hotplug_mask(enum hpd_pin hpd_pin)
-{
-	switch (hpd_pin) {
-	case HPD_PORT_TC1:
-	case HPD_PORT_TC2:
-	case HPD_PORT_TC3:
-	case HPD_PORT_TC4:
-		return ICP_TC_HPD_ENABLE(hpd_pin);
-	default:
-		return 0;
-	}
-}
-
-static u32 mtp_tc_hotplug_enables(struct intel_encoder *encoder)
-{
-	return mtp_tc_hotplug_mask(encoder->hpd_pin);
-}
-
-static void mtp_ddi_hpd_detection_setup(struct drm_i915_private *i915)
-{
-	intel_de_rmw(i915, SHOTPLUG_CTL_DDI,
-		     intel_hpd_hotplug_mask(i915, mtp_ddi_hotplug_mask),
-		     intel_hpd_hotplug_enables(i915, mtp_ddi_hotplug_enables));
-}
-
-static void mtp_ddi_hpd_enable_detection(struct intel_encoder *encoder)
-{
-	struct drm_i915_private *i915 = to_i915(encoder->base.dev);
-
-	intel_de_rmw(i915, SHOTPLUG_CTL_DDI,
-		     mtp_ddi_hotplug_mask(encoder->hpd_pin),
-		     mtp_ddi_hotplug_enables(encoder));
-}
-
-static void mtp_tc_hpd_detection_setup(struct drm_i915_private *i915)
-{
-	intel_de_rmw(i915, SHOTPLUG_CTL_TC,
-		     intel_hpd_hotplug_mask(i915, mtp_tc_hotplug_mask),
-		     intel_hpd_hotplug_enables(i915, mtp_tc_hotplug_enables));
-}
-
-static void mtp_tc_hpd_enable_detection(struct intel_encoder *encoder)
-{
-	struct drm_i915_private *i915 = to_i915(encoder->base.dev);
-
-	intel_de_rmw(i915, SHOTPLUG_CTL_DDI,
-		     mtp_tc_hotplug_mask(encoder->hpd_pin),
-		     mtp_tc_hotplug_enables(encoder));
-}
-
-static void mtp_hpd_invert(struct drm_i915_private *i915)
-{
-	u32 val = (INVERT_DDIA_HPD |
-		   INVERT_DDIB_HPD |
-		   INVERT_DDIC_HPD |
-		   INVERT_TC1_HPD |
-		   INVERT_TC2_HPD |
-		   INVERT_TC3_HPD |
-		   INVERT_TC4_HPD |
-		   INVERT_DDID_HPD_MTP |
-		   INVERT_DDIE_HPD);
-	intel_de_rmw(i915, SOUTH_CHICKEN1, 0, val);
-}
-
-static void mtp_hpd_enable_detection(struct intel_encoder *encoder)
-{
-	struct drm_i915_private *i915 = to_i915(encoder->base.dev);
-
-	mtp_hpd_invert(i915);
-	mtp_ddi_hpd_enable_detection(encoder);
-	mtp_tc_hpd_enable_detection(encoder);
-}
-
-static void mtp_hpd_irq_setup(struct drm_i915_private *i915)
-{
-	u32 hotplug_irqs, enabled_irqs;
-
-	enabled_irqs = intel_hpd_enabled_irqs(i915, i915->display.hotplug.pch_hpd);
-	hotplug_irqs = intel_hpd_hotplug_irqs(i915, i915->display.hotplug.pch_hpd);
-
-	intel_de_write(i915, SHPD_FILTER_CNT, SHPD_FILTER_CNT_500_ADJ);
-
-	mtp_hpd_invert(i915);
-	ibx_display_interrupt_update(i915, hotplug_irqs, enabled_irqs);
-
-	mtp_ddi_hpd_detection_setup(i915);
-	mtp_tc_hpd_detection_setup(i915);
-}
-
-static bool is_xelpdp_pica_hpd_pin(enum hpd_pin hpd_pin)
-{
-	return hpd_pin >= HPD_PORT_TC1 && hpd_pin <= HPD_PORT_TC4;
-}
-
-static void _xelpdp_pica_hpd_detection_setup(struct drm_i915_private *i915,
-					     enum hpd_pin hpd_pin, bool enable)
-{
-	u32 mask = XELPDP_TBT_HOTPLUG_ENABLE |
-		XELPDP_DP_ALT_HOTPLUG_ENABLE;
-
-	if (!is_xelpdp_pica_hpd_pin(hpd_pin))
-		return;
-
-	intel_de_rmw(i915, XELPDP_PORT_HOTPLUG_CTL(hpd_pin),
-		     mask, enable ? mask : 0);
-}
-
-static void xelpdp_pica_hpd_enable_detection(struct intel_encoder *encoder)
-{
-	struct drm_i915_private *i915 = to_i915(encoder->base.dev);
-
-	_xelpdp_pica_hpd_detection_setup(i915, encoder->hpd_pin, true);
-}
-
-static void xelpdp_pica_hpd_detection_setup(struct drm_i915_private *i915)
-{
-	struct intel_encoder *encoder;
-	u32 available_pins = 0;
-	enum hpd_pin pin;
-
-	BUILD_BUG_ON(BITS_PER_TYPE(available_pins) < HPD_NUM_PINS);
-
-	for_each_intel_encoder(&i915->drm, encoder)
-		available_pins |= BIT(encoder->hpd_pin);
-
-	for_each_hpd_pin(pin)
-		_xelpdp_pica_hpd_detection_setup(i915, pin, available_pins & BIT(pin));
-}
-
-static void xelpdp_hpd_enable_detection(struct intel_encoder *encoder)
-{
-	xelpdp_pica_hpd_enable_detection(encoder);
-	mtp_hpd_enable_detection(encoder);
-}
-
-static void xelpdp_hpd_irq_setup(struct drm_i915_private *i915)
-{
-	u32 hotplug_irqs, enabled_irqs;
-
-	enabled_irqs = intel_hpd_enabled_irqs(i915, i915->display.hotplug.hpd);
-	hotplug_irqs = intel_hpd_hotplug_irqs(i915, i915->display.hotplug.hpd);
-
-	intel_de_rmw(i915, PICAINTERRUPT_IMR, hotplug_irqs,
-		     ~enabled_irqs & hotplug_irqs);
-	intel_uncore_posting_read(&i915->uncore, PICAINTERRUPT_IMR);
-
-	xelpdp_pica_hpd_detection_setup(i915);
-
-	if (INTEL_PCH_TYPE(i915) >= PCH_MTP)
-		mtp_hpd_irq_setup(i915);
-}
-
-static u32 spt_hotplug_mask(enum hpd_pin hpd_pin)
-{
-	switch (hpd_pin) {
-	case HPD_PORT_A:
-		return PORTA_HOTPLUG_ENABLE;
-	case HPD_PORT_B:
-		return PORTB_HOTPLUG_ENABLE;
-	case HPD_PORT_C:
-		return PORTC_HOTPLUG_ENABLE;
-	case HPD_PORT_D:
-		return PORTD_HOTPLUG_ENABLE;
-	default:
-		return 0;
-	}
-}
-
-static u32 spt_hotplug_enables(struct intel_encoder *encoder)
-{
-	return spt_hotplug_mask(encoder->hpd_pin);
-}
-
-static u32 spt_hotplug2_mask(enum hpd_pin hpd_pin)
-{
-	switch (hpd_pin) {
-	case HPD_PORT_E:
-		return PORTE_HOTPLUG_ENABLE;
-	default:
-		return 0;
-	}
-}
-
-static u32 spt_hotplug2_enables(struct intel_encoder *encoder)
-{
-	return spt_hotplug2_mask(encoder->hpd_pin);
-}
-
-static void spt_hpd_detection_setup(struct drm_i915_private *dev_priv)
-{
-	/* Display WA #1179 WaHardHangonHotPlug: cnp */
-	if (HAS_PCH_CNP(dev_priv)) {
-		intel_uncore_rmw(&dev_priv->uncore, SOUTH_CHICKEN1, CHASSIS_CLK_REQ_DURATION_MASK,
-				 CHASSIS_CLK_REQ_DURATION(0xf));
-	}
-
-	/* Enable digital hotplug on the PCH */
-	intel_uncore_rmw(&dev_priv->uncore, PCH_PORT_HOTPLUG,
-			 intel_hpd_hotplug_mask(dev_priv, spt_hotplug_mask),
-			 intel_hpd_hotplug_enables(dev_priv, spt_hotplug_enables));
-
-	intel_uncore_rmw(&dev_priv->uncore, PCH_PORT_HOTPLUG2,
-			 intel_hpd_hotplug_mask(dev_priv, spt_hotplug2_mask),
-			 intel_hpd_hotplug_enables(dev_priv, spt_hotplug2_enables));
-}
-
-static void spt_hpd_enable_detection(struct intel_encoder *encoder)
-{
-	struct drm_i915_private *i915 = to_i915(encoder->base.dev);
-
-	/* Display WA #1179 WaHardHangonHotPlug: cnp */
-	if (HAS_PCH_CNP(i915)) {
-		intel_uncore_rmw(&i915->uncore, SOUTH_CHICKEN1,
-				 CHASSIS_CLK_REQ_DURATION_MASK,
-				 CHASSIS_CLK_REQ_DURATION(0xf));
-	}
-
-	intel_uncore_rmw(&i915->uncore, PCH_PORT_HOTPLUG,
-			 spt_hotplug_mask(encoder->hpd_pin),
-			 spt_hotplug_enables(encoder));
-
-	intel_uncore_rmw(&i915->uncore, PCH_PORT_HOTPLUG2,
-			 spt_hotplug2_mask(encoder->hpd_pin),
-			 spt_hotplug2_enables(encoder));
-}
-
-static void spt_hpd_irq_setup(struct drm_i915_private *dev_priv)
-{
-	u32 hotplug_irqs, enabled_irqs;
-
-	if (INTEL_PCH_TYPE(dev_priv) >= PCH_CNP)
-		intel_uncore_write(&dev_priv->uncore, SHPD_FILTER_CNT, SHPD_FILTER_CNT_500_ADJ);
-
-	enabled_irqs = intel_hpd_enabled_irqs(dev_priv, dev_priv->display.hotplug.pch_hpd);
-	hotplug_irqs = intel_hpd_hotplug_irqs(dev_priv, dev_priv->display.hotplug.pch_hpd);
-
-	ibx_display_interrupt_update(dev_priv, hotplug_irqs, enabled_irqs);
-
-	spt_hpd_detection_setup(dev_priv);
-}
-
-static u32 ilk_hotplug_mask(enum hpd_pin hpd_pin)
-{
-	switch (hpd_pin) {
-	case HPD_PORT_A:
-		return DIGITAL_PORTA_HOTPLUG_ENABLE |
-			DIGITAL_PORTA_PULSE_DURATION_MASK;
-	default:
-		return 0;
-	}
-}
-
-static u32 ilk_hotplug_enables(struct intel_encoder *encoder)
-{
-	switch (encoder->hpd_pin) {
-	case HPD_PORT_A:
-		return DIGITAL_PORTA_HOTPLUG_ENABLE |
-			DIGITAL_PORTA_PULSE_DURATION_2ms;
-	default:
-		return 0;
-	}
-}
-
-static void ilk_hpd_detection_setup(struct drm_i915_private *dev_priv)
-{
-	/*
-	 * Enable digital hotplug on the CPU, and configure the DP short pulse
-	 * duration to 2ms (which is the minimum in the Display Port spec)
-	 * The pulse duration bits are reserved on HSW+.
-	 */
-	intel_uncore_rmw(&dev_priv->uncore, DIGITAL_PORT_HOTPLUG_CNTRL,
-			 intel_hpd_hotplug_mask(dev_priv, ilk_hotplug_mask),
-			 intel_hpd_hotplug_enables(dev_priv, ilk_hotplug_enables));
-}
-
-static void ilk_hpd_enable_detection(struct intel_encoder *encoder)
-{
-	struct drm_i915_private *i915 = to_i915(encoder->base.dev);
-
-	intel_uncore_rmw(&i915->uncore, DIGITAL_PORT_HOTPLUG_CNTRL,
-			 ilk_hotplug_mask(encoder->hpd_pin),
-			 ilk_hotplug_enables(encoder));
-
-	ibx_hpd_enable_detection(encoder);
-}
-
-static void ilk_hpd_irq_setup(struct drm_i915_private *dev_priv)
-{
-	u32 hotplug_irqs, enabled_irqs;
-
-	enabled_irqs = intel_hpd_enabled_irqs(dev_priv, dev_priv->display.hotplug.hpd);
-	hotplug_irqs = intel_hpd_hotplug_irqs(dev_priv, dev_priv->display.hotplug.hpd);
-
-	if (DISPLAY_VER(dev_priv) >= 8)
-		bdw_update_port_irq(dev_priv, hotplug_irqs, enabled_irqs);
-	else
-		ilk_update_display_irq(dev_priv, hotplug_irqs, enabled_irqs);
-
-	ilk_hpd_detection_setup(dev_priv);
-
-	ibx_hpd_irq_setup(dev_priv);
-}
-
-static u32 bxt_hotplug_mask(enum hpd_pin hpd_pin)
-{
-	switch (hpd_pin) {
-	case HPD_PORT_A:
-		return PORTA_HOTPLUG_ENABLE | BXT_DDIA_HPD_INVERT;
-	case HPD_PORT_B:
-		return PORTB_HOTPLUG_ENABLE | BXT_DDIB_HPD_INVERT;
-	case HPD_PORT_C:
-		return PORTC_HOTPLUG_ENABLE | BXT_DDIC_HPD_INVERT;
-	default:
-		return 0;
-	}
-}
-
-static u32 bxt_hotplug_enables(struct intel_encoder *encoder)
-{
-	u32 hotplug;
-
-	switch (encoder->hpd_pin) {
-	case HPD_PORT_A:
-		hotplug = PORTA_HOTPLUG_ENABLE;
-		if (intel_bios_encoder_hpd_invert(encoder->devdata))
-			hotplug |= BXT_DDIA_HPD_INVERT;
-		return hotplug;
-	case HPD_PORT_B:
-		hotplug = PORTB_HOTPLUG_ENABLE;
-		if (intel_bios_encoder_hpd_invert(encoder->devdata))
-			hotplug |= BXT_DDIB_HPD_INVERT;
-		return hotplug;
-	case HPD_PORT_C:
-		hotplug = PORTC_HOTPLUG_ENABLE;
-		if (intel_bios_encoder_hpd_invert(encoder->devdata))
-			hotplug |= BXT_DDIC_HPD_INVERT;
-		return hotplug;
-	default:
-		return 0;
-	}
-}
-
-static void bxt_hpd_detection_setup(struct drm_i915_private *dev_priv)
-{
-	intel_uncore_rmw(&dev_priv->uncore, PCH_PORT_HOTPLUG,
-			 intel_hpd_hotplug_mask(dev_priv, bxt_hotplug_mask),
-			 intel_hpd_hotplug_enables(dev_priv, bxt_hotplug_enables));
-}
-
-static void bxt_hpd_enable_detection(struct intel_encoder *encoder)
-{
-	struct drm_i915_private *i915 = to_i915(encoder->base.dev);
-
-	intel_uncore_rmw(&i915->uncore, PCH_PORT_HOTPLUG,
-			 bxt_hotplug_mask(encoder->hpd_pin),
-			 bxt_hotplug_enables(encoder));
-}
-
-static void bxt_hpd_irq_setup(struct drm_i915_private *dev_priv)
-{
-	u32 hotplug_irqs, enabled_irqs;
-
-	enabled_irqs = intel_hpd_enabled_irqs(dev_priv, dev_priv->display.hotplug.hpd);
-	hotplug_irqs = intel_hpd_hotplug_irqs(dev_priv, dev_priv->display.hotplug.hpd);
-
-	bdw_update_port_irq(dev_priv, hotplug_irqs, enabled_irqs);
-
-	bxt_hpd_detection_setup(dev_priv);
-}
-
-/*
- * SDEIER is also touched by the interrupt handler to work around missed PCH
- * interrupts. Hence we can't update it after the interrupt handler is enabled -
- * instead we unconditionally enable all PCH interrupt sources here, but then
- * only unmask them as needed with SDEIMR.
- *
- * Note that we currently do this after installing the interrupt handler,
- * but before we enable the master interrupt. That should be sufficient
- * to avoid races with the irq handler, assuming we have MSI. Shared legacy
- * interrupts could still race.
- */
-static void ibx_irq_postinstall(struct drm_i915_private *dev_priv)
-{
-	struct intel_uncore *uncore = &dev_priv->uncore;
-	u32 mask;
-
-	if (HAS_PCH_NOP(dev_priv))
-		return;
-
-	if (HAS_PCH_IBX(dev_priv))
-		mask = SDE_GMBUS | SDE_AUX_MASK | SDE_POISON;
-	else if (HAS_PCH_CPT(dev_priv) || HAS_PCH_LPT(dev_priv))
-		mask = SDE_GMBUS_CPT | SDE_AUX_MASK_CPT;
-	else
-		mask = SDE_GMBUS_CPT;
-
-	GEN3_IRQ_INIT(uncore, SDE, ~mask, 0xffffffff);
-}
-
-static void ilk_irq_postinstall(struct drm_i915_private *dev_priv)
-{
-	struct intel_uncore *uncore = &dev_priv->uncore;
-	u32 display_mask, extra_mask;
+	struct intel_uncore *uncore = &dev_priv->uncore;
+	u32 display_mask, extra_mask;
 
 	if (GRAPHICS_VER(dev_priv) >= 7) {
 		display_mask = (DE_MASTER_IRQ_CONTROL | DE_GSE_IVB |
@@ -4257,40 +2924,6 @@ static void i965_irq_postinstall(struct drm_i915_private *dev_priv)
 	i915_enable_asle_pipestat(dev_priv);
 }
 
-static void i915_hpd_enable_detection(struct intel_encoder *encoder)
-{
-	struct drm_i915_private *i915 = to_i915(encoder->base.dev);
-	u32 hotplug_en = hpd_mask_i915[encoder->hpd_pin];
-
-	/* HPD sense and interrupt enable are one and the same */
-	i915_hotplug_interrupt_update(i915, hotplug_en, hotplug_en);
-}
-
-static void i915_hpd_irq_setup(struct drm_i915_private *dev_priv)
-{
-	u32 hotplug_en;
-
-	lockdep_assert_held(&dev_priv->irq_lock);
-
-	/* Note HDMI and DP share hotplug bits */
-	/* enable bits are the same for all generations */
-	hotplug_en = intel_hpd_enabled_irqs(dev_priv, hpd_mask_i915);
-	/* Programming the CRT detection parameters tends
-	   to generate a spurious hotplug event about three
-	   seconds later.  So just do it once.
-	*/
-	if (IS_G4X(dev_priv))
-		hotplug_en |= CRT_HOTPLUG_ACTIVATION_PERIOD_64;
-	hotplug_en |= CRT_HOTPLUG_VOLTAGE_COMPARE_50;
-
-	/* Ignore TV since it's buggy */
-	i915_hotplug_interrupt_update_locked(dev_priv,
-					     HOTPLUG_INT_EN_MASK |
-					     CRT_HOTPLUG_VOLTAGE_COMPARE_MASK |
-					     CRT_HOTPLUG_ACTIVATION_PERIOD_64,
-					     hotplug_en);
-}
-
 static irqreturn_t i965_irq_handler(int irq, void *arg)
 {
 	struct drm_i915_private *dev_priv = arg;
@@ -4350,43 +2983,6 @@ static irqreturn_t i965_irq_handler(int irq, void *arg)
 	return ret;
 }
 
-struct intel_hotplug_funcs {
-	/* Enable HPD sense and interrupts for all present encoders */
-	void (*hpd_irq_setup)(struct drm_i915_private *i915);
-	/* Enable HPD sense for a single encoder */
-	void (*hpd_enable_detection)(struct intel_encoder *encoder);
-};
-
-#define HPD_FUNCS(platform)					 \
-static const struct intel_hotplug_funcs platform##_hpd_funcs = { \
-	.hpd_irq_setup = platform##_hpd_irq_setup,		 \
-	.hpd_enable_detection = platform##_hpd_enable_detection, \
-}
-
-HPD_FUNCS(i915);
-HPD_FUNCS(xelpdp);
-HPD_FUNCS(dg1);
-HPD_FUNCS(gen11);
-HPD_FUNCS(bxt);
-HPD_FUNCS(icp);
-HPD_FUNCS(spt);
-HPD_FUNCS(ilk);
-#undef HPD_FUNCS
-
-void intel_hpd_enable_detection(struct intel_encoder *encoder)
-{
-	struct drm_i915_private *i915 = to_i915(encoder->base.dev);
-
-	if (i915->display.funcs.hotplug)
-		i915->display.funcs.hotplug->hpd_enable_detection(encoder);
-}
-
-void intel_hpd_irq_setup(struct drm_i915_private *i915)
-{
-	if (i915->display_irqs_enabled && i915->display.funcs.hotplug)
-		i915->display.funcs.hotplug->hpd_irq_setup(i915);
-}
-
 /**
  * intel_irq_init - initializes irq support
  * @dev_priv: i915 device instance
@@ -4409,10 +3005,6 @@ void intel_irq_init(struct drm_i915_private *dev_priv)
 	if (!HAS_DISPLAY(dev_priv))
 		return;
 
-	intel_hpd_init_pins(dev_priv);
-
-	intel_hpd_init_early(dev_priv);
-
 	dev_priv->drm.vblank_disable_immediate = true;
 
 	/* Most platforms treat the display irq block as an always-on
@@ -4425,27 +3017,7 @@ void intel_irq_init(struct drm_i915_private *dev_priv)
 	if (IS_VALLEYVIEW(dev_priv) || IS_CHERRYVIEW(dev_priv))
 		dev_priv->display_irqs_enabled = false;
 
-	if (HAS_GMCH(dev_priv)) {
-		if (I915_HAS_HOTPLUG(dev_priv))
-			dev_priv->display.funcs.hotplug = &i915_hpd_funcs;
-	} else {
-		if (HAS_PCH_DG2(dev_priv))
-			dev_priv->display.funcs.hotplug = &icp_hpd_funcs;
-		else if (HAS_PCH_DG1(dev_priv))
-			dev_priv->display.funcs.hotplug = &dg1_hpd_funcs;
-		else if (DISPLAY_VER(dev_priv) >= 14)
-			dev_priv->display.funcs.hotplug = &xelpdp_hpd_funcs;
-		else if (DISPLAY_VER(dev_priv) >= 11)
-			dev_priv->display.funcs.hotplug = &gen11_hpd_funcs;
-		else if (IS_GEMINILAKE(dev_priv) || IS_BROXTON(dev_priv))
-			dev_priv->display.funcs.hotplug = &bxt_hpd_funcs;
-		else if (INTEL_PCH_TYPE(dev_priv) >= PCH_ICP)
-			dev_priv->display.funcs.hotplug = &icp_hpd_funcs;
-		else if (INTEL_PCH_TYPE(dev_priv) >= PCH_SPT)
-			dev_priv->display.funcs.hotplug = &spt_hpd_funcs;
-		else
-			dev_priv->display.funcs.hotplug = &ilk_hpd_funcs;
-	}
+	intel_hotplug_irq_init(dev_priv);
 }
 
 /**
diff --git a/drivers/gpu/drm/i915/i915_irq.h b/drivers/gpu/drm/i915/i915_irq.h
index dd47e473ba4f..913c854f873d 100644
--- a/drivers/gpu/drm/i915/i915_irq.h
+++ b/drivers/gpu/drm/i915/i915_irq.h
@@ -38,18 +38,18 @@ i915_disable_pipestat(struct drm_i915_private *dev_priv, enum pipe pipe,
 void valleyview_enable_display_irqs(struct drm_i915_private *dev_priv);
 void valleyview_disable_display_irqs(struct drm_i915_private *dev_priv);
 
-void intel_hpd_enable_detection(struct intel_encoder *encoder);
-void intel_hpd_irq_setup(struct drm_i915_private *i915);
-void i915_hotplug_interrupt_update(struct drm_i915_private *dev_priv,
-				   u32 mask,
-				   u32 bits);
-
+void ilk_update_display_irq(struct drm_i915_private *i915,
+			    u32 interrupt_mask, u32 enabled_irq_mask);
 void ilk_enable_display_irq(struct drm_i915_private *i915, u32 bits);
 void ilk_disable_display_irq(struct drm_i915_private *i915, u32 bits);
 
+void bdw_update_port_irq(struct drm_i915_private *i915,
+			 u32 interrupt_mask, u32 enabled_irq_mask);
 void bdw_enable_pipe_irq(struct drm_i915_private *i915, enum pipe pipe, u32 bits);
 void bdw_disable_pipe_irq(struct drm_i915_private *i915, enum pipe pipe, u32 bits);
 
+void ibx_display_interrupt_update(struct drm_i915_private *i915,
+				  u32 interrupt_mask, u32 enabled_irq_mask);
 void ibx_enable_display_interrupt(struct drm_i915_private *i915, u32 bits);
 void ibx_disable_display_interrupt(struct drm_i915_private *i915, u32 bits);
 
-- 
2.39.2


^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [Intel-xe] [PATCH 4/4] fixup! drm/xe/display: Implement display support
  2023-05-16 13:32 [Intel-xe] [PATCH 0/4] drm/xe: use hotplug irq code from i915 Jani Nikula
                   ` (2 preceding siblings ...)
  2023-05-16 13:32 ` [Intel-xe] [PATCH 3/4] drm/i915/irq: split out hotplug irq handling Jani Nikula
@ 2023-05-16 13:32 ` Jani Nikula
  2023-05-16 20:58   ` Rodrigo Vivi
  2023-05-16 13:35 ` [Intel-xe] ✓ CI.Patch_applied: success for drm/xe: use hotplug irq code from i915 Patchwork
                   ` (3 subsequent siblings)
  7 siblings, 1 reply; 16+ messages in thread
From: Jani Nikula @ 2023-05-16 13:32 UTC (permalink / raw)
  To: intel-xe; +Cc: jani.nikula

Use hotplug irq code from i915 display/intel_hotplug_irq.c instead of
copy-paste.

For now, need to add ilk_update_display_irq() and bdw_update_port_irq()
to xe display/ext/i915_irq.c.

Signed-off-by: Jani Nikula <jani.nikula@intel.com>
---
 drivers/gpu/drm/xe/Makefile                   |   1 +
 .../gpu/drm/xe/compat-i915-headers/i915_drv.h |   1 +
 drivers/gpu/drm/xe/display/ext/i915_irq.c     | 579 ++----------------
 drivers/gpu/drm/xe/display/ext/i915_irq.h     |  11 +-
 drivers/gpu/drm/xe/xe_device_types.h          |   6 +-
 5 files changed, 58 insertions(+), 540 deletions(-)

diff --git a/drivers/gpu/drm/xe/Makefile b/drivers/gpu/drm/xe/Makefile
index b6c41cd7dbe3..5418281b4f89 100644
--- a/drivers/gpu/drm/xe/Makefile
+++ b/drivers/gpu/drm/xe/Makefile
@@ -178,6 +178,7 @@ xe-$(CONFIG_DRM_XE_DISPLAY) += \
 	i915-display/intel_hdcp.o \
 	i915-display/intel_hdmi.o \
 	i915-display/intel_hotplug.o \
+	i915-display/intel_hotplug_irq.o \
 	i915-display/intel_hti.o \
 	i915-display/intel_lspcon.o \
 	i915-display/intel_modeset_setup.o \
diff --git a/drivers/gpu/drm/xe/compat-i915-headers/i915_drv.h b/drivers/gpu/drm/xe/compat-i915-headers/i915_drv.h
index ddc0ad39b154..74e6f063f741 100644
--- a/drivers/gpu/drm/xe/compat-i915-headers/i915_drv.h
+++ b/drivers/gpu/drm/xe/compat-i915-headers/i915_drv.h
@@ -101,6 +101,7 @@ static inline struct drm_i915_private *kdev_to_i915(struct device *kdev)
 #define HAS_DSC(xe) ((xe)->info.display.has_dsc)
 #define HAS_CUR_FBC(xe) (xe || 1)
 #define HAS_DOUBLE_BUFFERED_M_N(xe) ((xe) || 1)
+#define I915_HAS_HOTPLUG(xe) (true)
 #define HAS_D12_PLANE_MINIMIZATION(dev_priv) (IS_ROCKETLAKE(dev_priv) || \
 					      IS_ALDERLAKE_S(dev_priv))
 #define DISPLAY_VER(xe) ((xe)->info.display.ver)
diff --git a/drivers/gpu/drm/xe/display/ext/i915_irq.c b/drivers/gpu/drm/xe/display/ext/i915_irq.c
index afde97b6faa6..a0f22bd52549 100644
--- a/drivers/gpu/drm/xe/display/ext/i915_irq.c
+++ b/drivers/gpu/drm/xe/display/ext/i915_irq.c
@@ -34,17 +34,18 @@
 
 #include <drm/drm_drv.h>
 
+#include "i915_drv.h"
+#include "i915_reg.h"
 #include "icl_dsi_regs.h"
 #include "intel_display_trace.h"
 #include "intel_display_types.h"
+#include "intel_dp_aux.h"
 #include "intel_fifo_underrun.h"
 #include "intel_hotplug.h"
+#include "intel_hotplug_irq.h"
 #include "intel_lpe_audio.h"
 #include "intel_psr.h"
 #include "intel_psr_regs.h"
-
-#include "i915_drv.h"
-#include "i915_reg.h"
 #include "intel_uncore.h"
 
 static u32 raw_reg_read(void __iomem *base, i915_reg_t reg)
@@ -149,55 +150,6 @@ static inline void pmu_irq_stats(struct drm_i915_private *i915,
 {
 }
 
-typedef bool (*long_pulse_detect_func)(enum hpd_pin pin, u32 val);
-typedef u32 (*hotplug_enables_func)(struct intel_encoder *encoder);
-typedef u32 (*hotplug_mask_func)(enum hpd_pin pin);
-
-static const u32 hpd_gen11[HPD_NUM_PINS] = {
-	[HPD_PORT_TC1] = GEN11_TC_HOTPLUG(HPD_PORT_TC1) | GEN11_TBT_HOTPLUG(HPD_PORT_TC1),
-	[HPD_PORT_TC2] = GEN11_TC_HOTPLUG(HPD_PORT_TC2) | GEN11_TBT_HOTPLUG(HPD_PORT_TC2),
-	[HPD_PORT_TC3] = GEN11_TC_HOTPLUG(HPD_PORT_TC3) | GEN11_TBT_HOTPLUG(HPD_PORT_TC3),
-	[HPD_PORT_TC4] = GEN11_TC_HOTPLUG(HPD_PORT_TC4) | GEN11_TBT_HOTPLUG(HPD_PORT_TC4),
-	[HPD_PORT_TC5] = GEN11_TC_HOTPLUG(HPD_PORT_TC5) | GEN11_TBT_HOTPLUG(HPD_PORT_TC5),
-	[HPD_PORT_TC6] = GEN11_TC_HOTPLUG(HPD_PORT_TC6) | GEN11_TBT_HOTPLUG(HPD_PORT_TC6),
-};
-
-static const u32 hpd_icp[HPD_NUM_PINS] = {
-	[HPD_PORT_A] = SDE_DDI_HOTPLUG_ICP(HPD_PORT_A),
-	[HPD_PORT_B] = SDE_DDI_HOTPLUG_ICP(HPD_PORT_B),
-	[HPD_PORT_C] = SDE_DDI_HOTPLUG_ICP(HPD_PORT_C),
-	[HPD_PORT_TC1] = SDE_TC_HOTPLUG_ICP(HPD_PORT_TC1),
-	[HPD_PORT_TC2] = SDE_TC_HOTPLUG_ICP(HPD_PORT_TC2),
-	[HPD_PORT_TC3] = SDE_TC_HOTPLUG_ICP(HPD_PORT_TC3),
-	[HPD_PORT_TC4] = SDE_TC_HOTPLUG_ICP(HPD_PORT_TC4),
-	[HPD_PORT_TC5] = SDE_TC_HOTPLUG_ICP(HPD_PORT_TC5),
-	[HPD_PORT_TC6] = SDE_TC_HOTPLUG_ICP(HPD_PORT_TC6),
-};
-
-static const u32 hpd_sde_dg1[HPD_NUM_PINS] = {
-	[HPD_PORT_A] = SDE_DDI_HOTPLUG_ICP(HPD_PORT_A),
-	[HPD_PORT_B] = SDE_DDI_HOTPLUG_ICP(HPD_PORT_B),
-	[HPD_PORT_C] = SDE_DDI_HOTPLUG_ICP(HPD_PORT_C),
-	[HPD_PORT_D] = SDE_DDI_HOTPLUG_ICP(HPD_PORT_D),
-	[HPD_PORT_TC1] = SDE_TC_HOTPLUG_DG2(HPD_PORT_TC1),
-};
-
-static void intel_hpd_init_pins(struct drm_i915_private *dev_priv)
-{
-	struct intel_hotplug *hpd = &dev_priv->display.hotplug;
-
-	hpd->hpd = hpd_gen11;
-
-	if ((INTEL_PCH_TYPE(dev_priv) < PCH_DG1) &&
-	    (!HAS_PCH_SPLIT(dev_priv) || HAS_PCH_NOP(dev_priv)))
-		return;
-
-	if (INTEL_PCH_TYPE(dev_priv) >= PCH_DG1)
-		hpd->pch_hpd = hpd_sde_dg1;
-	else
-		hpd->pch_hpd = hpd_icp;
-}
-
 static void
 intel_handle_vblank(struct drm_i915_private *dev_priv, enum pipe pipe)
 {
@@ -206,42 +158,49 @@ intel_handle_vblank(struct drm_i915_private *dev_priv, enum pipe pipe)
 	drm_crtc_handle_vblank(&crtc->base);
 }
 
-/* For display hotplug interrupt */
-static inline void
-i915_hotplug_interrupt_update_locked(struct drm_i915_private *dev_priv,
-				     u32 mask,
-				     u32 bits)
+void ilk_update_display_irq(struct drm_i915_private *dev_priv,
+			    u32 interrupt_mask, u32 enabled_irq_mask)
 {
-	u32 val;
+	u32 new_val;
 
 	lockdep_assert_held(&dev_priv->irq_lock);
-	drm_WARN_ON(&dev_priv->drm, bits & ~mask);
+	drm_WARN_ON(&dev_priv->drm, enabled_irq_mask & ~interrupt_mask);
+
+	new_val = dev_priv->irq_mask;
+	new_val &= ~interrupt_mask;
+	new_val |= (~enabled_irq_mask & interrupt_mask);
 
-	val = intel_uncore_read(&dev_priv->uncore, PORT_HOTPLUG_EN);
-	val &= ~mask;
-	val |= bits;
-	intel_uncore_write(&dev_priv->uncore, PORT_HOTPLUG_EN, val);
+	if (new_val != dev_priv->irq_mask &&
+	    !drm_WARN_ON(&dev_priv->drm, !intel_irqs_enabled(dev_priv))) {
+		dev_priv->irq_mask = new_val;
+		intel_uncore_write(&dev_priv->uncore, DEIMR, dev_priv->irq_mask);
+		intel_uncore_posting_read(&dev_priv->uncore, DEIMR);
+	}
 }
 
-/**
- * i915_hotplug_interrupt_update - update hotplug interrupt enable
- * @dev_priv: driver private
- * @mask: bits to update
- * @bits: bits to enable
- * NOTE: the HPD enable bits are modified both inside and outside
- * of an interrupt context. To avoid that read-modify-write cycles
- * interfer, these bits are protected by a spinlock. Since this
- * function is usually not called from a context where the lock is
- * held already, this function acquires the lock itself. A non-locking
- * version is also available.
- */
-void i915_hotplug_interrupt_update(struct drm_i915_private *dev_priv,
-				   u32 mask,
-				   u32 bits)
+void bdw_update_port_irq(struct drm_i915_private *dev_priv,
+			 u32 interrupt_mask, u32 enabled_irq_mask)
 {
-	spin_lock_irq(&dev_priv->irq_lock);
-	i915_hotplug_interrupt_update_locked(dev_priv, mask, bits);
-	spin_unlock_irq(&dev_priv->irq_lock);
+	u32 new_val;
+	u32 old_val;
+
+	lockdep_assert_held(&dev_priv->irq_lock);
+
+	drm_WARN_ON(&dev_priv->drm, enabled_irq_mask & ~interrupt_mask);
+
+	if (drm_WARN_ON(&dev_priv->drm, !intel_irqs_enabled(dev_priv)))
+		return;
+
+	old_val = intel_uncore_read(&dev_priv->uncore, GEN8_DE_PORT_IMR);
+
+	new_val = old_val;
+	new_val &= ~interrupt_mask;
+	new_val |= (~enabled_irq_mask & interrupt_mask);
+
+	if (new_val != old_val) {
+		intel_uncore_write(&dev_priv->uncore, GEN8_DE_PORT_IMR, new_val);
+		intel_uncore_posting_read(&dev_priv->uncore, GEN8_DE_PORT_IMR);
+	}
 }
 
 /**
@@ -287,11 +246,12 @@ void bdw_disable_pipe_irq(struct drm_i915_private *i915,
 	bdw_update_pipe_irq(i915, pipe, bits, 0);
 }
 
-static void ibx_display_interrupt_update(struct drm_i915_private *dev_priv,
-					 u32 interrupt_mask,
-					 u32 enabled_irq_mask)
+void ibx_display_interrupt_update(struct drm_i915_private *dev_priv,
+				  u32 interrupt_mask,
+				  u32 enabled_irq_mask)
 {
 	u32 sdeimr = intel_uncore_read(&dev_priv->uncore, SDEIMR);
+
 	sdeimr &= ~interrupt_mask;
 	sdeimr |= (~enabled_irq_mask & interrupt_mask);
 
@@ -343,142 +303,6 @@ u32 i915_pipestat_enable_mask(struct drm_i915_private *dev_priv,
 	BUG_ON(1); /* Not to be called */
 }
 
-
-static bool gen11_port_hotplug_long_detect(enum hpd_pin pin, u32 val)
-{
-	switch (pin) {
-	case HPD_PORT_TC1:
-	case HPD_PORT_TC2:
-	case HPD_PORT_TC3:
-	case HPD_PORT_TC4:
-	case HPD_PORT_TC5:
-	case HPD_PORT_TC6:
-		return val & GEN11_HOTPLUG_CTL_LONG_DETECT(pin);
-	default:
-		return false;
-	}
-}
-
-static bool icp_ddi_port_hotplug_long_detect(enum hpd_pin pin, u32 val)
-{
-	switch (pin) {
-	case HPD_PORT_A:
-	case HPD_PORT_B:
-	case HPD_PORT_C:
-	case HPD_PORT_D:
-		return val & SHOTPLUG_CTL_DDI_HPD_LONG_DETECT(pin);
-	default:
-		return false;
-	}
-}
-
-static bool icp_tc_port_hotplug_long_detect(enum hpd_pin pin, u32 val)
-{
-	switch (pin) {
-	case HPD_PORT_TC1:
-	case HPD_PORT_TC2:
-	case HPD_PORT_TC3:
-	case HPD_PORT_TC4:
-	case HPD_PORT_TC5:
-	case HPD_PORT_TC6:
-		return val & ICP_TC_HPD_LONG_DETECT(pin);
-	default:
-		return false;
-	}
-}
-
-/*
- * Get a bit mask of pins that have triggered, and which ones may be long.
- * This can be called multiple times with the same masks to accumulate
- * hotplug detection results from several registers.
- *
- * Note that the caller is expected to zero out the masks initially.
- */
-static void intel_get_hpd_pins(struct drm_i915_private *dev_priv,
-			       u32 *pin_mask, u32 *long_mask,
-			       u32 hotplug_trigger, u32 dig_hotplug_reg,
-			       const u32 hpd[HPD_NUM_PINS],
-			       bool long_pulse_detect(enum hpd_pin pin, u32 val))
-{
-	enum hpd_pin pin;
-
-	BUILD_BUG_ON(BITS_PER_TYPE(*pin_mask) < HPD_NUM_PINS);
-
-	for_each_hpd_pin(pin) {
-		if ((hpd[pin] & hotplug_trigger) == 0)
-			continue;
-
-		*pin_mask |= BIT(pin);
-
-		if (long_pulse_detect(pin, dig_hotplug_reg))
-			*long_mask |= BIT(pin);
-	}
-
-	drm_dbg(&dev_priv->drm,
-		"hotplug event received, stat 0x%08x, dig 0x%08x, pins 0x%08x, long 0x%08x\n",
-		hotplug_trigger, dig_hotplug_reg, *pin_mask, *long_mask);
-
-}
-
-static u32 intel_hpd_enabled_irqs(struct drm_i915_private *dev_priv,
-				  const u32 hpd[HPD_NUM_PINS])
-{
-	struct intel_encoder *encoder;
-	u32 enabled_irqs = 0;
-
-	for_each_intel_encoder(&dev_priv->drm, encoder)
-		if (dev_priv->display.hotplug.stats[encoder->hpd_pin].state == HPD_ENABLED)
-			enabled_irqs |= hpd[encoder->hpd_pin];
-
-	return enabled_irqs;
-}
-
-static u32 intel_hpd_hotplug_irqs(struct drm_i915_private *dev_priv,
-				  const u32 hpd[HPD_NUM_PINS])
-{
-	struct intel_encoder *encoder;
-	u32 hotplug_irqs = 0;
-
-	for_each_intel_encoder(&dev_priv->drm, encoder)
-		hotplug_irqs |= hpd[encoder->hpd_pin];
-
-	return hotplug_irqs;
-}
-
-static u32 intel_hpd_hotplug_mask(struct drm_i915_private *i915,
-				  hotplug_mask_func hotplug_mask)
-{
-	enum hpd_pin pin;
-	u32 hotplug = 0;
-
-	for_each_hpd_pin(pin)
-		hotplug |= hotplug_mask(pin);
-
-	return hotplug;
-}
-
-static u32 intel_hpd_hotplug_enables(struct drm_i915_private *i915,
-				     hotplug_enables_func hotplug_enables)
-{
-	struct intel_encoder *encoder;
-	u32 hotplug = 0;
-
-	for_each_intel_encoder(&i915->drm, encoder)
-		hotplug |= hotplug_enables(encoder);
-
-	return hotplug;
-}
-
-static void gmbus_irq_handler(struct drm_i915_private *dev_priv)
-{
-	wake_up_all(&dev_priv->display.gmbus.wait_queue);
-}
-
-static void dp_aux_irq_handler(struct drm_i915_private *dev_priv)
-{
-	wake_up_all(&dev_priv->display.gmbus.wait_queue);
-}
-
 #if defined(CONFIG_DEBUG_FS)
 static void display_pipe_crc_irq_handler(struct drm_i915_private *dev_priv,
 					 enum pipe pipe,
@@ -548,80 +372,6 @@ static void hsw_pipe_crc_irq_handler(struct drm_i915_private *dev_priv,
 				     0, 0, 0, 0);
 }
 
-static void icp_irq_handler(struct drm_i915_private *dev_priv, u32 pch_iir)
-{
-	u32 ddi_hotplug_trigger = pch_iir & SDE_DDI_HOTPLUG_MASK_ICP;
-	u32 tc_hotplug_trigger = pch_iir & SDE_TC_HOTPLUG_MASK_ICP;
-	u32 pin_mask = 0, long_mask = 0;
-
-	if (ddi_hotplug_trigger) {
-		u32 dig_hotplug_reg;
-
-		dig_hotplug_reg = intel_uncore_read(&dev_priv->uncore, SHOTPLUG_CTL_DDI);
-		intel_uncore_write(&dev_priv->uncore, SHOTPLUG_CTL_DDI, dig_hotplug_reg);
-
-		intel_get_hpd_pins(dev_priv, &pin_mask, &long_mask,
-				   ddi_hotplug_trigger, dig_hotplug_reg,
-				   dev_priv->display.hotplug.pch_hpd,
-				   icp_ddi_port_hotplug_long_detect);
-	}
-
-	if (tc_hotplug_trigger) {
-		u32 dig_hotplug_reg;
-
-		dig_hotplug_reg = intel_uncore_read(&dev_priv->uncore, SHOTPLUG_CTL_TC);
-		intel_uncore_write(&dev_priv->uncore, SHOTPLUG_CTL_TC, dig_hotplug_reg);
-
-		intel_get_hpd_pins(dev_priv, &pin_mask, &long_mask,
-				   tc_hotplug_trigger, dig_hotplug_reg,
-				   dev_priv->display.hotplug.pch_hpd,
-				   icp_tc_port_hotplug_long_detect);
-	}
-
-	if (pin_mask)
-		intel_hpd_irq_handler(dev_priv, pin_mask, long_mask);
-
-	if (pch_iir & SDE_GMBUS_ICP)
-		gmbus_irq_handler(dev_priv);
-}
-
-static void gen11_hpd_irq_handler(struct drm_i915_private *dev_priv, u32 iir)
-{
-	u32 pin_mask = 0, long_mask = 0;
-	u32 trigger_tc = iir & GEN11_DE_TC_HOTPLUG_MASK;
-	u32 trigger_tbt = iir & GEN11_DE_TBT_HOTPLUG_MASK;
-
-	if (trigger_tc) {
-		u32 dig_hotplug_reg;
-
-		dig_hotplug_reg = intel_uncore_read(&dev_priv->uncore, GEN11_TC_HOTPLUG_CTL);
-		intel_uncore_write(&dev_priv->uncore, GEN11_TC_HOTPLUG_CTL, dig_hotplug_reg);
-
-		intel_get_hpd_pins(dev_priv, &pin_mask, &long_mask,
-				   trigger_tc, dig_hotplug_reg,
-				   dev_priv->display.hotplug.hpd,
-				   gen11_port_hotplug_long_detect);
-	}
-
-	if (trigger_tbt) {
-		u32 dig_hotplug_reg;
-
-		dig_hotplug_reg = intel_uncore_read(&dev_priv->uncore, GEN11_TBT_HOTPLUG_CTL);
-		intel_uncore_write(&dev_priv->uncore, GEN11_TBT_HOTPLUG_CTL, dig_hotplug_reg);
-
-		intel_get_hpd_pins(dev_priv, &pin_mask, &long_mask,
-				   trigger_tbt, dig_hotplug_reg,
-				   dev_priv->display.hotplug.hpd,
-				   gen11_port_hotplug_long_detect);
-	}
-
-	if (pin_mask)
-		intel_hpd_irq_handler(dev_priv, pin_mask, long_mask);
-	else
-		drm_err(&dev_priv->drm,
-			"Unexpected DE HPD interrupt 0x%08x\n", iir);
-}
-
 static u32 gen8_de_port_aux_mask(struct drm_i915_private *dev_priv)
 {
 	u32 mask;
@@ -833,7 +583,7 @@ gen8_de_irq_handler(struct drm_i915_private *dev_priv, u32 master_ctl)
 			ret = IRQ_HANDLED;
 
 			if (iir & gen8_de_port_aux_mask(dev_priv)) {
-				dp_aux_irq_handler(dev_priv);
+				intel_dp_aux_irq_handler(dev_priv);
 				found = true;
 			}
 
@@ -1074,202 +824,6 @@ void gen8_irq_power_well_pre_disable(struct drm_i915_private *dev_priv,
 	intel_synchronize_irq(dev_priv);
 }
 
-static u32 icp_ddi_hotplug_mask(enum hpd_pin hpd_pin)
-{
-	switch (hpd_pin) {
-	case HPD_PORT_A:
-	case HPD_PORT_B:
-	case HPD_PORT_C:
-	case HPD_PORT_D:
-		return SHOTPLUG_CTL_DDI_HPD_ENABLE(hpd_pin);
-	default:
-		return 0;
-	}
-}
-
-static u32 icp_ddi_hotplug_enables(struct intel_encoder *encoder)
-{
-	return icp_ddi_hotplug_mask(encoder->hpd_pin);
-}
-
-static u32 icp_tc_hotplug_mask(enum hpd_pin hpd_pin)
-{
-	switch (hpd_pin) {
-	case HPD_PORT_TC1:
-	case HPD_PORT_TC2:
-	case HPD_PORT_TC3:
-	case HPD_PORT_TC4:
-	case HPD_PORT_TC5:
-	case HPD_PORT_TC6:
-		return ICP_TC_HPD_ENABLE(hpd_pin);
-	default:
-		return 0;
-	}
-}
-
-static u32 icp_tc_hotplug_enables(struct intel_encoder *encoder)
-{
-	return icp_tc_hotplug_mask(encoder->hpd_pin);
-}
-
-static void icp_ddi_hpd_detection_setup(struct drm_i915_private *dev_priv)
-{
-	intel_uncore_rmw(&dev_priv->uncore, SHOTPLUG_CTL_DDI,
-			 intel_hpd_hotplug_mask(dev_priv, icp_ddi_hotplug_mask),
-			 intel_hpd_hotplug_enables(dev_priv, icp_ddi_hotplug_enables));
-}
-
-static void icp_ddi_hpd_enable_detection(struct intel_encoder *encoder)
-{
-	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-
-	intel_uncore_rmw(&dev_priv->uncore, SHOTPLUG_CTL_DDI,
-			 icp_ddi_hotplug_mask(encoder->hpd_pin),
-			 icp_ddi_hotplug_enables(encoder));
-}
-
-static void icp_tc_hpd_detection_setup(struct drm_i915_private *dev_priv)
-{
-	intel_uncore_rmw(&dev_priv->uncore, SHOTPLUG_CTL_TC,
-			 intel_hpd_hotplug_mask(dev_priv, icp_tc_hotplug_mask),
-			 intel_hpd_hotplug_enables(dev_priv, icp_tc_hotplug_enables));
-}
-
-static void icp_tc_hpd_enable_detection(struct intel_encoder *encoder)
-{
-	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-
-	intel_uncore_rmw(&dev_priv->uncore, SHOTPLUG_CTL_TC,
-			 icp_tc_hotplug_mask(encoder->hpd_pin),
-			 icp_tc_hotplug_enables(encoder));
-}
-
-static void icp_hpd_enable_detection(struct intel_encoder *encoder)
-{
-	icp_ddi_hpd_enable_detection(encoder);
-	icp_tc_hpd_enable_detection(encoder);
-}
-
-static void icp_hpd_irq_setup(struct drm_i915_private *dev_priv)
-{
-	u32 hotplug_irqs, enabled_irqs;
-
-	enabled_irqs = intel_hpd_enabled_irqs(dev_priv, dev_priv->display.hotplug.pch_hpd);
-	hotplug_irqs = intel_hpd_hotplug_irqs(dev_priv, dev_priv->display.hotplug.pch_hpd);
-
-	if (INTEL_PCH_TYPE(dev_priv) <= PCH_TGP)
-		intel_uncore_write(&dev_priv->uncore, SHPD_FILTER_CNT, SHPD_FILTER_CNT_500_ADJ);
-
-	ibx_display_interrupt_update(dev_priv, hotplug_irqs, enabled_irqs);
-
-	icp_ddi_hpd_detection_setup(dev_priv);
-	icp_tc_hpd_detection_setup(dev_priv);
-}
-
-static u32 gen11_hotplug_mask(enum hpd_pin hpd_pin)
-{
-	switch (hpd_pin) {
-	case HPD_PORT_TC1:
-	case HPD_PORT_TC2:
-	case HPD_PORT_TC3:
-	case HPD_PORT_TC4:
-	case HPD_PORT_TC5:
-	case HPD_PORT_TC6:
-		return GEN11_HOTPLUG_CTL_ENABLE(hpd_pin);
-	default:
-		return 0;
-	}
-}
-
-static u32 gen11_hotplug_enables(struct intel_encoder *encoder)
-{
-	return gen11_hotplug_mask(encoder->hpd_pin);
-}
-
-static void dg1_hpd_invert(struct drm_i915_private *dev_priv)
-{
-	u32 val = (INVERT_DDIA_HPD |
-		   INVERT_DDIB_HPD |
-		   INVERT_DDIC_HPD |
-		   INVERT_DDID_HPD);
-	intel_uncore_rmw(&dev_priv->uncore, SOUTH_CHICKEN1, 0, val);
-}
-
-static void dg1_hpd_enable_detection(struct intel_encoder *encoder)
-{
-	struct drm_i915_private *i915 = to_i915(encoder->base.dev);
-
-	dg1_hpd_invert(i915);
-	icp_hpd_enable_detection(encoder);
-}
-
-static void dg1_hpd_irq_setup(struct drm_i915_private *dev_priv)
-{
-	dg1_hpd_invert(dev_priv);
-	icp_hpd_irq_setup(dev_priv);
-}
-
-static void gen11_tc_hpd_detection_setup(struct drm_i915_private *dev_priv)
-{
-	intel_uncore_rmw(&dev_priv->uncore, GEN11_TC_HOTPLUG_CTL,
-			 intel_hpd_hotplug_mask(dev_priv, gen11_hotplug_mask),
-			 intel_hpd_hotplug_enables(dev_priv, gen11_hotplug_enables));
-}
-
-static void gen11_tc_hpd_enable_detection(struct intel_encoder *encoder)
-{
-	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-
-	intel_uncore_rmw(&dev_priv->uncore, GEN11_TC_HOTPLUG_CTL,
-			 gen11_hotplug_mask(encoder->hpd_pin),
-			 gen11_hotplug_enables(encoder));
-}
-
-static void gen11_tbt_hpd_detection_setup(struct drm_i915_private *dev_priv)
-{
-	intel_uncore_rmw(&dev_priv->uncore, GEN11_TBT_HOTPLUG_CTL,
-			 intel_hpd_hotplug_mask(dev_priv, gen11_hotplug_mask),
-			 intel_hpd_hotplug_enables(dev_priv, gen11_hotplug_enables));
-}
-
-static void gen11_tbt_hpd_enable_detection(struct intel_encoder *encoder)
-{
-	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-
-	intel_uncore_rmw(&dev_priv->uncore, GEN11_TBT_HOTPLUG_CTL,
-			 gen11_hotplug_mask(encoder->hpd_pin),
-			 gen11_hotplug_enables(encoder));
-}
-
-static void gen11_hpd_enable_detection(struct intel_encoder *encoder)
-{
-	struct drm_i915_private *i915 = to_i915(encoder->base.dev);
-
-	gen11_tc_hpd_enable_detection(encoder);
-	gen11_tbt_hpd_enable_detection(encoder);
-
-	if (INTEL_PCH_TYPE(i915) >= PCH_ICP)
-		icp_hpd_enable_detection(encoder);
-}
-
-static void gen11_hpd_irq_setup(struct drm_i915_private *dev_priv)
-{
-	u32 hotplug_irqs, enabled_irqs;
-
-	enabled_irqs = intel_hpd_enabled_irqs(dev_priv, dev_priv->display.hotplug.hpd);
-	hotplug_irqs = intel_hpd_hotplug_irqs(dev_priv, dev_priv->display.hotplug.hpd);
-
-	intel_uncore_rmw(&dev_priv->uncore, GEN11_DE_HPD_IMR, hotplug_irqs,
-			 ~enabled_irqs & hotplug_irqs);
-	intel_uncore_posting_read(&dev_priv->uncore, GEN11_DE_HPD_IMR);
-
-	gen11_tc_hpd_detection_setup(dev_priv);
-	gen11_tbt_hpd_detection_setup(dev_priv);
-
-	if (INTEL_PCH_TYPE(dev_priv) >= PCH_ICP)
-		icp_hpd_irq_setup(dev_priv);
-}
-
 static void gen8_de_irq_postinstall(struct drm_i915_private *dev_priv)
 {
 	u32 de_pipe_masked = gen8_de_pipe_fault_mask(dev_priv) |
@@ -1363,38 +917,6 @@ void gen11_display_irq_postinstall(struct drm_i915_private *dev_priv)
 	gen11_de_irq_postinstall(dev_priv);
 }
 
-struct intel_hotplug_funcs {
-	/* Enable HPD sense and interrupts for all present encoders */
-	void (*hpd_irq_setup)(struct drm_i915_private *i915);
-	/* Enable HPD sense for a single encoder */
-	void (*hpd_enable_detection)(struct intel_encoder *encoder);
-};
-
-#define HPD_FUNCS(platform)					 \
-static const struct intel_hotplug_funcs platform##_hpd_funcs = { \
-	.hpd_irq_setup = platform##_hpd_irq_setup,		 \
-	.hpd_enable_detection = platform##_hpd_enable_detection, \
-}
-
-HPD_FUNCS(dg1);
-HPD_FUNCS(gen11);
-HPD_FUNCS(icp);
-#undef HPD_FUNCS
-
-void intel_hpd_enable_detection(struct intel_encoder *encoder)
-{
-	struct drm_i915_private *i915 = to_i915(encoder->base.dev);
-
-	if (i915->display.funcs.hotplug)
-		i915->display.funcs.hotplug->hpd_enable_detection(encoder);
-}
-
-void intel_hpd_irq_setup(struct drm_i915_private *i915)
-{
-	if (i915->display_irqs_enabled && i915->display.funcs.hotplug)
-		i915->display.funcs.hotplug->hpd_irq_setup(i915);
-}
-
 void intel_display_irq_init(struct drm_i915_private *dev_priv)
 {
 	struct drm_device *dev = &dev_priv->drm;
@@ -1402,10 +924,6 @@ void intel_display_irq_init(struct drm_i915_private *dev_priv)
 	if (!HAS_DISPLAY(dev_priv))
 		return;
 
-	intel_hpd_init_pins(dev_priv);
-
-	intel_hpd_init_early(dev_priv);
-
 	dev->vblank_disable_immediate = true;
 
 	/* Most platforms treat the display irq block as an always-on
@@ -1418,12 +936,7 @@ void intel_display_irq_init(struct drm_i915_private *dev_priv)
 	if (IS_VALLEYVIEW(dev_priv) || IS_CHERRYVIEW(dev_priv))
 		dev_priv->display_irqs_enabled = false;
 
-	if (HAS_PCH_DG2(dev_priv))
-		dev_priv->display.funcs.hotplug = &icp_hpd_funcs;
-	else if (HAS_PCH_DG1(dev_priv))
-		dev_priv->display.funcs.hotplug = &dg1_hpd_funcs;
-	else if (DISPLAY_VER(dev_priv) >= 11)
-		dev_priv->display.funcs.hotplug = &gen11_hpd_funcs;
+	intel_hotplug_irq_init(dev_priv);
 }
 
 void intel_display_irq_uninstall(struct drm_i915_private *dev_priv)
diff --git a/drivers/gpu/drm/xe/display/ext/i915_irq.h b/drivers/gpu/drm/xe/display/ext/i915_irq.h
index c64926a5a919..829b3dd55096 100644
--- a/drivers/gpu/drm/xe/display/ext/i915_irq.h
+++ b/drivers/gpu/drm/xe/display/ext/i915_irq.h
@@ -40,18 +40,17 @@ static inline void valleyview_disable_display_irqs(struct drm_i915_private *dev_
 {
 }
 
-void intel_hpd_enable_detection(struct intel_encoder *encoder);
-void intel_hpd_irq_setup(struct drm_i915_private *i915);
-void i915_hotplug_interrupt_update(struct drm_i915_private *dev_priv,
-				   u32 mask,
-				   u32 bits);
-
+void ilk_update_display_irq(struct drm_i915_private *dev_priv,
+			    u32 interrupt_mask, u32 enabled_irq_mask);
 void ilk_enable_display_irq(struct drm_i915_private *i915, u32 bits);
 void ilk_disable_display_irq(struct drm_i915_private *i915, u32 bits);
 
+void bdw_update_port_irq(struct drm_i915_private *i915, u32 interrupt_mask, u32 enabled_irq_mask);
 void bdw_enable_pipe_irq(struct drm_i915_private *i915, enum pipe pipe, u32 bits);
 void bdw_disable_pipe_irq(struct drm_i915_private *i915, enum pipe pipe, u32 bits);
 
+void ibx_display_interrupt_update(struct drm_i915_private *i915,
+				  u32 interrupt_mask, u32 enabled_irq_mask);
 void ibx_enable_display_interrupt(struct drm_i915_private *i915, u32 bits);
 void ibx_disable_display_interrupt(struct drm_i915_private *i915, u32 bits);
 
diff --git a/drivers/gpu/drm/xe/xe_device_types.h b/drivers/gpu/drm/xe/xe_device_types.h
index 6490a04614ce..cbd18b839236 100644
--- a/drivers/gpu/drm/xe/xe_device_types.h
+++ b/drivers/gpu/drm/xe/xe_device_types.h
@@ -307,7 +307,11 @@ struct xe_device {
 	struct drm_atomic_state *modeset_restore_state;
 	struct list_head global_obj_list;
 
-	u32 de_irq_mask[I915_MAX_PIPES];
+	union {
+		/* only to allow build, not used functionally */
+		u32 irq_mask;
+		u32 de_irq_mask[I915_MAX_PIPES];
+	};
 	bool display_irqs_enabled;
 	u32 enabled_irq_mask;
 
-- 
2.39.2


^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [Intel-xe] ✓ CI.Patch_applied: success for drm/xe: use hotplug irq code from i915
  2023-05-16 13:32 [Intel-xe] [PATCH 0/4] drm/xe: use hotplug irq code from i915 Jani Nikula
                   ` (3 preceding siblings ...)
  2023-05-16 13:32 ` [Intel-xe] [PATCH 4/4] fixup! drm/xe/display: Implement display support Jani Nikula
@ 2023-05-16 13:35 ` Patchwork
  2023-05-16 13:37 ` [Intel-xe] ✓ CI.KUnit: " Patchwork
                   ` (2 subsequent siblings)
  7 siblings, 0 replies; 16+ messages in thread
From: Patchwork @ 2023-05-16 13:35 UTC (permalink / raw)
  To: Jani Nikula; +Cc: intel-xe

== Series Details ==

Series: drm/xe: use hotplug irq code from i915
URL   : https://patchwork.freedesktop.org/series/117818/
State : success

== Summary ==

=== Applying kernel patches on branch 'drm-xe-next' with base: ===
Base commit: 9e6366d33 drm/i915/gt: drop dependency on VLV_DISPLAY_BASE
=== git am output follows ===
Applying: drm/i915/irq: relocate gmbus and dp aux irq handlers
Applying: drm/i915/irq: convert gen8_de_irq_handler() to void
Applying: drm/i915/irq: split out hotplug irq handling
Applying: fixup! drm/xe/display: Implement display support



^ permalink raw reply	[flat|nested] 16+ messages in thread

* [Intel-xe] ✓ CI.KUnit: success for drm/xe: use hotplug irq code from i915
  2023-05-16 13:32 [Intel-xe] [PATCH 0/4] drm/xe: use hotplug irq code from i915 Jani Nikula
                   ` (4 preceding siblings ...)
  2023-05-16 13:35 ` [Intel-xe] ✓ CI.Patch_applied: success for drm/xe: use hotplug irq code from i915 Patchwork
@ 2023-05-16 13:37 ` Patchwork
  2023-05-16 13:41 ` [Intel-xe] ✓ CI.Build: " Patchwork
  2023-05-16 14:06 ` [Intel-xe] ○ CI.BAT: info " Patchwork
  7 siblings, 0 replies; 16+ messages in thread
From: Patchwork @ 2023-05-16 13:37 UTC (permalink / raw)
  To: Jani Nikula; +Cc: intel-xe

== Series Details ==

Series: drm/xe: use hotplug irq code from i915
URL   : https://patchwork.freedesktop.org/series/117818/
State : success

== Summary ==

+ trap cleanup EXIT
+ /kernel/tools/testing/kunit/kunit.py run --kunitconfig /kernel/drivers/gpu/drm/xe/.kunitconfig
stty: 'standard input': Inappropriate ioctl for device
[13:36:28] Configuring KUnit Kernel ...
Generating .config ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
[13:36:32] Building KUnit Kernel ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
Building with:
$ make ARCH=um O=.kunit --jobs=48
[13:36:54] Starting KUnit Kernel (1/1)...
[13:36:54] ============================================================
[13:36:54] ==================== xe_bo (2 subtests) ====================
[13:36:54] [SKIPPED] xe_ccs_migrate_kunit
[13:36:54] [SKIPPED] xe_bo_evict_kunit
[13:36:54] ===================== [SKIPPED] xe_bo ======================
[13:36:54] ================== xe_dma_buf (1 subtest) ==================
[13:36:54] [SKIPPED] xe_dma_buf_kunit
[13:36:54] =================== [SKIPPED] xe_dma_buf ===================
[13:36:54] ================== xe_migrate (1 subtest) ==================
[13:36:54] [SKIPPED] xe_migrate_sanity_kunit
[13:36:54] =================== [SKIPPED] xe_migrate ===================
[13:36:54] =================== xe_pci (2 subtests) ====================
[13:36:54] [PASSED] xe_gmdid_graphics_ip
[13:36:54] [PASSED] xe_gmdid_media_ip
[13:36:54] ===================== [PASSED] xe_pci ======================
[13:36:54] ==================== xe_rtp (1 subtest) ====================
[13:36:54] ================== xe_rtp_process_tests  ===================
[13:36:54] [PASSED] coalesce-same-reg
[13:36:54] [PASSED] no-match-no-add
[13:36:54] [PASSED] no-match-no-add-multiple-rules
[13:36:54] [PASSED] two-regs-two-entries
[13:36:54] [PASSED] clr-one-set-other
[13:36:54] [PASSED] set-field
[13:36:54] [PASSED] conflict-duplicate
[13:36:54] [PASSED] conflict-not-disjoint
[13:36:54] [PASSED] conflict-reg-type
[13:36:54] ============== [PASSED] xe_rtp_process_tests ===============
[13:36:54] ===================== [PASSED] xe_rtp ======================
[13:36:54] ==================== xe_wa (1 subtest) =====================
[13:36:54] ======================== xe_wa_gt  =========================
[13:36:54] [PASSED] TIGERLAKE (B0)
[13:36:54] [PASSED] DG1 (A0)
[13:36:54] [PASSED] DG1 (B0)
[13:36:54] [PASSED] ALDERLAKE_S (A0)
[13:36:54] [PASSED] ALDERLAKE_S (B0)
[13:36:54] [PASSED] ALDERLAKE_S (C0)
[13:36:54] [PASSED] ALDERLAKE_S (D0)
[13:36:54] [PASSED] DG2_G10 (A0)
[13:36:54] [PASSED] DG2_G10 (A1)
[13:36:54] [PASSED] DG2_G10 (B0)
[13:36:54] [PASSED] DG2_G10 (C0)
[13:36:54] [PASSED] DG2_G11 (A0)
[13:36:54] [PASSED] DG2_G11 (B0)
[13:36:54] [PASSED] DG2_G11 (B1)
[13:36:54] [PASSED] DG2_G12 (A0)
[13:36:54] [PASSED] DG2_G12 (A1)
[13:36:54] [PASSED] PVC (B0)
[13:36:54] [PASSED] PVC (B1)
[13:36:54] [PASSED] PVC (C0)
[13:36:54] ==================== [PASSED] xe_wa_gt =====================
[13:36:54] ====================== [PASSED] xe_wa ======================
[13:36:54] ============================================================
[13:36:54] Testing complete. Ran 34 tests: passed: 30, skipped: 4
[13:36:54] Elapsed time: 26.238s total, 4.182s configuring, 21.886s building, 0.137s running

+ /kernel/tools/testing/kunit/kunit.py run --kunitconfig /kernel/drivers/gpu/drm/tests/.kunitconfig
[13:36:54] Configuring KUnit Kernel ...
Regenerating .config ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
[13:36:56] Building KUnit Kernel ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
Building with:
$ make ARCH=um O=.kunit --jobs=48
[13:37:14] Starting KUnit Kernel (1/1)...
[13:37:14] ============================================================
[13:37:14] ============ drm_test_pick_cmdline (2 subtests) ============
[13:37:14] [PASSED] drm_test_pick_cmdline_res_1920_1080_60
[13:37:14] =============== drm_test_pick_cmdline_named  ===============
[13:37:14] [PASSED] NTSC
[13:37:14] [PASSED] NTSC-J
[13:37:14] [PASSED] PAL
[13:37:14] [PASSED] PAL-M
[13:37:14] =========== [PASSED] drm_test_pick_cmdline_named ===========
[13:37:14] ============== [PASSED] drm_test_pick_cmdline ==============
[13:37:14] ================== drm_buddy (6 subtests) ==================
[13:37:14] [PASSED] drm_test_buddy_alloc_limit
[13:37:14] [PASSED] drm_test_buddy_alloc_range
[13:37:14] [PASSED] drm_test_buddy_alloc_optimistic
[13:37:14] [PASSED] drm_test_buddy_alloc_pessimistic
[13:37:14] [PASSED] drm_test_buddy_alloc_smoke
[13:37:14] [PASSED] drm_test_buddy_alloc_pathological
[13:37:14] ==================== [PASSED] drm_buddy ====================
[13:37:14] ============= drm_cmdline_parser (40 subtests) =============
[13:37:14] [PASSED] drm_test_cmdline_force_d_only
[13:37:14] [PASSED] drm_test_cmdline_force_D_only_dvi
[13:37:14] [PASSED] drm_test_cmdline_force_D_only_hdmi
[13:37:14] [PASSED] drm_test_cmdline_force_D_only_not_digital
[13:37:14] [PASSED] drm_test_cmdline_force_e_only
[13:37:14] [PASSED] drm_test_cmdline_res
[13:37:14] [PASSED] drm_test_cmdline_res_vesa
[13:37:14] [PASSED] drm_test_cmdline_res_vesa_rblank
[13:37:14] [PASSED] drm_test_cmdline_res_rblank
[13:37:14] [PASSED] drm_test_cmdline_res_bpp
[13:37:14] [PASSED] drm_test_cmdline_res_refresh
[13:37:14] [PASSED] drm_test_cmdline_res_bpp_refresh
[13:37:14] [PASSED] drm_test_cmdline_res_bpp_refresh_interlaced
[13:37:14] [PASSED] drm_test_cmdline_res_bpp_refresh_margins
[13:37:14] [PASSED] drm_test_cmdline_res_bpp_refresh_force_off
[13:37:14] [PASSED] drm_test_cmdline_res_bpp_refresh_force_on
[13:37:14] [PASSED] drm_test_cmdline_res_bpp_refresh_force_on_analog
[13:37:14] [PASSED] drm_test_cmdline_res_bpp_refresh_force_on_digital
[13:37:14] [PASSED] drm_test_cmdline_res_bpp_refresh_interlaced_margins_force_on
[13:37:14] [PASSED] drm_test_cmdline_res_margins_force_on
[13:37:14] [PASSED] drm_test_cmdline_res_vesa_margins
[13:37:14] [PASSED] drm_test_cmdline_name
[13:37:14] [PASSED] drm_test_cmdline_name_bpp
[13:37:14] [PASSED] drm_test_cmdline_name_option
[13:37:14] [PASSED] drm_test_cmdline_name_bpp_option
[13:37:14] [PASSED] drm_test_cmdline_rotate_0
[13:37:14] [PASSED] drm_test_cmdline_rotate_90
[13:37:14] [PASSED] drm_test_cmdline_rotate_180
[13:37:14] [PASSED] drm_test_cmdline_rotate_270
[13:37:14] [PASSED] drm_test_cmdline_hmirror
[13:37:14] [PASSED] drm_test_cmdline_vmirror
[13:37:14] [PASSED] drm_test_cmdline_margin_options
[13:37:14] [PASSED] drm_test_cmdline_multiple_options
[13:37:14] [PASSED] drm_test_cmdline_bpp_extra_and_option
[13:37:14] [PASSED] drm_test_cmdline_extra_and_option
[13:37:14] [PASSED] drm_test_cmdline_freestanding_options
[13:37:14] [PASSED] drm_test_cmdline_freestanding_force_e_and_options
[13:37:14] [PASSED] drm_test_cmdline_panel_orientation
[13:37:14] ================ drm_test_cmdline_invalid  =================
[13:37:14] [PASSED] margin_only
[13:37:14] [PASSED] interlace_only
[13:37:14] [PASSED] res_missing_x
[13:37:14] [PASSED] res_missing_y
[13:37:14] [PASSED] res_bad_y
[13:37:14] [PASSED] res_missing_y_bpp
[13:37:14] [PASSED] res_bad_bpp
[13:37:14] [PASSED] res_bad_refresh
[13:37:14] [PASSED] res_bpp_refresh_force_on_off
[13:37:14] [PASSED] res_invalid_mode
[13:37:14] [PASSED] res_bpp_wrong_place_mode
[13:37:14] [PASSED] name_bpp_refresh
[13:37:14] [PASSED] name_refresh
[13:37:14] [PASSED] name_refresh_wrong_mode
[13:37:14] [PASSED] name_refresh_invalid_mode
[13:37:14] [PASSED] rotate_multiple
[13:37:14] [PASSED] rotate_invalid_val
[13:37:14] [PASSED] rotate_truncated
[13:37:14] [PASSED] invalid_option
[13:37:14] [PASSED] invalid_tv_option
[13:37:14] [PASSED] truncated_tv_option
[13:37:14] ============ [PASSED] drm_test_cmdline_invalid =============
[13:37:14] =============== drm_test_cmdline_tv_options  ===============
[13:37:14] [PASSED] NTSC
[13:37:14] [PASSED] NTSC_443
[13:37:14] [PASSED] NTSC_J
[13:37:14] [PASSED] PAL
[13:37:14] [PASSED] PAL_M
[13:37:14] [PASSED] PAL_N
[13:37:14] [PASSED] SECAM
[13:37:14] =========== [PASSED] drm_test_cmdline_tv_options ===========
[13:37:14] =============== [PASSED] drm_cmdline_parser ================
[13:37:14] ========== drm_get_tv_mode_from_name (2 subtests) ==========
[13:37:14] ========== drm_test_get_tv_mode_from_name_valid  ===========
[13:37:14] [PASSED] NTSC
[13:37:14] [PASSED] NTSC-443
[13:37:14] [PASSED] NTSC-J
[13:37:14] [PASSED] PAL
[13:37:14] [PASSED] PAL-M
[13:37:14] [PASSED] PAL-N
[13:37:14] [PASSED] SECAM
[13:37:14] ====== [PASSED] drm_test_get_tv_mode_from_name_valid =======
[13:37:14] [PASSED] drm_test_get_tv_mode_from_name_truncated
[13:37:14] ============ [PASSED] drm_get_tv_mode_from_name ============
[13:37:14] ============= drm_damage_helper (21 subtests) ==============
[13:37:14] [PASSED] drm_test_damage_iter_no_damage
[13:37:14] [PASSED] drm_test_damage_iter_no_damage_fractional_src
[13:37:14] [PASSED] drm_test_damage_iter_no_damage_src_moved
[13:37:14] [PASSED] drm_test_damage_iter_no_damage_fractional_src_moved
[13:37:14] [PASSED] drm_test_damage_iter_no_damage_not_visible
[13:37:14] [PASSED] drm_test_damage_iter_no_damage_no_crtc
[13:37:14] [PASSED] drm_test_damage_iter_no_damage_no_fb
[13:37:14] [PASSED] drm_test_damage_iter_simple_damage
[13:37:14] [PASSED] drm_test_damage_iter_single_damage
[13:37:14] [PASSED] drm_test_damage_iter_single_damage_intersect_src
[13:37:14] [PASSED] drm_test_damage_iter_single_damage_outside_src
[13:37:14] [PASSED] drm_test_damage_iter_single_damage_fractional_src
[13:37:14] [PASSED] drm_test_damage_iter_single_damage_intersect_fractional_src
[13:37:14] [PASSED] drm_test_damage_iter_single_damage_outside_fractional_src
[13:37:14] [PASSED] drm_test_damage_iter_single_damage_src_moved
[13:37:14] [PASSED] drm_test_damage_iter_single_damage_fractional_src_moved
[13:37:14] [PASSED] drm_test_damage_iter_damage
[13:37:14] [PASSED] drm_test_damage_iter_damage_one_intersect
[13:37:14] [PASSED] drm_test_damage_iter_damage_one_outside
[13:37:14] [PASSED] drm_test_damage_iter_damage_src_moved
[13:37:14] [PASSED] drm_test_damage_iter_damage_not_visible
[13:37:14] ================ [PASSED] drm_damage_helper ================
[13:37:14] ============== drm_dp_mst_helper (2 subtests) ==============
[13:37:14] ============== drm_test_dp_mst_calc_pbn_mode  ==============
[13:37:14] [PASSED] Clock 154000 BPP 30 DSC disabled
[13:37:14] [PASSED] Clock 234000 BPP 30 DSC disabled
[13:37:14] [PASSED] Clock 297000 BPP 24 DSC disabled
[13:37:14] [PASSED] Clock 332880 BPP 24 DSC enabled
[13:37:14] [PASSED] Clock 324540 BPP 24 DSC enabled
[13:37:14] ========== [PASSED] drm_test_dp_mst_calc_pbn_mode ==========
[13:37:14] ========= drm_test_dp_mst_sideband_msg_req_decode  =========
[13:37:14] [PASSED] DP_ENUM_PATH_RESOURCES with port number
[13:37:14] [PASSED] DP_POWER_UP_PHY with port number
[13:37:14] [PASSED] DP_POWER_DOWN_PHY with port number
[13:37:14] [PASSED] DP_ALLOCATE_PAYLOAD with SDP stream sinks
[13:37:14] [PASSED] DP_ALLOCATE_PAYLOAD with port number
[13:37:14] [PASSED] DP_ALLOCATE_PAYLOAD with VCPI
[13:37:14] [PASSED] DP_ALLOCATE_PAYLOAD with PBN
[13:37:14] [PASSED] DP_QUERY_PAYLOAD with port number
[13:37:14] [PASSED] DP_QUERY_PAYLOAD with VCPI
[13:37:14] [PASSED] DP_REMOTE_DPCD_READ with port number
[13:37:14] [PASSED] DP_REMOTE_DPCD_READ with DPCD address
[13:37:14] [PASSED] DP_REMOTE_DPCD_READ with max number of bytes
[13:37:14] [PASSED] DP_REMOTE_DPCD_WRITE with port number
[13:37:14] [PASSED] DP_REMOTE_DPCD_WRITE with DPCD address
[13:37:14] [PASSED] DP_REMOTE_DPCD_WRITE with data array
[13:37:14] [PASSED] DP_REMOTE_I2C_READ with port number
[13:37:14] [PASSED] DP_REMOTE_I2C_READ with I2C device ID
[13:37:14] [PASSED] DP_REMOTE_I2C_READ with transactions array
[13:37:14] [PASSED] DP_REMOTE_I2C_WRITE with port number
[13:37:14] [PASSED] DP_REMOTE_I2C_WRITE with I2C device ID
[13:37:14] [PASSED] DP_REMOTE_I2C_WRITE with data array
[13:37:14] [PASSED] DP_QUERY_STREAM_ENC_STATUS with stream ID
[13:37:14] [PASSED] DP_QUERY_STREAM_ENC_STATUS with client ID
[13:37:14] [PASSED] DP_QUERY_STREAM_ENC_STATUS with stream event
[13:37:14] [PASSED] DP_QUERY_STREAM_ENC_STATUS with valid stream event
[13:37:14] [PASSED] DP_QUERY_STREAM_ENC_STATUS with stream behavior
[13:37:14] [PASSED] DP_QUERY_STREAM_ENC_STATUS with a valid stream behavior
[13:37:14] ===== [PASSED] drm_test_dp_mst_sideband_msg_req_decode =====
[13:37:14] ================ [PASSED] drm_dp_mst_helper ================
[13:37:14] =========== drm_format_helper_test (11 subtests) ===========
[13:37:14] ============== drm_test_fb_xrgb8888_to_gray8  ==============
[13:37:14] [PASSED] single_pixel_source_buffer
[13:37:14] [PASSED] single_pixel_clip_rectangle
[13:37:14] [PASSED] well_known_colors
[13:37:14] [PASSED] destination_pitch
[13:37:14] ========== [PASSED] drm_test_fb_xrgb8888_to_gray8 ==========
[13:37:14] ============= drm_test_fb_xrgb8888_to_rgb332  ==============
[13:37:14] [PASSED] single_pixel_source_buffer
[13:37:14] [PASSED] single_pixel_clip_rectangle
[13:37:14] [PASSED] well_known_colors
[13:37:14] [PASSED] destination_pitch
[13:37:14] ========= [PASSED] drm_test_fb_xrgb8888_to_rgb332 ==========
[13:37:14] ============= drm_test_fb_xrgb8888_to_rgb565  ==============
[13:37:14] [PASSED] single_pixel_source_buffer
[13:37:14] [PASSED] single_pixel_clip_rectangle
[13:37:14] [PASSED] well_known_colors
[13:37:14] [PASSED] destination_pitch
[13:37:14] ========= [PASSED] drm_test_fb_xrgb8888_to_rgb565 ==========
[13:37:14] ============ drm_test_fb_xrgb8888_to_xrgb1555  =============
[13:37:14] [PASSED] single_pixel_source_buffer
[13:37:14] [PASSED] single_pixel_clip_rectangle
[13:37:14] [PASSED] well_known_colors
[13:37:14] [PASSED] destination_pitch
[13:37:14] ======== [PASSED] drm_test_fb_xrgb8888_to_xrgb1555 =========
[13:37:14] ============ drm_test_fb_xrgb8888_to_argb1555  =============
[13:37:14] [PASSED] single_pixel_source_buffer
[13:37:14] [PASSED] single_pixel_clip_rectangle
[13:37:14] [PASSED] well_known_colors
[13:37:14] [PASSED] destination_pitch
[13:37:14] ======== [PASSED] drm_test_fb_xrgb8888_to_argb1555 =========
[13:37:14] ============ drm_test_fb_xrgb8888_to_rgba5551  =============
[13:37:14] [PASSED] single_pixel_source_buffer
[13:37:14] [PASSED] single_pixel_clip_rectangle
[13:37:14] [PASSED] well_known_colors
[13:37:14] [PASSED] destination_pitch
[13:37:14] ======== [PASSED] drm_test_fb_xrgb8888_to_rgba5551 =========
[13:37:14] ============= drm_test_fb_xrgb8888_to_rgb888  ==============
[13:37:14] [PASSED] single_pixel_source_buffer
[13:37:14] [PASSED] single_pixel_clip_rectangle
[13:37:14] [PASSED] well_known_colors
[13:37:14] [PASSED] destination_pitch
[13:37:14] ========= [PASSED] drm_test_fb_xrgb8888_to_rgb888 ==========
[13:37:14] ============ drm_test_fb_xrgb8888_to_argb8888  =============
[13:37:14] [PASSED] single_pixel_source_buffer
[13:37:14] [PASSED] single_pixel_clip_rectangle
[13:37:14] [PASSED] well_known_colors
[13:37:14] [PASSED] destination_pitch
[13:37:14] ======== [PASSED] drm_test_fb_xrgb8888_to_argb8888 =========
[13:37:14] =========== drm_test_fb_xrgb8888_to_xrgb2101010  ===========
[13:37:14] [PASSED] single_pixel_source_buffer
[13:37:14] [PASSED] single_pixel_clip_rectangle
[13:37:14] [PASSED] well_known_colors
[13:37:14] [PASSED] destination_pitch
[13:37:14] ======= [PASSED] drm_test_fb_xrgb8888_to_xrgb2101010 =======
[13:37:14] =========== drm_test_fb_xrgb8888_to_argb2101010  ===========
[13:37:14] [PASSED] single_pixel_source_buffer
[13:37:14] [PASSED] single_pixel_clip_rectangle
[13:37:14] [PASSED] well_known_colors
[13:37:14] [PASSED] destination_pitch
[13:37:14] ======= [PASSED] drm_test_fb_xrgb8888_to_argb2101010 =======
[13:37:14] ============== drm_test_fb_xrgb8888_to_mono  ===============
[13:37:14] [PASSED] single_pixel_source_buffer
[13:37:14] [PASSED] single_pixel_clip_rectangle
[13:37:14] [PASSED] well_known_colors
[13:37:14] [PASSED] destination_pitch
[13:37:14] ========== [PASSED] drm_test_fb_xrgb8888_to_mono ===========
[13:37:14] ============= [PASSED] drm_format_helper_test ==============
[13:37:14] ================= drm_format (18 subtests) =================
[13:37:14] [PASSED] drm_test_format_block_width_invalid
[13:37:14] [PASSED] drm_test_format_block_width_one_plane
[13:37:14] [PASSED] drm_test_format_block_width_two_plane
[13:37:14] [PASSED] drm_test_format_block_width_three_plane
[13:37:14] [PASSED] drm_test_format_block_width_tiled
[13:37:14] [PASSED] drm_test_format_block_height_invalid
[13:37:14] [PASSED] drm_test_format_block_height_one_plane
[13:37:14] [PASSED] drm_test_format_block_height_two_plane
[13:37:14] [PASSED] drm_test_format_block_height_three_plane
[13:37:14] [PASSED] drm_test_format_block_height_tiled
[13:37:14] [PASSED] drm_test_format_min_pitch_invalid
[13:37:14] [PASSED] drm_test_format_min_pitch_one_plane_8bpp
[13:37:14] [PASSED] drm_test_format_min_pitch_one_plane_16bpp
[13:37:14] [PASSED] drm_test_format_min_pitch_one_plane_24bpp
[13:37:14] [PASSED] drm_test_format_min_pitch_one_plane_32bpp
[13:37:14] [PASSED] drm_test_format_min_pitch_two_plane
[13:37:14] [PASSED] drm_test_format_min_pitch_three_plane_8bpp
[13:37:14] [PASSED] drm_test_format_min_pitch_tiled
[13:37:14] =================== [PASSED] drm_format ====================
[13:37:14] =============== drm_framebuffer (1 subtest) ================
[13:37:14] =============== drm_test_framebuffer_create  ===============
[13:37:14] [PASSED] ABGR8888 normal sizes
[13:37:14] [PASSED] ABGR8888 max sizes
[13:37:14] [PASSED] ABGR8888 pitch greater than min required
[13:37:14] [PASSED] ABGR8888 pitch less than min required
[13:37:14] [PASSED] ABGR8888 Invalid width
[13:37:14] [PASSED] ABGR8888 Invalid buffer handle
[13:37:14] [PASSED] No pixel format
[13:37:14] [PASSED] ABGR8888 Width 0
[13:37:14] [PASSED] ABGR8888 Height 0
[13:37:14] [PASSED] ABGR8888 Out of bound height * pitch combination
[13:37:14] [PASSED] ABGR8888 Large buffer offset
[13:37:14] [PASSED] ABGR8888 Set DRM_MODE_FB_MODIFIERS without modifiers
[13:37:14] [PASSED] ABGR8888 Valid buffer modifier
[13:37:14] [PASSED] ABGR8888 Invalid buffer modifier(DRM_FORMAT_MOD_SAMSUNG_64_32_TILE)
[13:37:14] [PASSED] ABGR8888 Extra pitches without DRM_MODE_FB_MODIFIERS
[13:37:14] [PASSED] ABGR8888 Extra pitches with DRM_MODE_FB_MODIFIERS
[13:37:14] [PASSED] NV12 Normal sizes
[13:37:14] [PASSED] NV12 Max sizes
[13:37:14] [PASSED] NV12 Invalid pitch
[13:37:14] [PASSED] NV12 Invalid modifier/missing DRM_MODE_FB_MODIFIERS flag
[13:37:14] [PASSED] NV12 different  modifier per-plane
[13:37:14] [PASSED] NV12 with DRM_FORMAT_MOD_SAMSUNG_64_32_TILE
[13:37:14] [PASSED] NV12 Valid modifiers without DRM_MODE_FB_MODIFIERS
[13:37:14] [PASSED] NV12 Modifier for inexistent plane
[13:37:14] [PASSED] NV12 Handle for inexistent plane
[13:37:14] [PASSED] NV12 Handle for inexistent plane without DRM_MODE_FB_MODIFIERS
[13:37:14] [PASSED] YVU420 Normal sizes
[13:37:14] [PASSED] YVU420 DRM_MODE_FB_MODIFIERS set without modifier
[13:37:14] [PASSED] YVU420 Max sizes
[13:37:14] [PASSED] YVU420 Invalid pitch
[13:37:14] [PASSED] YVU420 Different pitches
[13:37:14] [PASSED] YVU420 Different buffer offsets/pitches
[13:37:14] [PASSED] YVU420 Modifier set just for plane 0, without DRM_MODE_FB_MODIFIERS
[13:37:14] [PASSED] YVU420 Modifier set just for planes 0, 1, without DRM_MODE_FB_MODIFIERS
[13:37:14] [PASSED] YVU420 Modifier set just for plane 0, 1, with DRM_MODE_FB_MODIFIERS
[13:37:14] [PASSED] YVU420 Valid modifier
[13:37:14] [PASSED] YVU420 Different modifiers per plane
[13:37:14] [PASSED] YVU420 Modifier for inexistent plane
[13:37:14] [PASSED] X0L2 Normal sizes
[13:37:14] [PASSED] X0L2 Max sizes
[13:37:14] [PASSED] X0L2 Invalid pitch
[13:37:14] [PASSED] X0L2 Pitch greater than minimum required
stty: 'standard input': Inappropriate ioctl for device
[13:37:14] [PASSED] X0L2 Handle for inexistent plane
[13:37:14] [PASSED] X0L2 Offset for inexistent plane, without DRM_MODE_FB_MODIFIERS set
[13:37:14] [PASSED] X0L2 Modifier without DRM_MODE_FB_MODIFIERS set
[13:37:14] [PASSED] X0L2 Valid modifier
[13:37:14] [PASSED] X0L2 Modifier for inexistent plane
[13:37:14] =========== [PASSED] drm_test_framebuffer_create ===========
[13:37:14] ================= [PASSED] drm_framebuffer =================
[13:37:14] =============== drm-test-managed (1 subtest) ===============
[13:37:14] [PASSED] drm_test_managed_run_action
[13:37:14] ================ [PASSED] drm-test-managed =================
[13:37:14] =================== drm_mm (19 subtests) ===================
[13:37:14] [PASSED] drm_test_mm_init
[13:37:15] [PASSED] drm_test_mm_debug
[13:37:24] [PASSED] drm_test_mm_reserve
[13:37:34] [PASSED] drm_test_mm_insert
[13:37:35] [PASSED] drm_test_mm_replace
[13:37:35] [PASSED] drm_test_mm_insert_range
[13:37:35] [PASSED] drm_test_mm_frag
[13:37:35] [PASSED] drm_test_mm_align
[13:37:35] [PASSED] drm_test_mm_align32
[13:37:35] [PASSED] drm_test_mm_align64
[13:37:35] [PASSED] drm_test_mm_evict
[13:37:35] [PASSED] drm_test_mm_evict_range
[13:37:35] [PASSED] drm_test_mm_topdown
[13:37:35] [PASSED] drm_test_mm_bottomup
[13:37:35] [PASSED] drm_test_mm_lowest
[13:37:35] [PASSED] drm_test_mm_highest
[13:37:36] [PASSED] drm_test_mm_color
[13:37:37] [PASSED] drm_test_mm_color_evict
[13:37:37] [PASSED] drm_test_mm_color_evict_range
[13:37:37] ===================== [PASSED] drm_mm ======================
[13:37:37] ============= drm_modes_analog_tv (4 subtests) =============
[13:37:37] [PASSED] drm_test_modes_analog_tv_ntsc_480i
[13:37:37] [PASSED] drm_test_modes_analog_tv_ntsc_480i_inlined
[13:37:37] [PASSED] drm_test_modes_analog_tv_pal_576i
[13:37:37] [PASSED] drm_test_modes_analog_tv_pal_576i_inlined
[13:37:37] =============== [PASSED] drm_modes_analog_tv ===============
[13:37:37] ============== drm_plane_helper (2 subtests) ===============
[13:37:37] =============== drm_test_check_plane_state  ================
[13:37:37] [PASSED] clipping_simple
[13:37:37] [PASSED] clipping_rotate_reflect
[13:37:37] [PASSED] positioning_simple
[13:37:37] [PASSED] upscaling
[13:37:37] [PASSED] downscaling
[13:37:37] [PASSED] rounding1
[13:37:37] [PASSED] rounding2
[13:37:37] [PASSED] rounding3
[13:37:37] [PASSED] rounding4
[13:37:37] =========== [PASSED] drm_test_check_plane_state ============
[13:37:37] =========== drm_test_check_invalid_plane_state  ============
[13:37:37] [PASSED] positioning_invalid
[13:37:37] [PASSED] upscaling_invalid
[13:37:37] [PASSED] downscaling_invalid
[13:37:37] ======= [PASSED] drm_test_check_invalid_plane_state ========
[13:37:37] ================ [PASSED] drm_plane_helper =================
[13:37:37] ====== drm_connector_helper_tv_get_modes (1 subtest) =======
[13:37:37] ====== drm_test_connector_helper_tv_get_modes_check  =======
[13:37:37] [PASSED] None
[13:37:37] [PASSED] PAL
[13:37:37] [PASSED] NTSC
[13:37:37] [PASSED] Both, NTSC Default
[13:37:37] [PASSED] Both, PAL Default
[13:37:37] [PASSED] Both, NTSC Default, with PAL on command-line
[13:37:37] [PASSED] Both, PAL Default, with NTSC on command-line
[13:37:37] == [PASSED] drm_test_connector_helper_tv_get_modes_check ===
[13:37:37] ======== [PASSED] drm_connector_helper_tv_get_modes ========
[13:37:37] ================== drm_rect (9 subtests) ===================
[13:37:37] [PASSED] drm_test_rect_clip_scaled_div_by_zero
[13:37:37] [PASSED] drm_test_rect_clip_scaled_not_clipped
[13:37:37] [PASSED] drm_test_rect_clip_scaled_clipped
[13:37:37] [PASSED] drm_test_rect_clip_scaled_signed_vs_unsigned
[13:37:37] ================= drm_test_rect_intersect  =================
[13:37:37] [PASSED] top-left x bottom-right: 2x2+1+1 x 2x2+0+0
[13:37:37] [PASSED] top-right x bottom-left: 2x2+0+0 x 2x2+1-1
[13:37:37] [PASSED] bottom-left x top-right: 2x2+1-1 x 2x2+0+0
[13:37:37] [PASSED] bottom-right x top-left: 2x2+0+0 x 2x2+1+1
[13:37:37] [PASSED] right x left: 2x1+0+0 x 3x1+1+0
[13:37:37] [PASSED] left x right: 3x1+1+0 x 2x1+0+0
[13:37:37] [PASSED] up x bottom: 1x2+0+0 x 1x3+0-1
[13:37:37] [PASSED] bottom x up: 1x3+0-1 x 1x2+0+0
[13:37:37] [PASSED] touching corner: 1x1+0+0 x 2x2+1+1
[13:37:37] [PASSED] touching side: 1x1+0+0 x 1x1+1+0
[13:37:37] [PASSED] equal rects: 2x2+0+0 x 2x2+0+0
[13:37:37] [PASSED] inside another: 2x2+0+0 x 1x1+1+1
[13:37:37] [PASSED] far away: 1x1+0+0 x 1x1+3+6
[13:37:37] [PASSED] points intersecting: 0x0+5+10 x 0x0+5+10
[13:37:37] [PASSED] points not intersecting: 0x0+0+0 x 0x0+5+10
[13:37:37] ============= [PASSED] drm_test_rect_intersect =============
[13:37:37] ================ drm_test_rect_calc_hscale  ================
[13:37:37] [PASSED] normal use
[13:37:37] [PASSED] out of max range
[13:37:37] [PASSED] out of min range
[13:37:37] [PASSED] zero dst
[13:37:37] [PASSED] negative src
[13:37:37] [PASSED] negative dst
[13:37:37] ============ [PASSED] drm_test_rect_calc_hscale ============
[13:37:37] ================ drm_test_rect_calc_vscale  ================
[13:37:37] [PASSED] normal use
[13:37:37] [PASSED] out of max range
[13:37:37] [PASSED] out of min range
[13:37:37] [PASSED] zero dst
[13:37:37] [PASSED] negative src
[13:37:37] [PASSED] negative dst
[13:37:37] ============ [PASSED] drm_test_rect_calc_vscale ============
[13:37:37] ================== drm_test_rect_rotate  ===================
[13:37:37] [PASSED] reflect-x
[13:37:37] [PASSED] reflect-y
[13:37:37] [PASSED] rotate-0
[13:37:37] [PASSED] rotate-90
[13:37:37] [PASSED] rotate-180
[13:37:37] [PASSED] rotate-270
[13:37:37] ============== [PASSED] drm_test_rect_rotate ===============
[13:37:37] ================ drm_test_rect_rotate_inv  =================
[13:37:37] [PASSED] reflect-x
[13:37:37] [PASSED] reflect-y
[13:37:37] [PASSED] rotate-0
[13:37:37] [PASSED] rotate-90
[13:37:37] [PASSED] rotate-180
[13:37:37] [PASSED] rotate-270
[13:37:37] ============ [PASSED] drm_test_rect_rotate_inv =============
[13:37:37] ==================== [PASSED] drm_rect =====================
[13:37:37] ============================================================
[13:37:37] Testing complete. Ran 333 tests: passed: 333
[13:37:37] Elapsed time: 42.363s total, 1.674s configuring, 18.262s building, 22.419s running

+ cleanup
++ stat -c %u:%g /kernel
+ chown -R 1003:1003 /kernel



^ permalink raw reply	[flat|nested] 16+ messages in thread

* [Intel-xe] ✓ CI.Build: success for drm/xe: use hotplug irq code from i915
  2023-05-16 13:32 [Intel-xe] [PATCH 0/4] drm/xe: use hotplug irq code from i915 Jani Nikula
                   ` (5 preceding siblings ...)
  2023-05-16 13:37 ` [Intel-xe] ✓ CI.KUnit: " Patchwork
@ 2023-05-16 13:41 ` Patchwork
  2023-05-16 14:06 ` [Intel-xe] ○ CI.BAT: info " Patchwork
  7 siblings, 0 replies; 16+ messages in thread
From: Patchwork @ 2023-05-16 13:41 UTC (permalink / raw)
  To: Jani Nikula; +Cc: intel-xe

== Series Details ==

Series: drm/xe: use hotplug irq code from i915
URL   : https://patchwork.freedesktop.org/series/117818/
State : success

== Summary ==

+ trap cleanup EXIT
+ cd /kernel
+ git clone https://gitlab.freedesktop.org/drm/xe/ci.git .ci
Cloning into '.ci'...
++ date +%s
+ echo -e '\e[0Ksection_start:1684244267:build_x86_64[collapsed=true]\r\e[0KBuild x86-64'
+ mkdir -p build64
^[[0Ksection_start:1684244267:build_x86_64[collapsed=true]
^[[0KBuild x86-64
+ cat .ci/kernel/kconfig
+ make O=build64 olddefconfig
make[1]: Entering directory '/kernel/build64'
  GEN     Makefile
  HOSTCC  scripts/basic/fixdep
  HOSTCC  scripts/kconfig/conf.o
  HOSTCC  scripts/kconfig/confdata.o
  HOSTCC  scripts/kconfig/expr.o
  LEX     scripts/kconfig/lexer.lex.c
  YACC    scripts/kconfig/parser.tab.[ch]
  HOSTCC  scripts/kconfig/lexer.lex.o
  HOSTCC  scripts/kconfig/menu.o
  HOSTCC  scripts/kconfig/parser.tab.o
  HOSTCC  scripts/kconfig/preprocess.o
  HOSTCC  scripts/kconfig/symbol.o
  HOSTCC  scripts/kconfig/util.o
  HOSTLD  scripts/kconfig/conf
#
# configuration written to .config
#
make[1]: Leaving directory '/kernel/build64'
++ nproc
+ make O=build64 -j48
make[1]: Entering directory '/kernel/build64'
  GEN     Makefile
  WRAP    arch/x86/include/generated/uapi/asm/bpf_perf_event.h
  WRAP    arch/x86/include/generated/uapi/asm/errno.h
  WRAP    arch/x86/include/generated/uapi/asm/fcntl.h
  SYSHDR  arch/x86/include/generated/uapi/asm/unistd_32.h
  WRAP    arch/x86/include/generated/uapi/asm/ioctl.h
  SYSHDR  arch/x86/include/generated/uapi/asm/unistd_x32.h
  SYSHDR  arch/x86/include/generated/uapi/asm/unistd_64.h
  WRAP    arch/x86/include/generated/uapi/asm/ioctls.h
  WRAP    arch/x86/include/generated/uapi/asm/ipcbuf.h
  SYSTBL  arch/x86/include/generated/asm/syscalls_32.h
  SYSHDR  arch/x86/include/generated/asm/unistd_32_ia32.h
  SYSHDR  arch/x86/include/generated/asm/unistd_64_x32.h
  WRAP    arch/x86/include/generated/uapi/asm/param.h
  SYSTBL  arch/x86/include/generated/asm/syscalls_64.h
  WRAP    arch/x86/include/generated/uapi/asm/poll.h
  WRAP    arch/x86/include/generated/uapi/asm/resource.h
  WRAP    arch/x86/include/generated/uapi/asm/socket.h
  WRAP    arch/x86/include/generated/uapi/asm/sockios.h
  WRAP    arch/x86/include/generated/uapi/asm/termbits.h
  WRAP    arch/x86/include/generated/uapi/asm/types.h
  WRAP    arch/x86/include/generated/uapi/asm/termios.h
  UPD     include/generated/uapi/linux/version.h
  UPD     include/config/kernel.release
  HOSTCC  arch/x86/tools/relocs_32.o
  HOSTCC  arch/x86/tools/relocs_64.o
  UPD     include/generated/compile.h
  HOSTCC  arch/x86/tools/relocs_common.o
  WRAP    arch/x86/include/generated/asm/export.h
  WRAP    arch/x86/include/generated/asm/mcs_spinlock.h
  WRAP    arch/x86/include/generated/asm/early_ioremap.h
  WRAP    arch/x86/include/generated/asm/irq_regs.h
  WRAP    arch/x86/include/generated/asm/kmap_size.h
  WRAP    arch/x86/include/generated/asm/local64.h
  WRAP    arch/x86/include/generated/asm/mmiowb.h
  WRAP    arch/x86/include/generated/asm/module.lds.h
  WRAP    arch/x86/include/generated/asm/rwonce.h
  WRAP    arch/x86/include/generated/asm/unaligned.h
  HOSTCC  scripts/unifdef
  UPD     include/generated/utsrelease.h
  HOSTCC  scripts/kallsyms
  HOSTCC  scripts/sorttable
  HOSTCC  scripts/asn1_compiler
  DESCEND objtool
  HOSTCC  /kernel/build64/tools/objtool/fixdep.o
  HOSTLD  /kernel/build64/tools/objtool/fixdep-in.o
  LINK    /kernel/build64/tools/objtool/fixdep
  INSTALL /kernel/build64/tools/objtool/libsubcmd/include/subcmd/exec-cmd.h
  INSTALL /kernel/build64/tools/objtool/libsubcmd/include/subcmd/help.h
  INSTALL /kernel/build64/tools/objtool/libsubcmd/include/subcmd/pager.h
  INSTALL /kernel/build64/tools/objtool/libsubcmd/include/subcmd/run-command.h
  INSTALL /kernel/build64/tools/objtool/libsubcmd/include/subcmd/parse-options.h
  CC      /kernel/build64/tools/objtool/libsubcmd/exec-cmd.o
  CC      /kernel/build64/tools/objtool/libsubcmd/help.o
  CC      /kernel/build64/tools/objtool/libsubcmd/pager.o
  INSTALL libsubcmd_headers
  CC      /kernel/build64/tools/objtool/libsubcmd/parse-options.o
  CC      /kernel/build64/tools/objtool/libsubcmd/run-command.o
  CC      /kernel/build64/tools/objtool/libsubcmd/sigchain.o
  CC      /kernel/build64/tools/objtool/libsubcmd/subcmd-config.o
  HOSTLD  arch/x86/tools/relocs
  CC      scripts/mod/empty.o
  HOSTCC  scripts/mod/mk_elfconfig
  CC      scripts/mod/devicetable-offsets.s
  HDRINST usr/include/video/edid.h
  HDRINST usr/include/video/sisfb.h
  HDRINST usr/include/video/uvesafb.h
  HDRINST usr/include/drm/amdgpu_drm.h
  HDRINST usr/include/drm/qaic_accel.h
  HDRINST usr/include/drm/i915_drm.h
  HDRINST usr/include/drm/vgem_drm.h
  HDRINST usr/include/drm/xe_drm.h
  HDRINST usr/include/drm/virtgpu_drm.h
  HDRINST usr/include/drm/omap_drm.h
  HDRINST usr/include/drm/radeon_drm.h
  HDRINST usr/include/drm/tegra_drm.h
  HDRINST usr/include/drm/drm_mode.h
  HDRINST usr/include/drm/ivpu_accel.h
  HDRINST usr/include/drm/exynos_drm.h
  HDRINST usr/include/drm/drm_sarea.h
  HDRINST usr/include/drm/v3d_drm.h
  HDRINST usr/include/drm/qxl_drm.h
  HDRINST usr/include/drm/drm_fourcc.h
  HDRINST usr/include/drm/nouveau_drm.h
  HDRINST usr/include/drm/habanalabs_accel.h
  HDRINST usr/include/drm/vmwgfx_drm.h
  HDRINST usr/include/drm/msm_drm.h
  HDRINST usr/include/drm/etnaviv_drm.h
  HDRINST usr/include/drm/vc4_drm.h
  HDRINST usr/include/drm/panfrost_drm.h
  HDRINST usr/include/drm/lima_drm.h
  HDRINST usr/include/drm/drm.h
  HDRINST usr/include/drm/armada_drm.h
  HDRINST usr/include/mtd/inftl-user.h
  HDRINST usr/include/mtd/nftl-user.h
  HDRINST usr/include/mtd/mtd-user.h
  HDRINST usr/include/mtd/ubi-user.h
  HDRINST usr/include/mtd/mtd-abi.h
  HDRINST usr/include/xen/gntdev.h
  HDRINST usr/include/xen/gntalloc.h
  HDRINST usr/include/xen/evtchn.h
  HDRINST usr/include/xen/privcmd.h
  HDRINST usr/include/asm-generic/auxvec.h
  HDRINST usr/include/asm-generic/bitsperlong.h
  HDRINST usr/include/asm-generic/posix_types.h
  HDRINST usr/include/asm-generic/ioctls.h
  HDRINST usr/include/asm-generic/mman.h
  HDRINST usr/include/asm-generic/shmbuf.h
  HDRINST usr/include/asm-generic/bpf_perf_event.h
  HDRINST usr/include/asm-generic/types.h
  HDRINST usr/include/asm-generic/poll.h
  HDRINST usr/include/asm-generic/msgbuf.h
  HDRINST usr/include/asm-generic/swab.h
  HDRINST usr/include/asm-generic/statfs.h
  HDRINST usr/include/asm-generic/unistd.h
  HDRINST usr/include/asm-generic/hugetlb_encode.h
  HDRINST usr/include/asm-generic/resource.h
  HDRINST usr/include/asm-generic/param.h
  HDRINST usr/include/asm-generic/termbits-common.h
  HDRINST usr/include/asm-generic/sockios.h
  HDRINST usr/include/asm-generic/kvm_para.h
  HDRINST usr/include/asm-generic/errno.h
  HDRINST usr/include/asm-generic/termios.h
  HDRINST usr/include/asm-generic/mman-common.h
  HDRINST usr/include/asm-generic/ioctl.h
  HDRINST usr/include/asm-generic/socket.h
  HDRINST usr/include/asm-generic/signal-defs.h
  HDRINST usr/include/asm-generic/termbits.h
  UPD     scripts/mod/devicetable-offsets.h
  HDRINST usr/include/asm-generic/int-ll64.h
  HDRINST usr/include/asm-generic/siginfo.h
  HDRINST usr/include/asm-generic/signal.h
  HDRINST usr/include/asm-generic/stat.h
  HDRINST usr/include/asm-generic/int-l64.h
  HDRINST usr/include/asm-generic/errno-base.h
  HDRINST usr/include/asm-generic/fcntl.h
  HDRINST usr/include/asm-generic/setup.h
  HDRINST usr/include/asm-generic/ipcbuf.h
  HDRINST usr/include/asm-generic/sembuf.h
  HDRINST usr/include/asm-generic/ucontext.h
  HDRINST usr/include/rdma/mlx5_user_ioctl_cmds.h
  HDRINST usr/include/rdma/irdma-abi.h
  HDRINST usr/include/rdma/mana-abi.h
  HDRINST usr/include/rdma/hfi/hfi1_user.h
  HDRINST usr/include/rdma/hfi/hfi1_ioctl.h
  HDRINST usr/include/rdma/rdma_user_rxe.h
  HDRINST usr/include/rdma/rdma_user_ioctl.h
  HDRINST usr/include/rdma/mlx5_user_ioctl_verbs.h
  HDRINST usr/include/rdma/bnxt_re-abi.h
  HDRINST usr/include/rdma/hns-abi.h
  HDRINST usr/include/rdma/qedr-abi.h
  HDRINST usr/include/rdma/ib_user_ioctl_cmds.h
  HDRINST usr/include/rdma/vmw_pvrdma-abi.h
  HDRINST usr/include/rdma/ib_user_sa.h
  HDRINST usr/include/rdma/ib_user_ioctl_verbs.h
  HDRINST usr/include/rdma/rvt-abi.h
  HDRINST usr/include/rdma/mlx5-abi.h
  HDRINST usr/include/rdma/rdma_netlink.h
  HDRINST usr/include/rdma/erdma-abi.h
  HDRINST usr/include/rdma/rdma_user_ioctl_cmds.h
  HDRINST usr/include/rdma/rdma_user_cm.h
  HDRINST usr/include/rdma/ib_user_verbs.h
  HDRINST usr/include/rdma/efa-abi.h
  HDRINST usr/include/rdma/siw-abi.h
  HDRINST usr/include/rdma/mlx4-abi.h
  HDRINST usr/include/rdma/mthca-abi.h
  HDRINST usr/include/rdma/ib_user_mad.h
  HDRINST usr/include/rdma/ocrdma-abi.h
  HDRINST usr/include/rdma/cxgb4-abi.h
  MKELF   scripts/mod/elfconfig.h
  HDRINST usr/include/misc/xilinx_sdfec.h
  HDRINST usr/include/misc/uacce/hisi_qm.h
  HDRINST usr/include/misc/uacce/uacce.h
  HDRINST usr/include/misc/cxl.h
  HOSTCC  scripts/mod/modpost.o
  HDRINST usr/include/misc/ocxl.h
  HOSTCC  scripts/mod/file2alias.o
  HDRINST usr/include/misc/fastrpc.h
  HOSTCC  scripts/mod/sumversion.o
  HDRINST usr/include/misc/pvpanic.h
  HDRINST usr/include/linux/i8k.h
  HDRINST usr/include/linux/acct.h
  HDRINST usr/include/linux/atmmpc.h
  HDRINST usr/include/linux/fs.h
  HDRINST usr/include/linux/cifs/cifs_mount.h
  HDRINST usr/include/linux/cifs/cifs_netlink.h
  HDRINST usr/include/linux/if_packet.h
  HDRINST usr/include/linux/route.h
  HDRINST usr/include/linux/patchkey.h
  HDRINST usr/include/linux/tc_ematch/tc_em_cmp.h
  HDRINST usr/include/linux/tc_ematch/tc_em_ipt.h
  HDRINST usr/include/linux/tc_ematch/tc_em_meta.h
  HDRINST usr/include/linux/tc_ematch/tc_em_nbyte.h
  HDRINST usr/include/linux/tc_ematch/tc_em_text.h
  HDRINST usr/include/linux/virtio_pmem.h
  HDRINST usr/include/linux/rkisp1-config.h
  HDRINST usr/include/linux/vhost.h
  HDRINST usr/include/linux/cec-funcs.h
  HDRINST usr/include/linux/ppdev.h
  HDRINST usr/include/linux/isdn/capicmd.h
  HDRINST usr/include/linux/virtio_fs.h
  HDRINST usr/include/linux/netfilter_ipv6.h
  HDRINST usr/include/linux/lirc.h
  HDRINST usr/include/linux/mroute6.h
  HDRINST usr/include/linux/nl80211-vnd-intel.h
  HDRINST usr/include/linux/ivtvfb.h
  HDRINST usr/include/linux/auxvec.h
  HDRINST usr/include/linux/dm-log-userspace.h
  HDRINST usr/include/linux/dccp.h
  HDRINST usr/include/linux/virtio_scmi.h
  HDRINST usr/include/linux/atmarp.h
  HDRINST usr/include/linux/arcfb.h
  HDRINST usr/include/linux/nbd-netlink.h
  HDRINST usr/include/linux/sched/types.h
  HDRINST usr/include/linux/tcp.h
  HDRINST usr/include/linux/neighbour.h
  HDRINST usr/include/linux/dlm_device.h
  HDRINST usr/include/linux/wmi.h
  HDRINST usr/include/linux/btrfs_tree.h
  HDRINST usr/include/linux/virtio_crypto.h
  HDRINST usr/include/linux/vbox_err.h
  HDRINST usr/include/linux/edd.h
  HDRINST usr/include/linux/loop.h
  HDRINST usr/include/linux/nvme_ioctl.h
  HDRINST usr/include/linux/mmtimer.h
  HDRINST usr/include/linux/if_pppol2tp.h
  HDRINST usr/include/linux/mtio.h
  HDRINST usr/include/linux/if_arcnet.h
  HDRINST usr/include/linux/romfs_fs.h
  HDRINST usr/include/linux/posix_types.h
  HDRINST usr/include/linux/rtc.h
  HDRINST usr/include/linux/landlock.h
  HDRINST usr/include/linux/gpio.h
  HDRINST usr/include/linux/selinux_netlink.h
  HDRINST usr/include/linux/pps.h
  HDRINST usr/include/linux/ndctl.h
  HDRINST usr/include/linux/virtio_gpu.h
  HDRINST usr/include/linux/android/binderfs.h
  HDRINST usr/include/linux/android/binder.h
  HDRINST usr/include/linux/virtio_vsock.h
  HDRINST usr/include/linux/sound.h
  HDRINST usr/include/linux/vtpm_proxy.h
  HDRINST usr/include/linux/nfs_fs.h
  HDRINST usr/include/linux/elf-fdpic.h
  HDRINST usr/include/linux/adfs_fs.h
  HDRINST usr/include/linux/target_core_user.h
  HDRINST usr/include/linux/netlink_diag.h
  HDRINST usr/include/linux/const.h
  HDRINST usr/include/linux/firewire-cdev.h
  HDRINST usr/include/linux/vdpa.h
  HDRINST usr/include/linux/if_infiniband.h
  HDRINST usr/include/linux/serial.h
  HDRINST usr/include/linux/iio/types.h
  HDRINST usr/include/linux/iio/buffer.h
  HDRINST usr/include/linux/iio/events.h
  HDRINST usr/include/linux/baycom.h
  HDRINST usr/include/linux/major.h
  HDRINST usr/include/linux/atmppp.h
  HDRINST usr/include/linux/ipv6_route.h
  HDRINST usr/include/linux/spi/spidev.h
  HDRINST usr/include/linux/spi/spi.h
  HDRINST usr/include/linux/virtio_ring.h
  HDRINST usr/include/linux/hdlc/ioctl.h
  HDRINST usr/include/linux/remoteproc_cdev.h
  HDRINST usr/include/linux/hyperv.h
  HDRINST usr/include/linux/rpl_iptunnel.h
  HDRINST usr/include/linux/sync_file.h
  HDRINST usr/include/linux/igmp.h
  HDRINST usr/include/linux/v4l2-dv-timings.h
  HDRINST usr/include/linux/virtio_i2c.h
  HDRINST usr/include/linux/xfrm.h
  HDRINST usr/include/linux/capability.h
  HDRINST usr/include/linux/gtp.h
  HDRINST usr/include/linux/xdp_diag.h
  HDRINST usr/include/linux/pkt_cls.h
  HDRINST usr/include/linux/suspend_ioctls.h
  HDRINST usr/include/linux/vt.h
  HDRINST usr/include/linux/loadpin.h
  HDRINST usr/include/linux/dlm_plock.h
  HDRINST usr/include/linux/fb.h
  HDRINST usr/include/linux/max2175.h
  HDRINST usr/include/linux/sunrpc/debug.h
  HDRINST usr/include/linux/gsmmux.h
  HDRINST usr/include/linux/watchdog.h
  HDRINST usr/include/linux/vhost_types.h
  HDRINST usr/include/linux/vduse.h
  HDRINST usr/include/linux/ila.h
  HDRINST usr/include/linux/tdx-guest.h
  HDRINST usr/include/linux/close_range.h
  HDRINST usr/include/linux/ivtv.h
  HDRINST usr/include/linux/cryptouser.h
  HDRINST usr/include/linux/netfilter/xt_string.h
  HDRINST usr/include/linux/netfilter/nfnetlink_compat.h
  HDRINST usr/include/linux/netfilter/nf_nat.h
  HDRINST usr/include/linux/netfilter/xt_recent.h
  HDRINST usr/include/linux/netfilter/xt_addrtype.h
  HDRINST usr/include/linux/netfilter/nf_conntrack_tcp.h
  HDRINST usr/include/linux/netfilter/xt_MARK.h
  HDRINST usr/include/linux/netfilter/xt_SYNPROXY.h
  HDRINST usr/include/linux/netfilter/xt_multiport.h
  HDRINST usr/include/linux/netfilter/nfnetlink.h
  HDRINST usr/include/linux/netfilter/xt_cgroup.h
  HDRINST usr/include/linux/netfilter/nf_synproxy.h
  HDRINST usr/include/linux/netfilter/xt_TCPOPTSTRIP.h
  HDRINST usr/include/linux/netfilter/nfnetlink_log.h
  HDRINST usr/include/linux/netfilter/xt_TPROXY.h
  HDRINST usr/include/linux/netfilter/xt_u32.h
  HDRINST usr/include/linux/netfilter/nfnetlink_osf.h
  HDRINST usr/include/linux/netfilter/xt_ecn.h
  HDRINST usr/include/linux/netfilter/xt_esp.h
  HDRINST usr/include/linux/netfilter/nfnetlink_hook.h
  HDRINST usr/include/linux/netfilter/xt_mac.h
  HDRINST usr/include/linux/netfilter/xt_comment.h
  HDRINST usr/include/linux/netfilter/xt_NFQUEUE.h
  HDRINST usr/include/linux/netfilter/xt_osf.h
  HDRINST usr/include/linux/netfilter/xt_hashlimit.h
  HDRINST usr/include/linux/netfilter/nf_conntrack_sctp.h
  HDRINST usr/include/linux/netfilter/xt_socket.h
  HDRINST usr/include/linux/netfilter/xt_connmark.h
  HDRINST usr/include/linux/netfilter/xt_sctp.h
  HDRINST usr/include/linux/netfilter/xt_tcpudp.h
  HDRINST usr/include/linux/netfilter/xt_DSCP.h
  HDRINST usr/include/linux/netfilter/xt_time.h
  HDRINST usr/include/linux/netfilter/xt_IDLETIMER.h
  HDRINST usr/include/linux/netfilter/xt_policy.h
  HDRINST usr/include/linux/netfilter/xt_rpfilter.h
  HDRINST usr/include/linux/netfilter/xt_nfacct.h
  HDRINST usr/include/linux/netfilter/xt_SECMARK.h
  HDRINST usr/include/linux/netfilter/xt_length.h
  HDRINST usr/include/linux/netfilter/nfnetlink_cthelper.h
  HDRINST usr/include/linux/netfilter/xt_quota.h
  HDRINST usr/include/linux/netfilter/xt_CLASSIFY.h
  HDRINST usr/include/linux/netfilter/xt_ipcomp.h
  HDRINST usr/include/linux/netfilter/xt_iprange.h
  HDRINST usr/include/linux/netfilter/xt_bpf.h
  HDRINST usr/include/linux/netfilter/xt_LOG.h
  HDRINST usr/include/linux/netfilter/xt_rateest.h
  HDRINST usr/include/linux/netfilter/xt_CONNSECMARK.h
  HDRINST usr/include/linux/netfilter/xt_HMARK.h
  HDRINST usr/include/linux/netfilter/xt_CONNMARK.h
  HDRINST usr/include/linux/netfilter/xt_pkttype.h
  HDRINST usr/include/linux/netfilter/xt_ipvs.h
  HDRINST usr/include/linux/netfilter/xt_devgroup.h
  HDRINST usr/include/linux/netfilter/xt_AUDIT.h
  HDRINST usr/include/linux/netfilter/xt_realm.h
  HDRINST usr/include/linux/netfilter/nf_conntrack_common.h
  HDRINST usr/include/linux/netfilter/xt_set.h
  HDRINST usr/include/linux/netfilter/xt_LED.h
  HDRINST usr/include/linux/netfilter/xt_connlabel.h
  HDRINST usr/include/linux/netfilter/xt_owner.h
  HDRINST usr/include/linux/netfilter/xt_dccp.h
  HDRINST usr/include/linux/netfilter/xt_limit.h
  HDRINST usr/include/linux/netfilter/xt_conntrack.h
  HDRINST usr/include/linux/netfilter/xt_TEE.h
  HDRINST usr/include/linux/netfilter/xt_RATEEST.h
  HDRINST usr/include/linux/netfilter/xt_connlimit.h
  HDRINST usr/include/linux/netfilter/ipset/ip_set.h
  HDRINST usr/include/linux/netfilter/ipset/ip_set_list.h
  HDRINST usr/include/linux/netfilter/ipset/ip_set_hash.h
  HDRINST usr/include/linux/netfilter/ipset/ip_set_bitmap.h
  HDRINST usr/include/linux/netfilter/x_tables.h
  HDRINST usr/include/linux/netfilter/xt_dscp.h
  HDRINST usr/include/linux/netfilter/nf_conntrack_ftp.h
  HDRINST usr/include/linux/netfilter/xt_cluster.h
  HDRINST usr/include/linux/netfilter/nf_conntrack_tuple_common.h
  HDRINST usr/include/linux/netfilter/nf_log.h
  HDRINST usr/include/linux/netfilter/xt_tcpmss.h
  HDRINST usr/include/linux/netfilter/xt_NFLOG.h
  HDRINST usr/include/linux/netfilter/xt_l2tp.h
  HDRINST usr/include/linux/netfilter/xt_helper.h
  HDRINST usr/include/linux/netfilter/xt_statistic.h
  HDRINST usr/include/linux/netfilter/nfnetlink_queue.h
  HDRINST usr/include/linux/netfilter/nfnetlink_cttimeout.h
  HDRINST usr/include/linux/netfilter/xt_CT.h
  HDRINST usr/include/linux/netfilter/xt_CHECKSUM.h
  HDRINST usr/include/linux/netfilter/xt_connbytes.h
  HDRINST usr/include/linux/netfilter/xt_state.h
  HDRINST usr/include/linux/netfilter/nf_tables.h
  HDRINST usr/include/linux/netfilter/xt_mark.h
  HDRINST usr/include/linux/netfilter/xt_cpu.h
  HDRINST usr/include/linux/netfilter/nf_tables_compat.h
  HDRINST usr/include/linux/netfilter/xt_physdev.h
  HDRINST usr/include/linux/netfilter/nfnetlink_conntrack.h
  HDRINST usr/include/linux/netfilter/nfnetlink_acct.h
  HDRINST usr/include/linux/netfilter/xt_TCPMSS.h
  HDRINST usr/include/linux/tty_flags.h
  HDRINST usr/include/linux/if_phonet.h
  HDRINST usr/include/linux/elf-em.h
  HDRINST usr/include/linux/vm_sockets.h
  HDRINST usr/include/linux/dlmconstants.h
  HDRINST usr/include/linux/bsg.h
  HDRINST usr/include/linux/matroxfb.h
  HDRINST usr/include/linux/sysctl.h
  HDRINST usr/include/linux/unix_diag.h
  HDRINST usr/include/linux/pcitest.h
  HDRINST usr/include/linux/mman.h
  HDRINST usr/include/linux/if_plip.h
  HDRINST usr/include/linux/virtio_balloon.h
  HDRINST usr/include/linux/pidfd.h
  HDRINST usr/include/linux/f2fs.h
  HDRINST usr/include/linux/x25.h
  HDRINST usr/include/linux/if_cablemodem.h
  HDRINST usr/include/linux/utsname.h
  HDRINST usr/include/linux/counter.h
  HDRINST usr/include/linux/atm_tcp.h
  HDRINST usr/include/linux/atalk.h
  HDRINST usr/include/linux/virtio_rng.h
  HDRINST usr/include/linux/vboxguest.h
  HDRINST usr/include/linux/bpf_perf_event.h
  HDRINST usr/include/linux/ipmi_ssif_bmc.h
  HDRINST usr/include/linux/nfs_mount.h
  HDRINST usr/include/linux/sonet.h
  HDRINST usr/include/linux/netfilter.h
  HDRINST usr/include/linux/keyctl.h
  HDRINST usr/include/linux/nl80211.h
  HDRINST usr/include/linux/misc/bcm_vk.h
  HDRINST usr/include/linux/audit.h
  HDRINST usr/include/linux/tipc_config.h
  HDRINST usr/include/linux/tipc_sockets_diag.h
  HDRINST usr/include/linux/futex.h
  HDRINST usr/include/linux/sev-guest.h
  HDRINST usr/include/linux/ublk_cmd.h
  HDRINST usr/include/linux/types.h
  HDRINST usr/include/linux/virtio_input.h
  HDRINST usr/include/linux/personality.h
  HDRINST usr/include/linux/if_slip.h
  HDRINST usr/include/linux/openat2.h
  HDRINST usr/include/linux/poll.h
  HDRINST usr/include/linux/posix_acl.h
  HDRINST usr/include/linux/smc_diag.h
  HDRINST usr/include/linux/snmp.h
  HDRINST usr/include/linux/errqueue.h
  HDRINST usr/include/linux/if_tunnel.h
  HDRINST usr/include/linux/fanotify.h
  HDRINST usr/include/linux/kernel.h
  HDRINST usr/include/linux/rtnetlink.h
  HDRINST usr/include/linux/rpl.h
  HDRINST usr/include/linux/memfd.h
  HDRINST usr/include/linux/serial_core.h
  HDRINST usr/include/linux/dns_resolver.h
  HDRINST usr/include/linux/pr.h
  HDRINST usr/include/linux/atm_eni.h
  HDRINST usr/include/linux/lp.h
  HDRINST usr/include/linux/virtio_mem.h
  HDRINST usr/include/linux/ultrasound.h
  HDRINST usr/include/linux/sctp.h
  HDRINST usr/include/linux/uio.h
  HDRINST usr/include/linux/tcp_metrics.h
  HDRINST usr/include/linux/wwan.h
  HDRINST usr/include/linux/atmbr2684.h
  HDRINST usr/include/linux/in_route.h
  HDRINST usr/include/linux/qemu_fw_cfg.h
  HDRINST usr/include/linux/if_macsec.h
  HDRINST usr/include/linux/usb/charger.h
  HDRINST usr/include/linux/usb/g_uvc.h
  HDRINST usr/include/linux/usb/gadgetfs.h
  HDRINST usr/include/linux/usb/raw_gadget.h
  HDRINST usr/include/linux/usb/cdc-wdm.h
  HDRINST usr/include/linux/usb/g_printer.h
  HDRINST usr/include/linux/usb/midi.h
  HDRINST usr/include/linux/usb/tmc.h
  HDRINST usr/include/linux/usb/video.h
  HDRINST usr/include/linux/usb/functionfs.h
  HDRINST usr/include/linux/usb/audio.h
  HDRINST usr/include/linux/usb/ch11.h
  HDRINST usr/include/linux/usb/ch9.h
  HDRINST usr/include/linux/usb/cdc.h
  HDRINST usr/include/linux/jffs2.h
  HDRINST usr/include/linux/ax25.h
  HDRINST usr/include/linux/auto_fs.h
  HDRINST usr/include/linux/tiocl.h
  HDRINST usr/include/linux/scc.h
  HDRINST usr/include/linux/psci.h
  HDRINST usr/include/linux/swab.h
  HDRINST usr/include/linux/cec.h
  HDRINST usr/include/linux/kfd_ioctl.h
  HDRINST usr/include/linux/smc.h
  HDRINST usr/include/linux/qrtr.h
  HDRINST usr/include/linux/screen_info.h
  HDRINST usr/include/linux/nfsacl.h
  HDRINST usr/include/linux/seg6_hmac.h
  HDRINST usr/include/linux/gameport.h
  HDRINST usr/include/linux/wireless.h
  HDRINST usr/include/linux/fdreg.h
  HDRINST usr/include/linux/cciss_defs.h
  HDRINST usr/include/linux/serial_reg.h
  HDRINST usr/include/linux/perf_event.h
  HDRINST usr/include/linux/in6.h
  HDRINST usr/include/linux/hid.h
  HDRINST usr/include/linux/netlink.h
  HDRINST usr/include/linux/fuse.h
  HDRINST usr/include/linux/magic.h
  HDRINST usr/include/linux/ioam6_iptunnel.h
  HDRINST usr/include/linux/stm.h
  HDRINST usr/include/linux/vsockmon.h
  HDRINST usr/include/linux/seg6.h
  HDRINST usr/include/linux/idxd.h
  HDRINST usr/include/linux/nitro_enclaves.h
  HDRINST usr/include/linux/ptrace.h
  HDRINST usr/include/linux/ioam6_genl.h
  HDRINST usr/include/linux/qnx4_fs.h
  HDRINST usr/include/linux/fsl_mc.h
  HDRINST usr/include/linux/net_tstamp.h
  HDRINST usr/include/linux/msg.h
  HDRINST usr/include/linux/netfilter_ipv4/ipt_TTL.h
  HDRINST usr/include/linux/netfilter_ipv4/ipt_ttl.h
  HDRINST usr/include/linux/netfilter_ipv4/ipt_ah.h
  HDRINST usr/include/linux/netfilter_ipv4/ipt_ECN.h
  HDRINST usr/include/linux/netfilter_ipv4/ip_tables.h
  HDRINST usr/include/linux/netfilter_ipv4/ipt_ecn.h
  HDRINST usr/include/linux/netfilter_ipv4/ipt_CLUSTERIP.h
  HDRINST usr/include/linux/netfilter_ipv4/ipt_REJECT.h
  HDRINST usr/include/linux/netfilter_ipv4/ipt_LOG.h
  HDRINST usr/include/linux/sem.h
  HDRINST usr/include/linux/net_namespace.h
  HDRINST usr/include/linux/radeonfb.h
  HDRINST usr/include/linux/tee.h
  HDRINST usr/include/linux/udp.h
  HDRINST usr/include/linux/virtio_bt.h
  HDRINST usr/include/linux/v4l2-subdev.h
  HDRINST usr/include/linux/posix_acl_xattr.h
  HDRINST usr/include/linux/v4l2-mediabus.h
  HDRINST usr/include/linux/atmapi.h
  HDRINST usr/include/linux/raid/md_p.h
  HDRINST usr/include/linux/raid/md_u.h
  HDRINST usr/include/linux/zorro_ids.h
  HDRINST usr/include/linux/nbd.h
  HDRINST usr/include/linux/isst_if.h
  HDRINST usr/include/linux/rxrpc.h
  HDRINST usr/include/linux/unistd.h
  HDRINST usr/include/linux/if_arp.h
  HDRINST usr/include/linux/atm_zatm.h
  HDRINST usr/include/linux/io_uring.h
  HDRINST usr/include/linux/if_fddi.h
  HDRINST usr/include/linux/bpqether.h
  HDRINST usr/include/linux/sysinfo.h
  HDRINST usr/include/linux/auto_dev-ioctl.h
  HDRINST usr/include/linux/nfs4_mount.h
  HDRINST usr/include/linux/keyboard.h
  HDRINST usr/include/linux/virtio_mmio.h
  HDRINST usr/include/linux/input.h
  HDRINST usr/include/linux/qnxtypes.h
  HDRINST usr/include/linux/mdio.h
  HDRINST usr/include/linux/lwtunnel.h
  HDRINST usr/include/linux/gfs2_ondisk.h
  HDRINST usr/include/linux/nfs4.h
  HDRINST usr/include/linux/ptp_clock.h
  HDRINST usr/include/linux/nubus.h
  HDRINST usr/include/linux/if_bonding.h
  HDRINST usr/include/linux/kcov.h
  HDRINST usr/include/linux/fadvise.h
  HDRINST usr/include/linux/taskstats.h
  HDRINST usr/include/linux/veth.h
  HDRINST usr/include/linux/atm.h
  LD      /kernel/build64/tools/objtool/libsubcmd/libsubcmd-in.o
  HDRINST usr/include/linux/ipmi.h
  HDRINST usr/include/linux/kdev_t.h
  HDRINST usr/include/linux/mount.h
  HDRINST usr/include/linux/shm.h
  HDRINST usr/include/linux/resource.h
  HDRINST usr/include/linux/prctl.h
  HDRINST usr/include/linux/watch_queue.h
  HDRINST usr/include/linux/sched.h
  HDRINST usr/include/linux/phonet.h
  HDRINST usr/include/linux/random.h
  HDRINST usr/include/linux/tty.h
  HDRINST usr/include/linux/apm_bios.h
  HDRINST usr/include/linux/fd.h
  HDRINST usr/include/linux/um_timetravel.h
  HDRINST usr/include/linux/tls.h
  HDRINST usr/include/linux/rpmsg_types.h
  HDRINST usr/include/linux/pfrut.h
  HDRINST usr/include/linux/mei.h
  HDRINST usr/include/linux/fsi.h
  HDRINST usr/include/linux/rds.h
  HDRINST usr/include/linux/if_x25.h
  HDRINST usr/include/linux/param.h
  HDRINST usr/include/linux/netdevice.h
  HDRINST usr/include/linux/binfmts.h
  HDRINST usr/include/linux/if_pppox.h
  HDRINST usr/include/linux/sockios.h
  HDRINST usr/include/linux/kcm.h
  HDRINST usr/include/linux/virtio_9p.h
  HDRINST usr/include/linux/genwqe/genwqe_card.h
  AR      /kernel/build64/tools/objtool/libsubcmd/libsubcmd.a
  HDRINST usr/include/linux/if_tun.h
  HDRINST usr/include/linux/if_ether.h
  HDRINST usr/include/linux/kvm_para.h
  HDRINST usr/include/linux/kernel-page-flags.h
  HDRINST usr/include/linux/cdrom.h
  HDRINST usr/include/linux/un.h
  HDRINST usr/include/linux/module.h
  HDRINST usr/include/linux/mqueue.h
  HDRINST usr/include/linux/a.out.h
  HDRINST usr/include/linux/input-event-codes.h
  HDRINST usr/include/linux/coda.h
  HDRINST usr/include/linux/rio_mport_cdev.h
  HDRINST usr/include/linux/ipsec.h
  HDRINST usr/include/linux/blkpg.h
  HDRINST usr/include/linux/blkzoned.h
  HDRINST usr/include/linux/netfilter_bridge/ebt_arpreply.h
  HDRINST usr/include/linux/netfilter_bridge/ebt_redirect.h
  HDRINST usr/include/linux/netfilter_bridge/ebt_nflog.h
  HDRINST usr/include/linux/netfilter_bridge/ebt_802_3.h
  HDRINST usr/include/linux/netfilter_bridge/ebt_nat.h
  HDRINST usr/include/linux/netfilter_bridge/ebt_mark_m.h
  HDRINST usr/include/linux/netfilter_bridge/ebtables.h
  HDRINST usr/include/linux/netfilter_bridge/ebt_vlan.h
  HDRINST usr/include/linux/netfilter_bridge/ebt_limit.h
  HDRINST usr/include/linux/netfilter_bridge/ebt_log.h
  HDRINST usr/include/linux/netfilter_bridge/ebt_stp.h
  HDRINST usr/include/linux/netfilter_bridge/ebt_pkttype.h
  HDRINST usr/include/linux/netfilter_bridge/ebt_ip.h
  HDRINST usr/include/linux/netfilter_bridge/ebt_ip6.h
  HDRINST usr/include/linux/netfilter_bridge/ebt_arp.h
  HDRINST usr/include/linux/netfilter_bridge/ebt_mark_t.h
  HDRINST usr/include/linux/netfilter_bridge/ebt_among.h
  HDRINST usr/include/linux/reiserfs_fs.h
  HDRINST usr/include/linux/cciss_ioctl.h
  HDRINST usr/include/linux/fsmap.h
  HDRINST usr/include/linux/smiapp.h
  HDRINST usr/include/linux/switchtec_ioctl.h
  HDRINST usr/include/linux/atmdev.h
  HDRINST usr/include/linux/hpet.h
  HDRINST usr/include/linux/virtio_config.h
  HDRINST usr/include/linux/string.h
  HDRINST usr/include/linux/kfd_sysfs.h
  HDRINST usr/include/linux/inet_diag.h
  HDRINST usr/include/linux/netdev.h
  HDRINST usr/include/linux/xattr.h
  HDRINST usr/include/linux/iommufd.h
  HDRINST usr/include/linux/errno.h
  HDRINST usr/include/linux/icmp.h
  HDRINST usr/include/linux/i2o-dev.h
  HDRINST usr/include/linux/pg.h
  HDRINST usr/include/linux/if_bridge.h
  HDRINST usr/include/linux/thermal.h
  HDRINST usr/include/linux/uinput.h
  HDRINST usr/include/linux/dqblk_xfs.h
  HDRINST usr/include/linux/v4l2-common.h
  HDRINST usr/include/linux/nvram.h
  HDRINST usr/include/linux/if_vlan.h
  HDRINST usr/include/linux/uhid.h
  HDRINST usr/include/linux/omap3isp.h
  HDRINST usr/include/linux/rose.h
  HDRINST usr/include/linux/phantom.h
  HDRINST usr/include/linux/ipmi_msgdefs.h
  HDRINST usr/include/linux/bcm933xx_hcs.h
  HDRINST usr/include/linux/bpf.h
  HDRINST usr/include/linux/mempolicy.h
  HDRINST usr/include/linux/efs_fs_sb.h
  HDRINST usr/include/linux/nexthop.h
  HDRINST usr/include/linux/net_dropmon.h
  CC      /kernel/build64/tools/objtool/weak.o
  HDRINST usr/include/linux/surface_aggregator/cdev.h
  CC      /kernel/build64/tools/objtool/check.o
  HDRINST usr/include/linux/surface_aggregator/dtx.h
  HDRINST usr/include/linux/net.h
  CC      /kernel/build64/tools/objtool/special.o
  HDRINST usr/include/linux/mii.h
  CC      /kernel/build64/tools/objtool/builtin-check.o
  HDRINST usr/include/linux/cm4000_cs.h
  MKDIR   /kernel/build64/tools/objtool/arch/x86/
  CC      /kernel/build64/tools/objtool/elf.o
  HDRINST usr/include/linux/virtio_pcidev.h
  MKDIR   /kernel/build64/tools/objtool/arch/x86/lib/
  HDRINST usr/include/linux/termios.h
  HDRINST usr/include/linux/cgroupstats.h
  CC      /kernel/build64/tools/objtool/objtool.o
  CC      /kernel/build64/tools/objtool/arch/x86/special.o
  HDRINST usr/include/linux/mpls.h
  HDRINST usr/include/linux/iommu.h
  GEN     /kernel/build64/tools/objtool/arch/x86/lib/inat-tables.c
  CC      /kernel/build64/tools/objtool/orc_gen.o
  HDRINST usr/include/linux/toshiba.h
  CC      /kernel/build64/tools/objtool/orc_dump.o
  HDRINST usr/include/linux/virtio_scsi.h
  HDRINST usr/include/linux/zorro.h
  CC      /kernel/build64/tools/objtool/libstring.o
  CC      /kernel/build64/tools/objtool/libctype.o
  CC      /kernel/build64/tools/objtool/str_error_r.o
  HDRINST usr/include/linux/chio.h
  CC      /kernel/build64/tools/objtool/librbtree.o
  HDRINST usr/include/linux/pkt_sched.h
  HDRINST usr/include/linux/cramfs_fs.h
  HDRINST usr/include/linux/nfs3.h
  HDRINST usr/include/linux/vfio_ccw.h
  HDRINST usr/include/linux/atm_nicstar.h
  HDRINST usr/include/linux/ncsi.h
  HDRINST usr/include/linux/virtio_net.h
  HDRINST usr/include/linux/ioctl.h
  HDRINST usr/include/linux/stddef.h
  HDRINST usr/include/linux/limits.h
  HDRINST usr/include/linux/ipmi_bmc.h
  HDRINST usr/include/linux/netfilter_arp.h
  HDRINST usr/include/linux/if_addr.h
  HDRINST usr/include/linux/rpmsg.h
  HDRINST usr/include/linux/media-bus-format.h
  HDRINST usr/include/linux/kernelcapi.h
  HDRINST usr/include/linux/ppp_defs.h
  HDRINST usr/include/linux/ethtool.h
  HDRINST usr/include/linux/aspeed-video.h
  HDRINST usr/include/linux/hdlc.h
  HDRINST usr/include/linux/fscrypt.h
  HDRINST usr/include/linux/batadv_packet.h
  HDRINST usr/include/linux/uuid.h
  HDRINST usr/include/linux/capi.h
  HDRINST usr/include/linux/mptcp.h
  HDRINST usr/include/linux/hidraw.h
  HDRINST usr/include/linux/virtio_console.h
  HDRINST usr/include/linux/irqnr.h
  HDRINST usr/include/linux/coresight-stm.h
  HDRINST usr/include/linux/cxl_mem.h
  HDRINST usr/include/linux/iso_fs.h
  HDRINST usr/include/linux/virtio_blk.h
  HDRINST usr/include/linux/udf_fs_i.h
  HDRINST usr/include/linux/coff.h
  HDRINST usr/include/linux/dma-buf.h
  HDRINST usr/include/linux/ife.h
  HDRINST usr/include/linux/agpgart.h
  HDRINST usr/include/linux/socket.h
  HDRINST usr/include/linux/nilfs2_ondisk.h
  HDRINST usr/include/linux/connector.h
  HDRINST usr/include/linux/auto_fs4.h
  HDRINST usr/include/linux/bt-bmc.h
  HDRINST usr/include/linux/map_to_7segment.h
  HDRINST usr/include/linux/tc_act/tc_skbedit.h
  HDRINST usr/include/linux/tc_act/tc_ctinfo.h
  HDRINST usr/include/linux/tc_act/tc_defact.h
  HDRINST usr/include/linux/tc_act/tc_gact.h
  HDRINST usr/include/linux/tc_act/tc_vlan.h
  HDRINST usr/include/linux/tc_act/tc_skbmod.h
  HDRINST usr/include/linux/tc_act/tc_sample.h
  HDRINST usr/include/linux/tc_act/tc_tunnel_key.h
  HDRINST usr/include/linux/tc_act/tc_gate.h
  HDRINST usr/include/linux/tc_act/tc_mirred.h
  HDRINST usr/include/linux/tc_act/tc_nat.h
  HDRINST usr/include/linux/tc_act/tc_csum.h
  HDRINST usr/include/linux/tc_act/tc_connmark.h
  CC      /kernel/build64/tools/objtool/arch/x86/decode.o
  HDRINST usr/include/linux/tc_act/tc_ife.h
  HDRINST usr/include/linux/tc_act/tc_mpls.h
  HDRINST usr/include/linux/tc_act/tc_ct.h
  HDRINST usr/include/linux/tc_act/tc_pedit.h
  HDRINST usr/include/linux/tc_act/tc_bpf.h
  HDRINST usr/include/linux/tc_act/tc_ipt.h
  HDRINST usr/include/linux/netrom.h
  HDRINST usr/include/linux/joystick.h
  HDRINST usr/include/linux/falloc.h
  HDRINST usr/include/linux/cycx_cfm.h
  HDRINST usr/include/linux/omapfb.h
  HDRINST usr/include/linux/msdos_fs.h
  HDRINST usr/include/linux/virtio_types.h
  HDRINST usr/include/linux/mroute.h
  HDRINST usr/include/linux/psample.h
  HDRINST usr/include/linux/ipv6.h
  HDRINST usr/include/linux/dw100.h
  HDRINST usr/include/linux/psp-sev.h
  HDRINST usr/include/linux/vfio.h
  HDRINST usr/include/linux/if_ppp.h
  HDRINST usr/include/linux/byteorder/big_endian.h
  HDRINST usr/include/linux/byteorder/little_endian.h
  HDRINST usr/include/linux/comedi.h
  HDRINST usr/include/linux/scif_ioctl.h
  HDRINST usr/include/linux/timerfd.h
  HDRINST usr/include/linux/time_types.h
  HDRINST usr/include/linux/firewire-constants.h
  HDRINST usr/include/linux/virtio_snd.h
  HDRINST usr/include/linux/ppp-ioctl.h
  HDRINST usr/include/linux/fib_rules.h
  HDRINST usr/include/linux/gen_stats.h
  HDRINST usr/include/linux/virtio_iommu.h
  HDRINST usr/include/linux/genetlink.h
  HDRINST usr/include/linux/uvcvideo.h
  HDRINST usr/include/linux/pfkeyv2.h
  HDRINST usr/include/linux/soundcard.h
  HDRINST usr/include/linux/times.h
  HDRINST usr/include/linux/nfc.h
  HDRINST usr/include/linux/affs_hardblocks.h
  HDRINST usr/include/linux/nilfs2_api.h
  HDRINST usr/include/linux/rseq.h
  HDRINST usr/include/linux/caif/caif_socket.h
  HDRINST usr/include/linux/caif/if_caif.h
  HDRINST usr/include/linux/i2c-dev.h
  HDRINST usr/include/linux/cuda.h
  HDRINST usr/include/linux/cn_proc.h
  HDRINST usr/include/linux/parport.h
  HDRINST usr/include/linux/v4l2-controls.h
  HDRINST usr/include/linux/hsi/cs-protocol.h
  HDRINST usr/include/linux/hsi/hsi_char.h
  HDRINST usr/include/linux/seg6_genl.h
  HDRINST usr/include/linux/am437x-vpfe.h
  HDRINST usr/include/linux/amt.h
  HDRINST usr/include/linux/netconf.h
  HDRINST usr/include/linux/erspan.h
  HDRINST usr/include/linux/nsfs.h
  HDRINST usr/include/linux/xilinx-v4l2-controls.h
  HDRINST usr/include/linux/aspeed-p2a-ctrl.h
  HDRINST usr/include/linux/vfio_zdev.h
  HDRINST usr/include/linux/serio.h
  HDRINST usr/include/linux/acrn.h
  HDRINST usr/include/linux/nfs2.h
  HDRINST usr/include/linux/virtio_pci.h
  HDRINST usr/include/linux/ipc.h
  HDRINST usr/include/linux/ethtool_netlink.h
  HDRINST usr/include/linux/kd.h
  HDRINST usr/include/linux/elf.h
  HDRINST usr/include/linux/videodev2.h
  HDRINST usr/include/linux/if_alg.h
  HDRINST usr/include/linux/sonypi.h
  HDRINST usr/include/linux/fsverity.h
  HDRINST usr/include/linux/if.h
  HDRINST usr/include/linux/btrfs.h
  HDRINST usr/include/linux/vm_sockets_diag.h
  HDRINST usr/include/linux/netfilter_bridge.h
  HDRINST usr/include/linux/packet_diag.h
  HDRINST usr/include/linux/netfilter_ipv4.h
  HDRINST usr/include/linux/kvm.h
  HDRINST usr/include/linux/pci.h
  HDRINST usr/include/linux/if_addrlabel.h
  HDRINST usr/include/linux/hdlcdrv.h
  HDRINST usr/include/linux/cfm_bridge.h
  HDRINST usr/include/linux/fiemap.h
  HDRINST usr/include/linux/dm-ioctl.h
  HDRINST usr/include/linux/aspeed-lpc-ctrl.h
  HDRINST usr/include/linux/atmioc.h
  HDRINST usr/include/linux/dlm.h
  HDRINST usr/include/linux/pci_regs.h
  HDRINST usr/include/linux/cachefiles.h
  HDRINST usr/include/linux/membarrier.h
  HDRINST usr/include/linux/nfs_idmap.h
  HDRINST usr/include/linux/ip.h
  HDRINST usr/include/linux/atm_he.h
  HDRINST usr/include/linux/nfsd/export.h
  HDRINST usr/include/linux/nfsd/stats.h
  HDRINST usr/include/linux/nfsd/debug.h
  HDRINST usr/include/linux/nfsd/cld.h
  HDRINST usr/include/linux/ip_vs.h
  HDRINST usr/include/linux/vmcore.h
  HDRINST usr/include/linux/vbox_vmmdev_types.h
  HDRINST usr/include/linux/dvb/osd.h
  HDRINST usr/include/linux/dvb/dmx.h
  HDRINST usr/include/linux/dvb/net.h
  HDRINST usr/include/linux/dvb/frontend.h
  HDRINST usr/include/linux/dvb/ca.h
  HDRINST usr/include/linux/dvb/version.h
  HDRINST usr/include/linux/dvb/video.h
  HDRINST usr/include/linux/dvb/audio.h
  HDRINST usr/include/linux/nfs.h
  HDRINST usr/include/linux/if_link.h
  HDRINST usr/include/linux/wait.h
  HDRINST usr/include/linux/icmpv6.h
  HDRINST usr/include/linux/media.h
  HDRINST usr/include/linux/seg6_local.h
  HDRINST usr/include/linux/openvswitch.h
  HDRINST usr/include/linux/atmsap.h
  HDRINST usr/include/linux/bpfilter.h
  HDRINST usr/include/linux/fpga-dfl.h
  HDRINST usr/include/linux/userio.h
  HDRINST usr/include/linux/signal.h
  HDRINST usr/include/linux/map_to_14segment.h
  HDRINST usr/include/linux/hdreg.h
  HDRINST usr/include/linux/utime.h
  HDRINST usr/include/linux/usbdevice_fs.h
  HDRINST usr/include/linux/timex.h
  HDRINST usr/include/linux/if_fc.h
  HDRINST usr/include/linux/reiserfs_xattr.h
  HDRINST usr/include/linux/hw_breakpoint.h
  HDRINST usr/include/linux/quota.h
  HDRINST usr/include/linux/ioprio.h
  HDRINST usr/include/linux/eventpoll.h
  HDRINST usr/include/linux/atmclip.h
  HDRINST usr/include/linux/can.h
  HDRINST usr/include/linux/if_team.h
  HDRINST usr/include/linux/usbip.h
  HDRINST usr/include/linux/stat.h
  HDRINST usr/include/linux/fou.h
  HDRINST usr/include/linux/hash_info.h
  HDRINST usr/include/linux/ppp-comp.h
  HDRINST usr/include/linux/ip6_tunnel.h
  HDRINST usr/include/linux/tipc_netlink.h
  HDRINST usr/include/linux/in.h
  HDRINST usr/include/linux/wireguard.h
  HDRINST usr/include/linux/btf.h
  HDRINST usr/include/linux/batman_adv.h
  HDRINST usr/include/linux/fcntl.h
  HDRINST usr/include/linux/if_ltalk.h
  HDRINST usr/include/linux/i2c.h
  HDRINST usr/include/linux/atm_idt77105.h
  HDRINST usr/include/linux/kexec.h
  HDRINST usr/include/linux/arm_sdei.h
  HDRINST usr/include/linux/netfilter_ipv6/ip6_tables.h
  HDRINST usr/include/linux/netfilter_ipv6/ip6t_ah.h
  HDRINST usr/include/linux/netfilter_ipv6/ip6t_NPT.h
  HDRINST usr/include/linux/netfilter_ipv6/ip6t_rt.h
  HDRINST usr/include/linux/netfilter_ipv6/ip6t_REJECT.h
  HDRINST usr/include/linux/netfilter_ipv6/ip6t_opts.h
  HDRINST usr/include/linux/netfilter_ipv6/ip6t_srh.h
  HDRINST usr/include/linux/netfilter_ipv6/ip6t_LOG.h
  HDRINST usr/include/linux/netfilter_ipv6/ip6t_mh.h
  HDRINST usr/include/linux/netfilter_ipv6/ip6t_HL.h
  HDRINST usr/include/linux/netfilter_ipv6/ip6t_hl.h
  HDRINST usr/include/linux/netfilter_ipv6/ip6t_frag.h
  HDRINST usr/include/linux/netfilter_ipv6/ip6t_ipv6header.h
  HDRINST usr/include/linux/minix_fs.h
  HDRINST usr/include/linux/aio_abi.h
  HDRINST usr/include/linux/pktcdvd.h
  HDRINST usr/include/linux/libc-compat.h
  HDRINST usr/include/linux/atmlec.h
  HDRINST usr/include/linux/signalfd.h
  HDRINST usr/include/linux/bpf_common.h
  HDRINST usr/include/linux/seg6_iptunnel.h
  HDRINST usr/include/linux/synclink.h
  HDRINST usr/include/linux/mpls_iptunnel.h
  HDRINST usr/include/linux/mctp.h
  HDRINST usr/include/linux/if_xdp.h
  HDRINST usr/include/linux/llc.h
  HDRINST usr/include/linux/atmsvc.h
  HDRINST usr/include/linux/sed-opal.h
  HDRINST usr/include/linux/sock_diag.h
  HDRINST usr/include/linux/time.h
  HDRINST usr/include/linux/securebits.h
  HDRINST usr/include/linux/fsl_hypervisor.h
  HDRINST usr/include/linux/if_hippi.h
  HDRINST usr/include/linux/dlm_netlink.h
  HDRINST usr/include/linux/seccomp.h
  HDRINST usr/include/linux/oom.h
  HDRINST usr/include/linux/filter.h
  HDRINST usr/include/linux/inotify.h
  HDRINST usr/include/linux/rfkill.h
  HDRINST usr/include/linux/reboot.h
  HDRINST usr/include/linux/can/vxcan.h
  HDRINST usr/include/linux/can/j1939.h
  HDRINST usr/include/linux/can/netlink.h
  HDRINST usr/include/linux/can/bcm.h
  HDRINST usr/include/linux/can/raw.h
  HDRINST usr/include/linux/can/gw.h
  HDRINST usr/include/linux/can/error.h
  HDRINST usr/include/linux/can/isotp.h
  HDRINST usr/include/linux/if_eql.h
  HDRINST usr/include/linux/hiddev.h
  HDRINST usr/include/linux/blktrace_api.h
  HDRINST usr/include/linux/ccs.h
  HDRINST usr/include/linux/ioam6.h
  HDRINST usr/include/linux/hsr_netlink.h
  HDRINST usr/include/linux/mmc/ioctl.h
  HDRINST usr/include/linux/bfs_fs.h
  HDRINST usr/include/linux/rio_cm_cdev.h
  HDRINST usr/include/linux/uleds.h
  HDRINST usr/include/linux/mrp_bridge.h
  HDRINST usr/include/linux/adb.h
  HDRINST usr/include/linux/pmu.h
  HDRINST usr/include/linux/udmabuf.h
  HDRINST usr/include/linux/kcmp.h
  HDRINST usr/include/linux/dma-heap.h
  HDRINST usr/include/linux/userfaultfd.h
  HDRINST usr/include/linux/netfilter_arp/arpt_mangle.h
  HDRINST usr/include/linux/netfilter_arp/arp_tables.h
  HDRINST usr/include/linux/tipc.h
  HDRINST usr/include/linux/virtio_ids.h
  HDRINST usr/include/linux/l2tp.h
  HDRINST usr/include/linux/devlink.h
  HDRINST usr/include/linux/virtio_gpio.h
  HDRINST usr/include/linux/dcbnl.h
  HDRINST usr/include/linux/cyclades.h
  HDRINST usr/include/sound/intel/avs/tokens.h
  HDRINST usr/include/sound/sof/fw.h
  HDRINST usr/include/sound/sof/abi.h
  HDRINST usr/include/sound/sof/tokens.h
  HDRINST usr/include/sound/sof/header.h
  HDRINST usr/include/sound/usb_stream.h
  HDRINST usr/include/sound/sfnt_info.h
  HDRINST usr/include/sound/asequencer.h
  HDRINST usr/include/sound/tlv.h
  HDRINST usr/include/sound/asound.h
  HDRINST usr/include/sound/asoc.h
  HDRINST usr/include/sound/sb16_csp.h
  HDRINST usr/include/sound/compress_offload.h
  HDRINST usr/include/sound/hdsp.h
  HDRINST usr/include/sound/emu10k1.h
  HDRINST usr/include/sound/snd_ar_tokens.h
  HDRINST usr/include/sound/snd_sst_tokens.h
  HDRINST usr/include/sound/asound_fm.h
  HDRINST usr/include/sound/hdspm.h
  HDRINST usr/include/sound/compress_params.h
  HDRINST usr/include/sound/firewire.h
  HDRINST usr/include/sound/skl-tplg-interface.h
  HDRINST usr/include/scsi/scsi_bsg_ufs.h
  HDRINST usr/include/scsi/scsi_netlink_fc.h
  HDRINST usr/include/scsi/scsi_bsg_mpi3mr.h
  HDRINST usr/include/scsi/fc/fc_ns.h
  HDRINST usr/include/scsi/fc/fc_fs.h
  HDRINST usr/include/scsi/fc/fc_els.h
  HDRINST usr/include/scsi/fc/fc_gs.h
  HDRINST usr/include/scsi/scsi_bsg_fc.h
  HDRINST usr/include/scsi/cxlflash_ioctl.h
  HDRINST usr/include/scsi/scsi_netlink.h
  HDRINST usr/include/linux/version.h
  HDRINST usr/include/asm/processor-flags.h
  HDRINST usr/include/asm/auxvec.h
  HDRINST usr/include/asm/svm.h
  HDRINST usr/include/asm/bitsperlong.h
  HDRINST usr/include/asm/kvm_perf.h
  HDRINST usr/include/asm/posix_types.h
  HDRINST usr/include/asm/mce.h
  HDRINST usr/include/asm/msr.h
  HDRINST usr/include/asm/sigcontext32.h
  HDRINST usr/include/asm/mman.h
  HDRINST usr/include/asm/shmbuf.h
  HDRINST usr/include/asm/e820.h
  HDRINST usr/include/asm/posix_types_64.h
  HDRINST usr/include/asm/vsyscall.h
  HDRINST usr/include/asm/msgbuf.h
  HDRINST usr/include/asm/swab.h
  HDRINST usr/include/asm/statfs.h
  HDRINST usr/include/asm/posix_types_x32.h
  HDRINST usr/include/asm/ptrace.h
  HDRINST usr/include/asm/unistd.h
  HDRINST usr/include/asm/ist.h
  HDRINST usr/include/asm/prctl.h
  HDRINST usr/include/asm/boot.h
  HDRINST usr/include/asm/sigcontext.h
  HDRINST usr/include/asm/posix_types_32.h
  HDRINST usr/include/asm/kvm_para.h
  HDRINST usr/include/asm/a.out.h
  HDRINST usr/include/asm/mtrr.h
  HDRINST usr/include/asm/amd_hsmp.h
  HDRINST usr/include/asm/hwcap2.h
  HDRINST usr/include/asm/ptrace-abi.h
  HDRINST usr/include/asm/vm86.h
  HDRINST usr/include/asm/vmx.h
  HDRINST usr/include/asm/ldt.h
  HDRINST usr/include/asm/perf_regs.h
  HDRINST usr/include/asm/kvm.h
  HDRINST usr/include/asm/debugreg.h
  HDRINST usr/include/asm/signal.h
  HDRINST usr/include/asm/bootparam.h
  HDRINST usr/include/asm/siginfo.h
  HDRINST usr/include/asm/hw_breakpoint.h
  HDRINST usr/include/asm/stat.h
  HDRINST usr/include/asm/setup.h
  HDRINST usr/include/asm/sembuf.h
  HDRINST usr/include/asm/sgx.h
  HDRINST usr/include/asm/ucontext.h
  HDRINST usr/include/asm/byteorder.h
  HDRINST usr/include/asm/unistd_64.h
  HDRINST usr/include/asm/ioctls.h
  HDRINST usr/include/asm/bpf_perf_event.h
  HDRINST usr/include/asm/types.h
  HDRINST usr/include/asm/poll.h
  HDRINST usr/include/asm/resource.h
  HDRINST usr/include/asm/param.h
  HDRINST usr/include/asm/sockios.h
  HDRINST usr/include/asm/errno.h
  HDRINST usr/include/asm/unistd_x32.h
  HDRINST usr/include/asm/termios.h
  HDRINST usr/include/asm/ioctl.h
  HDRINST usr/include/asm/socket.h
  HDRINST usr/include/asm/unistd_32.h
  HDRINST usr/include/asm/termbits.h
  HDRINST usr/include/asm/fcntl.h
  HDRINST usr/include/asm/ipcbuf.h
  HOSTLD  scripts/mod/modpost
  CC      kernel/bounds.s
  CHKSHA1 ../include/linux/atomic/atomic-arch-fallback.h
  CHKSHA1 ../include/linux/atomic/atomic-instrumented.h
  CHKSHA1 ../include/linux/atomic/atomic-long.h
  UPD     include/generated/timeconst.h
  UPD     include/generated/bounds.h
  LD      /kernel/build64/tools/objtool/arch/x86/objtool-in.o
  CC      arch/x86/kernel/asm-offsets.s
  UPD     include/generated/asm-offsets.h
  CALL    ../scripts/checksyscalls.sh
  LD      /kernel/build64/tools/objtool/objtool-in.o
  LINK    /kernel/build64/tools/objtool/objtool
  LDS     scripts/module.lds
  AR      certs/built-in.a
  CC      ipc/compat.o
  CC      ipc/util.o
  CC      ipc/msgutil.o
  HOSTCC  usr/gen_init_cpio
  CC      ipc/msg.o
  CC      init/main.o
  CC      ipc/sem.o
  CC      ipc/shm.o
  CC      security/commoncap.o
  CC      io_uring/io_uring.o
  CC      ipc/syscall.o
  CC      security/min_addr.o
  CC      init/do_mounts.o
  CC      io_uring/xattr.o
  AS      arch/x86/lib/clear_page_64.o
  CC      security/inode.o
  AR      arch/x86/video/built-in.a
  CC      arch/x86/pci/i386.o
  CC      arch/x86/power/cpu.o
  CC      mm/filemap.o
  AR      sound/arm/built-in.a
  UPD     init/utsversion-tmp.h
  CC      security/keys/gc.o
  AR      virt/lib/built-in.a
  CC [M]  arch/x86/video/fbdev.o
  AR      arch/x86/ia32/built-in.a
  CC      arch/x86/realmode/init.o
  AS      arch/x86/crypto/aesni-intel_asm.o
  AR      sound/sh/built-in.a
  CC      block/partitions/core.o
  AR      sound/i2c/other/built-in.a
  CC      net/core/sock.o
  AR      sound/ppc/built-in.a
  AR      sound/drivers/opl3/built-in.a
  AR      sound/isa/ad1816a/built-in.a
  CC [M]  virt/lib/irqbypass.o
  CC      sound/core/seq/seq.o
  AR      drivers/bus/mhi/built-in.a
  AR      drivers/irqchip/built-in.a
  CC      arch/x86/pci/init.o
  CC      arch/x86/mm/pat/set_memory.o
  CC      arch/x86/events/amd/core.o
  CC      arch/x86/pci/mmconfig_64.o
  AR      arch/x86/platform/atom/built-in.a
  AR      sound/i2c/built-in.a
  CC      arch/x86/mm/pat/memtype.o
  AR      sound/isa/ad1848/built-in.a
  CC      arch/x86/kernel/fpu/init.o
  AR      sound/pci/ac97/built-in.a
  AR      sound/drivers/opl4/built-in.a
  AR      sound/drivers/mpu401/built-in.a
  AR      drivers/bus/built-in.a
  CC      ipc/ipc_sysctl.o
  CC      lib/kunit/test.o
  CC      fs/notify/dnotify/dnotify.o
  AR      arch/x86/platform/ce4100/built-in.a
  CC      arch/x86/kernel/cpu/mce/core.o
  CC      arch/x86/lib/cmdline.o
  CC      block/bdev.o
  AR      sound/pci/ali5451/built-in.a
  AR      sound/isa/cs423x/built-in.a
  CC      arch/x86/entry/vdso/vma.o
  AR      sound/drivers/vx/built-in.a
  CC      arch/x86/platform/efi/memmap.o
  AR      sound/pci/asihpi/built-in.a
  AR      sound/isa/es1688/built-in.a
  CC      mm/kasan/common.o
  CC      kernel/sched/core.o
  AR      drivers/phy/allwinner/built-in.a
  AR      drivers/pinctrl/actions/built-in.a
  AR      sound/drivers/pcsp/built-in.a
  CC      arch/x86/crypto/aesni-intel_glue.o
  AR      sound/pci/au88x0/built-in.a
  AR      sound/drivers/built-in.a
  AR      sound/isa/galaxy/built-in.a
  CC      crypto/api.o
  AR      drivers/phy/amlogic/built-in.a
  AR      drivers/pinctrl/bcm/built-in.a
  AR      sound/pci/aw2/built-in.a
  AR      sound/isa/gus/built-in.a
  AR      sound/isa/msnd/built-in.a
  AR      drivers/phy/broadcom/built-in.a
  CC      io_uring/nop.o
  AR      drivers/pinctrl/cirrus/built-in.a
  AR      sound/pci/ctxfi/built-in.a
  AR      sound/isa/opti9xx/built-in.a
  AR      drivers/phy/cadence/built-in.a
  AR      drivers/pinctrl/freescale/built-in.a
  AR      sound/pci/ca0106/built-in.a
  AR      sound/isa/sb/built-in.a
  AR      drivers/phy/freescale/built-in.a
  CC      drivers/pinctrl/intel/pinctrl-baytrail.o
  AR      sound/pci/cs46xx/built-in.a
  AR      sound/isa/wavefront/built-in.a
  AR      drivers/phy/hisilicon/built-in.a
  AR      sound/isa/wss/built-in.a
  AR      sound/pci/cs5535audio/built-in.a
  AR      sound/isa/built-in.a
  AR      drivers/phy/ingenic/built-in.a
  AS      arch/x86/lib/cmpxchg16b_emu.o
  AR      sound/pci/lola/built-in.a
  AR      drivers/phy/intel/built-in.a
  AR      sound/pci/lx6464es/built-in.a
  AR      drivers/phy/lantiq/built-in.a
  AR      sound/synth/emux/built-in.a
  AR      sound/pci/echoaudio/built-in.a
  CC      arch/x86/lib/copy_mc.o
  AR      sound/synth/built-in.a
  AR      drivers/phy/marvell/built-in.a
  AR      sound/pci/emu10k1/built-in.a
  AR      drivers/phy/mediatek/built-in.a
  CC      arch/x86/events/intel/core.o
  AR      sound/pci/hda/built-in.a
  AR      drivers/phy/microchip/built-in.a
  CC [M]  sound/pci/hda/hda_bind.o
  AR      drivers/phy/motorola/built-in.a
  AR      drivers/phy/mscc/built-in.a
  AR      drivers/phy/qualcomm/built-in.a
  AR      drivers/phy/ralink/built-in.a
  AR      drivers/phy/renesas/built-in.a
  AR      drivers/phy/rockchip/built-in.a
  GEN     usr/initramfs_data.cpio
  AR      drivers/phy/samsung/built-in.a
  COPY    usr/initramfs_inc_data
  AS      usr/initramfs_data.o
  AR      drivers/phy/socionext/built-in.a
  AR      drivers/phy/st/built-in.a
  AR      usr/built-in.a
  AR      drivers/phy/sunplus/built-in.a
  CC [M]  sound/pci/hda/hda_codec.o
  AR      drivers/phy/tegra/built-in.a
  AR      drivers/phy/ti/built-in.a
  AR      drivers/phy/xilinx/built-in.a
  CC      drivers/phy/phy-core.o
  AS      arch/x86/lib/copy_mc_64.o
  AR      virt/built-in.a
  AS      arch/x86/lib/copy_page_64.o
  CC      ipc/mqueue.o
  CC      arch/x86/kernel/cpu/mtrr/mtrr.o
  CC      sound/core/seq/seq_lock.o
  AS      arch/x86/lib/copy_user_64.o
  CC      arch/x86/lib/cpu.o
  CC      arch/x86/kernel/cpu/cacheinfo.o
  AS      arch/x86/realmode/rm/header.o
  AS      arch/x86/realmode/rm/trampoline_64.o
  CC      arch/x86/kernel/fpu/bugs.o
  AS      arch/x86/realmode/rm/stack.o
  CC      arch/x86/kernel/cpu/mtrr/if.o
  CC      ipc/namespace.o
  CC      security/keys/key.o
  AS      arch/x86/realmode/rm/reboot.o
  CC      fs/notify/inotify/inotify_fsnotify.o
  CC      security/keys/keyring.o
  AS      arch/x86/realmode/rm/wakeup_asm.o
  AR      arch/x86/platform/geode/built-in.a
  CC      ipc/mq_sysctl.o
  CC      arch/x86/realmode/rm/wakemain.o
  AR      fs/notify/dnotify/built-in.a
  CC      arch/x86/events/zhaoxin/core.o
  CC      arch/x86/events/core.o
  CC      arch/x86/kernel/cpu/scattered.o
  CC      arch/x86/pci/direct.o
  CC      lib/kunit/resource.o
  CC      arch/x86/kernel/fpu/core.o
  CC      arch/x86/kernel/fpu/regset.o
  CC      fs/notify/inotify/inotify_user.o
  CC      arch/x86/realmode/rm/video-mode.o
  CC      arch/x86/platform/efi/quirks.o
  CC      crypto/cipher.o
  CC      arch/x86/entry/vdso/extable.o
  CC      arch/x86/power/hibernate_64.o
  CC      block/partitions/ldm.o
  CC      block/partitions/msdos.o
  CC      mm/kasan/report.o
  AS      arch/x86/realmode/rm/copy.o
  CC      sound/core/seq/seq_clientmgr.o
  AS      arch/x86/realmode/rm/bioscall.o
  CC      arch/x86/lib/delay.o
  CC      arch/x86/realmode/rm/regs.o
  AS      arch/x86/lib/getuser.o
  CC [M]  sound/pci/hda/hda_jack.o
  CC      arch/x86/realmode/rm/video-vga.o
  AS      arch/x86/crypto/aesni-intel_avx-x86_64.o
  CC      block/fops.o
  CC      arch/x86/events/amd/lbr.o
  CC      arch/x86/realmode/rm/video-vesa.o
  CC      arch/x86/events/probe.o
  CC      arch/x86/events/amd/ibs.o
  CC      arch/x86/events/amd/uncore.o
  CC      drivers/pinctrl/intel/pinctrl-intel.o
  CC [M]  drivers/pinctrl/intel/pinctrl-cherryview.o
  CC      security/device_cgroup.o
  CC      init/do_mounts_initrd.o
  CC      arch/x86/realmode/rm/video-bios.o
  GEN     arch/x86/lib/inat-tables.c
  CC      lib/kunit/static_stub.o
  CC      block/bio.o
  AS      arch/x86/crypto/aes_ctrby8_avx-x86_64.o
  CC      arch/x86/entry/vdso/vdso32-setup.o
  CC      arch/x86/lib/insn-eval.o
  CC      crypto/compress.o
  PASYMS  arch/x86/realmode/rm/pasyms.h
  LDS     arch/x86/realmode/rm/realmode.lds
  LD      arch/x86/realmode/rm/realmode.elf
  RELOCS  arch/x86/realmode/rm/realmode.relocs
  OBJCOPY arch/x86/realmode/rm/realmode.bin
  CC      arch/x86/kernel/cpu/mtrr/generic.o
  AS      arch/x86/realmode/rmpiggy.o
  CC      crypto/algapi.o
  AR      arch/x86/realmode/built-in.a
  AS [M]  arch/x86/crypto/ghash-clmulni-intel_asm.o
  CC      crypto/scatterwalk.o
  CC [M]  arch/x86/crypto/ghash-clmulni-intel_glue.o
  AR      drivers/phy/built-in.a
  CC      sound/core/sound.o
  CC      arch/x86/pci/mmconfig-shared.o
  CC [M]  sound/pci/hda/hda_auto_parser.o
  CC      block/elevator.o
  LDS     arch/x86/entry/vdso/vdso.lds
  CC      arch/x86/kernel/fpu/signal.o
  CC      arch/x86/events/utils.o
  CC      arch/x86/events/rapl.o
  AS      arch/x86/entry/vdso/vdso-note.o
  AR      arch/x86/events/zhaoxin/built-in.a
  CC      arch/x86/kernel/cpu/mtrr/cleanup.o
  CC      arch/x86/entry/vdso/vclock_gettime.o
  AS      arch/x86/power/hibernate_asm_64.o
  CC      arch/x86/pci/fixup.o
  CC      arch/x86/power/hibernate.o
  CC      arch/x86/lib/insn.o
  CC      arch/x86/platform/efi/efi.o
  CC      arch/x86/mm/pat/memtype_interval.o
  CC      mm/kasan/init.o
  AS      arch/x86/lib/memcpy_64.o
  CC      fs/nfs_common/grace.o
  CC      arch/x86/kernel/cpu/mce/severity.o
  CC      lib/kunit/string-stream.o
  CC      crypto/proc.o
  AR      fs/notify/inotify/built-in.a
  CC      fs/notify/fanotify/fanotify.o
  CC      init/initramfs.o
  CC      lib/kunit/assert.o
  CC      security/keys/keyctl.o
  AS [M]  arch/x86/crypto/crc32-pclmul_asm.o
  CC [M]  arch/x86/crypto/crc32-pclmul_glue.o
  CC      crypto/aead.o
  AS [M]  arch/x86/crypto/crct10dif-pcl-asm_64.o
  AS      arch/x86/lib/memmove_64.o
  CC      block/partitions/efi.o
  CC      crypto/geniv.o
  CC      sound/core/init.o
  CC      lib/kunit/try-catch.o
  AS      arch/x86/lib/memset_64.o
  CC      arch/x86/entry/vdso/vgetcpu.o
  CC      arch/x86/lib/misc.o
  CC      lib/kunit/executor.o
  CC      arch/x86/kernel/cpu/mce/genpool.o
  CC      arch/x86/kernel/fpu/xstate.o
  CC      arch/x86/lib/pc-conf-reg.o
  HOSTCC  arch/x86/entry/vdso/vdso2c
  AS      arch/x86/lib/putuser.o
  LDS     arch/x86/entry/vdso/vdso32/vdso32.lds
  AS      arch/x86/lib/retpoline.o
  CC      arch/x86/events/msr.o
  CC      io_uring/fs.o
  CC      fs/notify/fanotify/fanotify_user.o
  CC      block/blk-core.o
  CC      mm/mempool.o
  AR      arch/x86/events/amd/built-in.a
  CC      mm/kasan/generic.o
  AR      arch/x86/mm/pat/built-in.a
  AR      arch/x86/power/built-in.a
  CC      arch/x86/mm/init.o
  CC      sound/core/seq/seq_memory.o
  CC      mm/kasan/report_generic.o
  AR      ipc/built-in.a
  CC      arch/x86/kernel/cpu/mce/intel.o
  CC [M]  sound/pci/hda/hda_sysfs.o
  CC      arch/x86/lib/usercopy.o
  CC      arch/x86/kernel/cpu/mce/threshold.o
  AR      sound/pci/ice1712/built-in.a
  CC      arch/x86/lib/usercopy_64.o
  CC      crypto/skcipher.o
  AS      arch/x86/entry/vdso/vdso32/note.o
  CC [M]  sound/pci/hda/hda_controller.o
  CC      arch/x86/pci/acpi.o
  CC [M]  sound/pci/hda/hda_proc.o
  CC [M]  arch/x86/crypto/crct10dif-pclmul_glue.o
  AR      fs/nfs_common/built-in.a
  CC [M]  drivers/pinctrl/intel/pinctrl-broxton.o
  AR      sound/pci/korg1212/built-in.a
  LD [M]  arch/x86/crypto/ghash-clmulni-intel.o
  AR      sound/pci/mixart/built-in.a
  CC      crypto/seqiv.o
  CC      lib/kunit/hooks.o
  LD [M]  arch/x86/crypto/crc32-pclmul.o
  CC      drivers/gpio/gpiolib.o
  AS      arch/x86/entry/vdso/vdso32/system_call.o
  AR      arch/x86/kernel/cpu/mtrr/built-in.a
  CC      drivers/gpio/gpiolib-devres.o
  CC      drivers/gpio/gpiolib-legacy.o
  CC      drivers/gpio/gpiolib-cdev.o
  AS      arch/x86/entry/vdso/vdso32/sigreturn.o
  CC      drivers/gpio/gpiolib-sysfs.o
  CC      arch/x86/pci/legacy.o
  CC      arch/x86/entry/vdso/vdso32/vclock_gettime.o
  CC      arch/x86/entry/vdso/vdso32/vgetcpu.o
  CC      kernel/locking/mutex.o
  CC      crypto/echainiv.o
  CC      arch/x86/pci/irq.o
  CC      arch/x86/platform/efi/efi_64.o
  AR      lib/kunit/built-in.a
  CC      lib/math/div64.o
  CC      block/blk-sysfs.o
  CC      init/calibrate.o
  CC      lib/math/gcd.o
  CC      lib/math/lcm.o
  CC      arch/x86/kernel/cpu/mce/apei.o
  CC      init/init_task.o
  AR      arch/x86/crypto/built-in.a
  LD [M]  arch/x86/crypto/crct10dif-pclmul.o
  CC [M]  sound/pci/hda/hda_hwdep.o
  CC      sound/core/seq/seq_queue.o
  AR      drivers/pinctrl/mediatek/built-in.a
  CC      lib/math/int_pow.o
  CC      arch/x86/events/intel/bts.o
  CC [M]  sound/pci/hda/hda_generic.o
  AR      block/partitions/built-in.a
  CC      block/blk-flush.o
  CC      lib/math/int_sqrt.o
  CC      arch/x86/lib/msr-smp.o
  CC      crypto/ahash.o
  CC      block/blk-settings.o
  CC [M]  drivers/pinctrl/intel/pinctrl-geminilake.o
  CC      kernel/power/qos.o
  CC      kernel/power/main.o
  CC      sound/core/memory.o
  CC      lib/math/reciprocal_div.o
  CC      sound/core/control.o
  CC      arch/x86/lib/cache-smp.o
  CC      kernel/power/console.o
  CC      crypto/shash.o
  CC      lib/math/rational.o
  AR      sound/pci/nm256/built-in.a
  CC      kernel/power/process.o
  CC      kernel/power/suspend.o
  CC      sound/core/seq/seq_fifo.o
  CC      kernel/power/hibernate.o
  CC      security/keys/permission.o
  CC      arch/x86/pci/common.o
  CC      sound/core/seq/seq_prioq.o
  CC      mm/kasan/shadow.o
  CC      security/keys/process_keys.o
  CC      net/core/request_sock.o
  VDSO    arch/x86/entry/vdso/vdso64.so.dbg
  VDSO    arch/x86/entry/vdso/vdso32.so.dbg
  OBJCOPY arch/x86/entry/vdso/vdso64.so
  CC      arch/x86/lib/msr.o
  OBJCOPY arch/x86/entry/vdso/vdso32.so
  VDSO2C  arch/x86/entry/vdso/vdso-image-64.c
  VDSO2C  arch/x86/entry/vdso/vdso-image-32.c
  AR      arch/x86/net/built-in.a
  CC      arch/x86/entry/vdso/vdso-image-64.o
  CC      fs/notify/fsnotify.o
  CC      arch/x86/mm/init_64.o
  CC      fs/notify/notification.o
  AR      arch/x86/kernel/fpu/built-in.a
  CC      mm/oom_kill.o
  CC      net/llc/llc_core.o
  CC      net/llc/llc_input.o
  CC      arch/x86/mm/fault.o
  CC      net/core/skbuff.o
  AR      arch/x86/kernel/cpu/mce/built-in.a
  CC [M]  lib/math/prime_numbers.o
  CC      arch/x86/kernel/cpu/topology.o
  CC [M]  drivers/pinctrl/intel/pinctrl-sunrisepoint.o
  AS      arch/x86/lib/msr-reg.o
  CC      init/version.o
  AS      arch/x86/platform/efi/efi_stub_64.o
  CC      arch/x86/entry/vdso/vdso-image-32.o
  CC [M]  sound/pci/hda/patch_realtek.o
  AR      arch/x86/platform/efi/built-in.a
  AR      arch/x86/platform/iris/built-in.a
  CC      arch/x86/platform/intel/iosf_mbi.o
  AR      arch/x86/platform/intel-mid/built-in.a
  CC      drivers/gpio/gpiolib-acpi.o
  AR      fs/notify/fanotify/built-in.a
  CC      kernel/sched/fair.o
  CC      fs/notify/group.o
  CC      net/llc/llc_output.o
  AR      drivers/pinctrl/intel/built-in.a
  CC      block/blk-ioc.o
  CC      kernel/power/snapshot.o
  CC      block/blk-map.o
  AR      arch/x86/entry/vdso/built-in.a
  CC      arch/x86/events/intel/ds.o
  AR      init/built-in.a
  CC      arch/x86/entry/vsyscall/vsyscall_64.o
  CC      mm/kasan/quarantine.o
  AR      drivers/pwm/built-in.a
  CC      security/keys/request_key.o
  CC      arch/x86/kernel/acpi/boot.o
  CC      drivers/pci/msi/pcidev_msi.o
  CC      sound/core/seq/seq_timer.o
  CC      drivers/pci/msi/api.o
  CC      arch/x86/events/intel/knc.o
  CC      arch/x86/kernel/cpu/common.o
  CC      crypto/akcipher.o
  CC      crypto/kpp.o
  CC      crypto/acompress.o
  CC      crypto/scompress.o
  CC      arch/x86/pci/early.o
  CC [M]  sound/pci/hda/patch_analog.o
  AR      drivers/pinctrl/mvebu/built-in.a
  AR      drivers/pinctrl/nomadik/built-in.a
  AR      drivers/pinctrl/nuvoton/built-in.a
  AR      drivers/pinctrl/sprd/built-in.a
  AR      drivers/pinctrl/sunplus/built-in.a
  CC      arch/x86/lib/msr-reg-export.o
  AR      lib/math/built-in.a
  AR      drivers/pinctrl/ti/built-in.a
  CC      drivers/pinctrl/core.o
  CC      lib/crypto/memneq.o
  CC      lib/zlib_inflate/inffast.o
  CC      kernel/sched/build_policy.o
  AS      arch/x86/lib/hweight.o
  CC [M]  sound/pci/hda/patch_hdmi.o
  CC      net/ethernet/eth.o
  CC      arch/x86/lib/iomem.o
  CC      drivers/gpio/gpiolib-swnode.o
  CC      lib/zlib_deflate/deflate.o
  CC      kernel/power/swap.o
  CC      lib/zlib_deflate/deftree.o
  AR      arch/x86/platform/intel/built-in.a
  CC      lib/zlib_deflate/deflate_syms.o
  AR      arch/x86/platform/intel-quark/built-in.a
  AR      arch/x86/platform/olpc/built-in.a
  CC      lib/zlib_inflate/inflate.o
  AR      arch/x86/platform/scx200/built-in.a
  AR      arch/x86/platform/ts5500/built-in.a
  AR      arch/x86/platform/uv/built-in.a
  AR      arch/x86/platform/built-in.a
  CC      fs/notify/mark.o
  CC      kernel/sched/build_utility.o
  CC      crypto/algboss.o
  CC      sound/core/misc.o
  AR      net/llc/built-in.a
  CC [M]  sound/pci/hda/hda_eld.o
  CC      lib/crypto/utils.o
  AR      mm/kasan/built-in.a
  CC      net/core/datagram.o
  CC      drivers/pci/msi/msi.o
  CC      sound/core/seq/seq_system.o
  CC      arch/x86/pci/bus_numa.o
  CC      kernel/locking/semaphore.o
  AS      arch/x86/entry/vsyscall/vsyscall_emu_64.o
  CC      arch/x86/events/intel/lbr.o
  AS      arch/x86/lib/iomap_copy_64.o
  CC      sound/core/device.o
  CC      net/core/stream.o
  AR      arch/x86/entry/vsyscall/built-in.a
  CC      arch/x86/lib/inat.o
  CC      drivers/pci/msi/irqdomain.o
  AS      arch/x86/entry/entry.o
  AS      arch/x86/entry/entry_64.o
  CC      security/keys/request_key_auth.o
  CC      security/keys/user_defined.o
  CC      sound/core/seq/seq_ports.o
  CC      fs/notify/fdinfo.o
  CC      security/keys/compat.o
  CC      io_uring/splice.o
  CC      io_uring/sync.o
  CC      arch/x86/entry/syscall_64.o
  CC      block/blk-merge.o
  CC      arch/x86/mm/ioremap.o
  CC      block/blk-timeout.o
  AR      arch/x86/lib/built-in.a
  CC      arch/x86/kernel/apic/apic.o
  AR      arch/x86/lib/lib.a
  CC      arch/x86/kernel/kprobes/core.o
  CC      arch/x86/kernel/kprobes/opt.o
  CC      arch/x86/kernel/acpi/sleep.o
  CC      lib/crypto/chacha.o
  CC      kernel/locking/rwsem.o
  CC      lib/zlib_inflate/infutil.o
  CC      lib/crypto/aes.o
  CC      mm/fadvise.o
  CC      sound/core/seq/seq_info.o
  CC      lib/crypto/gf128mul.o
  CC      sound/core/info.o
  AR      lib/zlib_deflate/built-in.a
  CC      kernel/locking/percpu-rwsem.o
  CC      arch/x86/pci/amd_bus.o
  CC      crypto/testmgr.o
  AR      drivers/gpio/built-in.a
  CC      crypto/cmac.o
  CC      lib/crypto/blake2s.o
  CC      security/keys/proc.o
  CC      kernel/locking/irqflag-debug.o
  CC      mm/maccess.o
  CC      mm/page-writeback.o
  CC      sound/core/isadma.o
  CC      arch/x86/entry/common.o
  CC      arch/x86/kernel/cpu/rdrand.o
  AR      fs/notify/built-in.a
  CC      drivers/pinctrl/pinctrl-utils.o
  CC      kernel/locking/mutex-debug.o
  CC      sound/core/vmaster.o
  CC      arch/x86/kernel/cpu/match.o
  CC      fs/iomap/trace.o
  CC      sound/core/ctljack.o
  CC      lib/zlib_inflate/inftrees.o
  AR      net/ethernet/built-in.a
  CC      mm/folio-compat.o
  CC      security/keys/sysctl.o
  CC      net/802/p8022.o
  CC      io_uring/advise.o
  AR      drivers/pci/msi/built-in.a
  AR      fs/quota/built-in.a
  CC      drivers/pci/pcie/portdrv.o
  CC      io_uring/filetable.o
  CC      kernel/power/user.o
  CC      drivers/pinctrl/pinmux.o
  CC      arch/x86/mm/extable.o
  CC      lib/zlib_inflate/inflate_syms.o
  AS      arch/x86/kernel/acpi/wakeup_64.o
  AR      sound/core/seq/built-in.a
  CC      kernel/printk/printk.o
  CC      arch/x86/kernel/acpi/apei.o
  CC      kernel/irq/irqdesc.o
  CC      net/802/psnap.o
  CC      kernel/printk/printk_safe.o
  CC      lib/crypto/blake2s-generic.o
  CC      arch/x86/kernel/kprobes/ftrace.o
  CC      sound/core/jack.o
  CC      arch/x86/kernel/cpu/bugs.o
  CC      arch/x86/kernel/apic/apic_common.o
  CC      lib/crypto/blake2s-selftest.o
  CC      kernel/printk/printk_ringbuffer.o
  CC      arch/x86/events/intel/p4.o
  CC      arch/x86/kernel/cpu/aperfmperf.o
  CC      net/core/scm.o
  CC      arch/x86/kernel/cpu/cpuid-deps.o
  CC      io_uring/openclose.o
  CC      arch/x86/kernel/acpi/cppc.o
  CC      crypto/hmac.o
  AR      arch/x86/pci/built-in.a
  CC      arch/x86/mm/mmap.o
  AR      sound/pci/oxygen/built-in.a
  AR      lib/zlib_inflate/built-in.a
  CC      arch/x86/kernel/acpi/cstate.o
  CC      arch/x86/events/intel/p6.o
  AR      security/keys/built-in.a
  CC      kernel/printk/sysctl.o
  CC      io_uring/uring_cmd.o
  AR      security/built-in.a
  AS      arch/x86/entry/thunk_64.o
  CC      sound/core/timer.o
  CC      arch/x86/kernel/apic/apic_noop.o
  AS      arch/x86/entry/entry_64_compat.o
  CC      arch/x86/entry/syscall_32.o
  CC [M]  sound/pci/hda/hda_intel.o
  CC      mm/readahead.o
  CC      io_uring/epoll.o
  CC      block/blk-lib.o
  CC      arch/x86/kernel/apic/ipi.o
  CC      arch/x86/kernel/apic/vector.o
  CC      lib/lzo/lzo1x_compress.o
  CC      lib/lzo/lzo1x_decompress_safe.o
  CC      lib/lz4/lz4_compress.o
  CC      lib/zstd/zstd_compress_module.o
  CC      kernel/locking/lockdep.o
  CC      kernel/power/poweroff.o
  CC      drivers/pinctrl/pinconf.o
  CC      drivers/pinctrl/pinconf-generic.o
  CC      fs/iomap/iter.o
  CC      drivers/pci/pcie/rcec.o
  CC      lib/xz/xz_dec_syms.o
  AR      arch/x86/kernel/kprobes/built-in.a
  CC      lib/raid6/algos.o
  CC      drivers/video/console/dummycon.o
  CC      lib/zstd/compress/fse_compress.o
  CC      lib/raid6/recov.o
  CC      drivers/video/console/vgacon.o
  CC      kernel/irq/handle.o
  HOSTCC  lib/raid6/mktables
  CC      lib/crypto/des.o
  CC      net/802/stp.o
  CC      net/sched/sch_generic.o
  AR      kernel/power/built-in.a
  CC      net/netlink/af_netlink.o
  AR      arch/x86/kernel/acpi/built-in.a
  AR      net/bpf/built-in.a
  CC      lib/xz/xz_dec_stream.o
  CC      arch/x86/mm/pgtable.o
  CC      drivers/pci/pcie/aspm.o
  CC      arch/x86/mm/physaddr.o
  CC      lib/xz/xz_dec_lzma2.o
  CC      net/netlink/genetlink.o
  CC      lib/crypto/sha1.o
  LD [M]  sound/pci/hda/snd-hda-codec.o
  AR      sound/pci/pcxhr/built-in.a
  CC      net/core/gen_stats.o
  AR      arch/x86/entry/built-in.a
  CC      kernel/irq/manage.o
  CC      arch/x86/kernel/apic/hw_nmi.o
  CC      lib/fonts/fonts.o
  CC      lib/fonts/font_8x8.o
  CC      arch/x86/events/intel/pt.o
  CC      arch/x86/events/intel/uncore.o
  AR      lib/lzo/built-in.a
  CC      arch/x86/kernel/apic/io_apic.o
  CC      lib/zstd/compress/hist.o
  CC      lib/xz/xz_dec_bcj.o
  CC      kernel/rcu/update.o
  CC      lib/zstd/compress/huf_compress.o
  CC      kernel/rcu/sync.o
  CC      block/blk-mq.o
  AR      drivers/pinctrl/built-in.a
  CC      kernel/irq/spurious.o
  CC      kernel/rcu/srcutree.o
  CC      lib/zstd/compress/zstd_compress.o
  CC      kernel/rcu/tree.o
  CC      block/blk-mq-tag.o
  CC      net/core/gen_estimator.o
  UNROLL  lib/raid6/int1.c
  UNROLL  lib/raid6/int2.c
  UNROLL  lib/raid6/int4.c
  UNROLL  lib/raid6/int8.c
  UNROLL  lib/raid6/int16.c
  CC      fs/iomap/buffered-io.o
  CC      lib/fonts/font_8x16.o
  CC      io_uring/statx.o
  UNROLL  lib/raid6/int32.c
  CC      lib/raid6/recov_ssse3.o
  CC      drivers/pci/pcie/aer.o
  CC      arch/x86/mm/tlb.o
  CC      arch/x86/kernel/apic/msi.o
  CC [M]  arch/x86/kvm/../../../virt/kvm/kvm_main.o
  CC      arch/x86/kernel/cpu/umwait.o
  CC      block/blk-stat.o
  CC [M]  arch/x86/kvm/../../../virt/kvm/eventfd.o
  AR      net/802/built-in.a
  CC      drivers/pci/pcie/err.o
  CC      drivers/idle/intel_idle.o
  CC      arch/x86/mm/cpu_entry_area.o
  AR      lib/xz/built-in.a
  CC      kernel/locking/lockdep_proc.o
  AR      lib/fonts/built-in.a
  CC      lib/argv_split.o
  CC      mm/swap.o
  AR      drivers/video/console/built-in.a
  CC      drivers/video/logo/logo.o
  HOSTCC  drivers/video/logo/pnmtologo
  CC      lib/crypto/sha256.o
  CC      kernel/irq/resend.o
  CC      crypto/vmac.o
  CC      lib/raid6/recov_avx2.o
  AR      kernel/printk/built-in.a
  AR      drivers/char/ipmi/built-in.a
  CC      kernel/rcu/rcu_segcblist.o
  CC      sound/core/hrtimer.o
  CC      drivers/acpi/acpica/dsargs.o
  CC      arch/x86/kernel/apic/x2apic_phys.o
  CC      sound/core/seq_device.o
  CC      drivers/acpi/acpica/dscontrol.o
  CC [M]  arch/x86/kvm/../../../virt/kvm/binary_stats.o
  CC      io_uring/net.o
  LD [M]  sound/pci/hda/snd-hda-codec-realtek.o
  LD [M]  sound/pci/hda/snd-hda-codec-analog.o
  LOGO    drivers/video/logo/logo_linux_clut224.c
  CC      arch/x86/kernel/cpu/proc.o
  LD [M]  sound/pci/hda/snd-hda-codec-hdmi.o
  CC      drivers/video/logo/logo_linux_clut224.o
  LD [M]  sound/pci/hda/snd-hda-intel.o
  CC      lib/lz4/lz4hc_compress.o
  MKCAP   arch/x86/kernel/cpu/capflags.c
  LD [M]  sound/pci/hda/snd-hda-codec-generic.o
  AR      drivers/video/logo/built-in.a
  CC      drivers/video/backlight/backlight.o
  AR      sound/pci/riptide/built-in.a
  AR      sound/pci/rme9652/built-in.a
  CC      io_uring/msg_ring.o
  AR      sound/pci/trident/built-in.a
  CC      kernel/irq/chip.o
  CC      arch/x86/mm/maccess.o
  AR      sound/pci/ymfpci/built-in.a
  CC      net/core/net_namespace.o
  AR      sound/pci/vx222/built-in.a
  AR      sound/pci/built-in.a
  CC      lib/raid6/mmx.o
  CC      drivers/pci/pcie/aer_inject.o
  CC      arch/x86/mm/pgprot.o
  CC      drivers/pci/hotplug/pci_hotplug_core.o
  CC [M]  lib/crypto/arc4.o
  CC      kernel/locking/spinlock.o
  CC      arch/x86/kernel/apic/x2apic_cluster.o
  CC      arch/x86/events/intel/uncore_nhmex.o
  CC      arch/x86/mm/hugetlbpage.o
  CC      fs/iomap/direct-io.o
  CC      arch/x86/mm/kasan_init_64.o
  CC      drivers/acpi/acpica/dsdebug.o
  CC      drivers/acpi/acpica/dsfield.o
  CC      drivers/pci/pcie/pme.o
  CC      net/netlink/policy.o
  CC      drivers/video/fbdev/core/fb_notify.o
  CC      lib/raid6/sse1.o
  AR      drivers/video/fbdev/omap/built-in.a
  CC [M]  sound/core/control_led.o
  CC [M]  drivers/video/fbdev/uvesafb.o
  CC      lib/raid6/sse2.o
  CC [M]  arch/x86/kvm/../../../virt/kvm/vfio.o
  AR      drivers/video/fbdev/omap2/omapfb/dss/built-in.a
  CC [M]  arch/x86/kvm/../../../virt/kvm/coalesced_mmio.o
  AR      drivers/video/fbdev/omap2/omapfb/displays/built-in.a
  AR      drivers/video/fbdev/omap2/omapfb/built-in.a
  AR      drivers/video/fbdev/omap2/built-in.a
  CC      kernel/locking/osq_lock.o
  CC      arch/x86/events/intel/uncore_snb.o
  CC      crypto/xcbc.o
  CC      net/netlink/diag.o
  AR      lib/crypto/built-in.a
  AR      drivers/idle/built-in.a
  CC [M]  arch/x86/kvm/../../../virt/kvm/async_pf.o
  LD [M]  lib/crypto/libarc4.o
  CC      drivers/pci/hotplug/acpi_pcihp.o
  AR      sound/usb/misc/built-in.a
  CC      lib/bug.o
  AR      sound/usb/usx2y/built-in.a
  CC      drivers/pnp/pnpacpi/core.o
  AR      drivers/amba/built-in.a
  AR      sound/firewire/built-in.a
  AR      sound/usb/caiaq/built-in.a
  AR      sound/usb/6fire/built-in.a
  CC      net/sched/sch_mq.o
  AR      sound/usb/hiface/built-in.a
  CC [M]  arch/x86/kvm/../../../virt/kvm/irqchip.o
  CC      arch/x86/events/intel/uncore_snbep.o
  AR      sound/usb/bcd2000/built-in.a
  AR      drivers/clk/actions/built-in.a
  AR      sound/usb/built-in.a
  AR      drivers/clk/analogbits/built-in.a
  CC      arch/x86/events/intel/uncore_discovery.o
  AR      drivers/clk/bcm/built-in.a
  AR      drivers/clk/imgtec/built-in.a
  CC      kernel/locking/qspinlock.o
  AR      drivers/clk/imx/built-in.a
  AR      drivers/clk/ingenic/built-in.a
  AR      drivers/clk/mediatek/built-in.a
  AR      drivers/clk/microchip/built-in.a
  AR      drivers/clk/mstar/built-in.a
  CC      drivers/pnp/core.o
  AR      drivers/clk/mvebu/built-in.a
  AR      drivers/clk/ralink/built-in.a
  AR      drivers/clk/renesas/built-in.a
  AR      drivers/clk/socfpga/built-in.a
  AR      drivers/clk/sprd/built-in.a
  AR      drivers/clk/sunxi-ng/built-in.a
  CC      drivers/acpi/acpica/dsinit.o
  AR      drivers/clk/ti/built-in.a
  AR      drivers/clk/versatile/built-in.a
  CC      arch/x86/kernel/apic/apic_flat_64.o
  AR      drivers/video/backlight/built-in.a
  CC      drivers/clk/x86/clk-lpss-atom.o
  CC      net/sched/sch_frag.o
  CC      drivers/clk/x86/clk-pmc-atom.o
  CC      arch/x86/kernel/apic/probe_64.o
  CC      net/sched/sch_api.o
  CC      arch/x86/mm/pkeys.o
  CC      drivers/pnp/card.o
  CC      lib/buildid.o
  CC      drivers/dma/dw/core.o
  CC [M]  drivers/video/fbdev/core/fbmem.o
  CC      crypto/crypto_null.o
  CC      kernel/irq/dummychip.o
  CC      crypto/md5.o
  CC      drivers/pci/pcie/dpc.o
  CC      lib/lz4/lz4_decompress.o
  CC      lib/raid6/avx2.o
  CC      crypto/sha1_generic.o
  CC [M]  sound/core/hwdep.o
  CC [M]  sound/core/pcm.o
  CC      drivers/pnp/pnpacpi/rsparser.o
  CC      fs/kernfs/mount.o
  CC      drivers/pci/hotplug/pciehp_core.o
  CC      drivers/pci/hotplug/pciehp_ctrl.o
  CC      fs/iomap/fiemap.o
  CC [M]  arch/x86/kvm/../../../virt/kvm/dirty_ring.o
  CC      drivers/acpi/acpica/dsmethod.o
  CC      fs/kernfs/inode.o
  CC      fs/proc/task_mmu.o
  CC [M]  drivers/video/fbdev/core/fbmon.o
  CC      lib/cmdline.o
  AR      arch/x86/kernel/apic/built-in.a
  CC      fs/iomap/seek.o
  CC      drivers/dma/dw/dw.o
  CC      mm/truncate.o
  AR      drivers/clk/x86/built-in.a
  CC      kernel/locking/rtmutex_api.o
  AR      drivers/clk/xilinx/built-in.a
  CC      drivers/clk/clk-devres.o
  CC      lib/cpumask.o
  AR      net/netlink/built-in.a
  CC      drivers/acpi/apei/apei-base.o
  CC      net/core/secure_seq.o
  AR      kernel/livepatch/built-in.a
  CC      drivers/acpi/apei/hest.o
  AR      kernel/sched/built-in.a
  AR      drivers/soc/apple/built-in.a
  CC      drivers/acpi/apei/erst.o
  CC      drivers/acpi/apei/bert.o
  AR      drivers/soc/aspeed/built-in.a
  CC      arch/x86/mm/pti.o
  AR      drivers/soc/bcm/bcm63xx/built-in.a
  CC      crypto/sha256_generic.o
  AR      drivers/soc/bcm/built-in.a
  CC      io_uring/timeout.o
  CC      kernel/irq/devres.o
  AR      drivers/soc/fsl/built-in.a
  CC      lib/ctype.o
  CC      lib/dec_and_lock.o
  CC      crypto/sha512_generic.o
  AR      drivers/soc/fujitsu/built-in.a
  AR      drivers/soc/imx/built-in.a
  AR      drivers/soc/ixp4xx/built-in.a
  AR      drivers/soc/loongson/built-in.a
  CC      lib/decompress.o
  AR      drivers/soc/mediatek/built-in.a
  CC      lib/decompress_bunzip2.o
  AR      drivers/soc/microchip/built-in.a
  AR      drivers/soc/nuvoton/built-in.a
  CC      kernel/dma/mapping.o
  AR      drivers/soc/pxa/built-in.a
  AR      drivers/soc/amlogic/built-in.a
  CC      fs/iomap/swapfile.o
  AR      drivers/soc/qcom/built-in.a
  AR      drivers/soc/renesas/built-in.a
  CC      drivers/acpi/acpica/dsmthdat.o
  AR      drivers/soc/rockchip/built-in.a
  AR      drivers/soc/sifive/built-in.a
  AR      drivers/soc/sunxi/built-in.a
  CC      lib/raid6/avx512.o
  AR      drivers/soc/ti/built-in.a
  AR      drivers/pci/pcie/built-in.a
  CC      kernel/dma/direct.o
  AR      drivers/soc/xilinx/built-in.a
  CC      lib/decompress_inflate.o
  AR      drivers/soc/built-in.a
  CC      lib/raid6/recov_avx512.o
  CC      kernel/entry/common.o
  CC      drivers/clk/clk-bulk.o
  CC      kernel/module/main.o
  CC      kernel/time/time.o
  CC      kernel/module/strict_rwx.o
  CC      kernel/entry/syscall_user_dispatch.o
  CC      fs/kernfs/dir.o
  CC      drivers/pci/hotplug/pciehp_pci.o
  CC      fs/kernfs/file.o
  CC [M]  sound/core/pcm_native.o
  CC      lib/decompress_unlz4.o
  CC      drivers/pci/hotplug/pciehp_hpc.o
  CC      drivers/video/aperture.o
  CC      lib/zstd/compress/zstd_compress_literals.o
  CC      kernel/irq/autoprobe.o
  AR      drivers/pnp/pnpacpi/built-in.a
  CC      drivers/pnp/driver.o
  CC      drivers/acpi/apei/ghes.o
  CC      fs/kernfs/symlink.o
  CC      kernel/entry/kvm.o
  CC [M]  drivers/video/fbdev/simplefb.o
  AR      lib/lz4/built-in.a
  CC      lib/decompress_unlzma.o
  CC      lib/zstd/compress/zstd_compress_sequences.o
  CC      lib/zstd/compress/zstd_compress_superblock.o
  CC      drivers/acpi/acpica/dsobject.o
  CC      drivers/dma/dw/idma32.o
  CC      kernel/irq/irqdomain.o
  AR      arch/x86/mm/built-in.a
  CC      drivers/pci/hotplug/acpiphp_core.o
  CC      arch/x86/events/intel/cstate.o
  CC      crypto/blake2b_generic.o
  CC      kernel/time/timer.o
  CC      drivers/clk/clkdev.o
  AR      fs/iomap/built-in.a
  CC      kernel/time/hrtimer.o
  CC      fs/sysfs/file.o
  CC      mm/vmscan.o
  CC      lib/decompress_unlzo.o
  CC      kernel/module/tree_lookup.o
  TABLE   lib/raid6/tables.c
  CC      fs/configfs/inode.o
  CC      kernel/locking/spinlock_debug.o
  CC      net/sched/sch_blackhole.o
  CC      lib/raid6/int1.o
  CC      lib/raid6/int2.o
  CC      lib/raid6/int4.o
  CC [M]  drivers/video/fbdev/core/fbcmap.o
  CC      net/core/flow_dissector.o
  CC      lib/zstd/compress/zstd_double_fast.o
  CC      block/blk-mq-sysfs.o
  CC      crypto/ecb.o
  CC      io_uring/sqpoll.o
  CC      kernel/module/debug_kmemleak.o
  CC      drivers/pnp/resource.o
  CC [M]  sound/core/pcm_lib.o
  CC      block/blk-mq-cpumap.o
  CC      kernel/dma/ops_helpers.o
  CC      drivers/acpi/acpica/dsopcode.o
  CC      drivers/dma/hsu/hsu.o
  CC      drivers/video/cmdline.o
  AR      drivers/dma/idxd/built-in.a
  CC      kernel/time/timekeeping.o
  CC      lib/raid6/int8.o
  CC      drivers/dma/dw/acpi.o
  AR      kernel/entry/built-in.a
  CC      drivers/dma/dw/pci.o
  CC      kernel/time/ntp.o
  CC      kernel/futex/core.o
  CC      drivers/clk/clk.o
  CC      kernel/futex/syscalls.o
  CC      kernel/locking/qrwlock.o
  CC      fs/proc/inode.o
  CC      kernel/futex/pi.o
  CC      net/sched/sch_fifo.o
  CC      drivers/acpi/acpica/dspkginit.o
  CC      lib/decompress_unxz.o
  CC      drivers/pci/hotplug/acpiphp_glue.o
  AR      arch/x86/events/intel/built-in.a
  CC      lib/raid6/int16.o
  AR      arch/x86/events/built-in.a
  AR      fs/kernfs/built-in.a
  CC      kernel/module/kallsyms.o
  CC      drivers/clk/clk-divider.o
  CC      lib/raid6/int32.o
  CC      drivers/clk/clk-fixed-factor.o
  CC      drivers/video/nomodeset.o
  CC      fs/sysfs/dir.o
  CC      crypto/cbc.o
  CC      fs/sysfs/symlink.o
  CC      fs/configfs/file.o
  CC      fs/configfs/dir.o
  AR      drivers/acpi/apei/built-in.a
  CC      fs/devpts/inode.o
  CC      kernel/dma/dummy.o
  CC      kernel/dma/contiguous.o
  CC      arch/x86/kernel/cpu/powerflags.o
  CC      kernel/module/procfs.o
  CC      block/blk-mq-sched.o
  CC [M]  drivers/video/fbdev/core/fbsysfs.o
  CC      kernel/irq/proc.o
  AR      kernel/locking/built-in.a
  AR      sound/sparc/built-in.a
  CC      arch/x86/kernel/cpu/feat_ctl.o
  AR      sound/spi/built-in.a
  CC [M]  drivers/video/fbdev/core/modedb.o
  AR      drivers/acpi/pmic/built-in.a
  CC      drivers/acpi/acpica/dsutils.o
  CC      kernel/futex/requeue.o
  CC      kernel/irq/migration.o
  CC      net/ethtool/ioctl.o
  AR      drivers/dma/dw/built-in.a
  AR      net/ipv4/netfilter/built-in.a
  CC [M]  net/netfilter/ipvs/ip_vs_conn.o
  CC [M]  net/ipv4/netfilter/nf_defrag_ipv4.o
  AR      kernel/rcu/built-in.a
  CC [M]  net/netfilter/ipvs/ip_vs_core.o
  CC      net/xfrm/xfrm_policy.o
  AR      drivers/dma/hsu/built-in.a
  CC      io_uring/fdinfo.o
  CC      io_uring/tctx.o
  AR      drivers/dma/mediatek/built-in.a
  CC      net/unix/af_unix.o
  AR      drivers/dma/qcom/built-in.a
  CC      lib/raid6/tables.o
  CC      drivers/pnp/manager.o
  AR      drivers/dma/ti/built-in.a
  CC      crypto/pcbc.o
  CC      fs/proc/root.o
  CC      crypto/cts.o
  AR      drivers/dma/xilinx/built-in.a
  CC      mm/shmem.o
  CC [M]  drivers/dma/ioat/init.o
  CC      fs/sysfs/mount.o
  CC      kernel/dma/swiotlb.o
  CC      lib/decompress_unzstd.o
  CC      crypto/lrw.o
  CC [M]  drivers/dma/ioat/dma.o
  CC      fs/configfs/symlink.o
  CC [M]  arch/x86/kvm/../../../virt/kvm/pfncache.o
  CC [M]  arch/x86/kvm/x86.o
  CC      crypto/xts.o
  CC      crypto/ctr.o
  AR      net/sched/built-in.a
  CC      arch/x86/kernel/cpu/intel.o
  CC      fs/sysfs/group.o
  CC      crypto/gcm.o
  CC      kernel/futex/waitwake.o
  CC      net/ipv4/route.o
  AR      fs/devpts/built-in.a
  CC      drivers/acpi/acpica/dswexec.o
  CC      fs/ext4/balloc.o
  CC      fs/jbd2/transaction.o
  AR      drivers/pci/hotplug/built-in.a
  CC [M]  sound/core/pcm_misc.o
  CC      kernel/module/sysfs.o
  CC      kernel/irq/cpuhotplug.o
  AR      drivers/pci/controller/dwc/built-in.a
  AR      drivers/pci/controller/mobiveil/built-in.a
  CC      drivers/pci/controller/vmd.o
  CC      drivers/pnp/support.o
  CC      fs/ext4/bitmap.o
  CC      arch/x86/kernel/cpu/intel_pconfig.o
  CC      arch/x86/kernel/cpu/tsx.o
  CC      kernel/dma/remap.o
  CC      fs/proc/base.o
  AR      lib/raid6/built-in.a
  CC [M]  drivers/video/fbdev/core/fbcvt.o
  CC      kernel/time/clocksource.o
  CC      fs/ramfs/inode.o
  CC      fs/configfs/mount.o
  CC      fs/ramfs/file-mmu.o
  CC      fs/configfs/item.o
  CC      crypto/pcrypt.o
  CC [M]  drivers/video/fbdev/core/fb_cmdline.o
  CC      block/ioctl.o
  CC      io_uring/poll.o
  CC      kernel/time/jiffies.o
  CC      crypto/cryptd.o
  CC      net/core/sysctl_net_core.o
  AR      kernel/futex/built-in.a
  CC      arch/x86/kernel/cpu/intel_epb.o
  CC      drivers/acpi/acpica/dswload.o
  AR      fs/sysfs/built-in.a
  CC [M]  drivers/video/fbdev/core/fb_defio.o
  CC [M]  net/ipv4/netfilter/nf_reject_ipv4.o
  CC      net/ipv4/inetpeer.o
  CC      drivers/pnp/interface.o
  CC      io_uring/cancel.o
  CC      kernel/irq/pm.o
  AR      drivers/pci/switch/built-in.a
  CC      fs/proc/generic.o
  CC      io_uring/kbuf.o
  CC [M]  sound/core/pcm_memory.o
  CC [M]  sound/core/memalloc.o
  AR      kernel/module/built-in.a
  CC      io_uring/rsrc.o
  CC      block/genhd.o
  CC      fs/proc/array.o
  AR      net/ipv6/netfilter/built-in.a
  CC [M]  net/ipv6/netfilter/nf_defrag_ipv6_hooks.o
  CC      net/ipv6/af_inet6.o
  CC      net/packet/af_packet.o
  CC [M]  net/ipv6/netfilter/nf_conntrack_reasm.o
  AR      fs/configfs/built-in.a
  CC      net/packet/diag.o
  CC [M]  drivers/dma/ioat/prep.o
  CC [M]  drivers/dma/ioat/dca.o
  AR      kernel/dma/built-in.a
  CC      net/ipv6/anycast.o
  CC      arch/x86/kernel/cpu/amd.o
  CC      net/ipv6/ip6_output.o
  CC      kernel/time/timer_list.o
  CC      drivers/acpi/acpica/dswload2.o
  AR      fs/ramfs/built-in.a
  CC      fs/jbd2/commit.o
  CC      net/key/af_key.o
  CC [M]  sound/core/pcm_timer.o
  AR      drivers/pci/controller/built-in.a
  CC      drivers/pci/access.o
  CC      drivers/pnp/quirks.o
  CC      kernel/time/timeconv.o
  CC      net/ipv6/ip6_input.o
  CC      net/netfilter/core.o
  CC [M]  drivers/video/fbdev/core/fbcon.o
  CC      kernel/irq/msi.o
  CC      crypto/des_generic.o
  CC [M]  net/ipv4/netfilter/ip_tables.o
  CC      fs/hugetlbfs/inode.o
  CC      drivers/acpi/acpica/dswscope.o
  CC      fs/proc/fd.o
  CC      net/ipv4/protocol.o
  CC      io_uring/rw.o
  CC      net/ipv4/ip_input.o
  CC      fs/ext4/block_validity.o
  CC [M]  net/netfilter/ipvs/ip_vs_ctl.o
  CC      fs/ext4/dir.o
  CC      net/core/dev.o
  CC      kernel/time/timecounter.o
  CC      net/core/dev_addr_lists.o
  LD [M]  sound/core/snd-ctl-led.o
  CC      net/unix/garbage.o
  LD [M]  sound/core/snd-hwdep.o
  CC      kernel/time/alarmtimer.o
  LD [M]  sound/core/snd-pcm.o
  AR      sound/parisc/built-in.a
  AR      sound/core/built-in.a
  CC      lib/zstd/compress/zstd_fast.o
  AR      sound/pcmcia/vx/built-in.a
  CC      arch/x86/kernel/cpu/hygon.o
  AR      sound/pcmcia/pdaudiocf/built-in.a
  AR      sound/pcmcia/built-in.a
  CC      drivers/virtio/virtio.o
  AR      sound/mips/built-in.a
  AR      sound/soc/built-in.a
  AR      sound/atmel/built-in.a
  CC      crypto/aes_generic.o
  CC      fs/jbd2/recovery.o
  AR      sound/hda/built-in.a
  CC [M]  sound/hda/hda_bus_type.o
  CC      net/ethtool/common.o
  CC [M]  sound/hda/hdac_bus.o
  CC      drivers/acpi/acpica/dswstate.o
  CC [M]  drivers/dma/ioat/sysfs.o
  CC      net/ethtool/netlink.o
  CC      drivers/pnp/system.o
  CC      drivers/pci/bus.o
  CC      block/ioprio.o
  AR      net/bridge/netfilter/built-in.a
  CC      drivers/clk/clk-fixed-rate.o
  CC      net/bridge/br.o
  CC      drivers/pci/probe.o
  LD [M]  net/ipv6/netfilter/nf_defrag_ipv6.o
  CC      net/ipv6/addrconf.o
  CC      net/ipv6/addrlabel.o
  CC      arch/x86/kernel/cpu/centaur.o
  CC      mm/util.o
  CC      net/unix/sysctl_net_unix.o
  AR      drivers/pnp/built-in.a
  CC      block/badblocks.o
  CC      drivers/pci/host-bridge.o
  CC      drivers/acpi/acpica/evevent.o
  CC      drivers/tty/vt/vt_ioctl.o
  CC      fs/ext4/ext4_jbd2.o
  CC      drivers/tty/hvc/hvc_console.o
  CC      drivers/tty/serial/8250/8250_core.o
  CC      fs/proc/proc_tty.o
  CC      drivers/tty/serial/8250/8250_pnp.o
  CC      drivers/virtio/virtio_ring.o
  CC      kernel/irq/affinity.o
  CC      kernel/irq/matrix.o
  LD [M]  drivers/dma/ioat/ioatdma.o
  CC      drivers/video/hdmi.o
  CC      drivers/clk/clk-gate.o
  CC [M]  sound/hda/hdac_device.o
  CC      drivers/dma/dmaengine.o
  CC      arch/x86/kernel/cpu/zhaoxin.o
  CC      drivers/virtio/virtio_anchor.o
  CC      drivers/tty/vt/vc_screen.o
  CC      kernel/time/posix-timers.o
  CC      drivers/tty/vt/selection.o
  CC      io_uring/opdef.o
  AR      fs/hugetlbfs/built-in.a
  CC      drivers/char/hw_random/core.o
  CC      fs/jbd2/checkpoint.o
  AR      drivers/iommu/amd/built-in.a
  AR      drivers/gpu/host1x/built-in.a
  CC      drivers/acpi/acpica/evgpe.o
  CC      drivers/iommu/intel/dmar.o
  AR      drivers/gpu/drm/tests/built-in.a
  CC [M]  drivers/gpu/drm/tests/drm_kunit_helpers.o
  CC      crypto/deflate.o
  CC [M]  drivers/gpu/drm/tests/drm_buddy_test.o
  CC      drivers/char/hw_random/intel-rng.o
  CC      drivers/pci/remove.o
  CC      fs/proc/cmdline.o
  CC      drivers/connector/cn_queue.o
  CC      block/blk-rq-qos.o
  CC      arch/x86/kernel/cpu/perfctr-watchdog.o
  CC      drivers/connector/connector.o
  CC      drivers/clk/clk-multiplier.o
  CC      net/unix/diag.o
  CC      drivers/connector/cn_proc.o
  CC [M]  drivers/video/fbdev/core/bitblit.o
  CC      net/ethtool/bitset.o
  CC      net/bridge/br_device.o
  CC [M]  net/ipv4/netfilter/iptable_filter.o
  CC      crypto/crc32c_generic.o
  CC      net/core/dst.o
  CC      mm/mmzone.o
  AR      drivers/tty/hvc/built-in.a
  CC      drivers/tty/serial/serial_core.o
  CC [M]  drivers/gpu/drm/tests/drm_cmdline_parser_test.o
  CC      drivers/acpi/acpica/evgpeblk.o
  CC      net/netfilter/nf_log.o
  CC      drivers/tty/vt/keyboard.o
  CC      drivers/dma/virt-dma.o
  CC [M]  sound/hda/hdac_sysfs.o
  CC      drivers/tty/serial/8250/8250_port.o
  CC      fs/proc/consoles.o
  CC      lib/dump_stack.o
  CC      mm/vmstat.o
  CC [M]  drivers/video/fbdev/core/softcursor.o
  CC      drivers/clk/clk-mux.o
  AR      net/key/built-in.a
  CC [M]  drivers/video/fbdev/core/tileblit.o
  CC      mm/backing-dev.o
  CC      crypto/crct10dif_common.o
  AR      drivers/char/hw_random/built-in.a
  CC      drivers/char/agp/backend.o
  CC      drivers/char/agp/generic.o
  CC      fs/ext4/extents.o
  CC      net/xfrm/xfrm_state.o
  CC      arch/x86/kernel/cpu/vmware.o
  CC      io_uring/notif.o
  AR      kernel/irq/built-in.a
  CC      fs/ext4/extents_status.o
  CC      drivers/clk/clk-composite.o
  CC      fs/jbd2/revoke.o
  CC      block/disk-events.o
  CC      drivers/acpi/acpica/evgpeinit.o
  CC      drivers/pci/pci.o
  CC      net/ipv4/ip_fragment.o
  CC      drivers/acpi/dptf/int340x_thermal.o
  CC      lib/zstd/compress/zstd_lazy.o
  CC      lib/zstd/compress/zstd_ldm.o
  CC      io_uring/io-wq.o
  CC      crypto/crct10dif_generic.o
  CC      fs/proc/cpuinfo.o
  CC      drivers/virtio/virtio_pci_modern_dev.o
  CC      block/blk-ia-ranges.o
  CC      net/unix/scm.o
  CC      block/bsg.o
  CC      drivers/dma/acpi-dma.o
  CC      drivers/virtio/virtio_pci_legacy_dev.o
  CC [M]  net/ipv4/netfilter/iptable_mangle.o
  CC      kernel/time/posix-cpu-timers.o
  AR      net/packet/built-in.a
  CC [M]  net/sunrpc/auth_gss/auth_gss.o
  AR      drivers/connector/built-in.a
  CC [M]  net/sunrpc/auth_gss/gss_generic_token.o
  CC      drivers/acpi/acpica/evgpeutil.o
  CC      arch/x86/kernel/cpu/hypervisor.o
  CC      drivers/acpi/acpica/evglock.o
  CC      net/sunrpc/clnt.o
  CC      kernel/time/posix-clock.o
  CC [M]  sound/hda/hdac_regmap.o
  CC      net/ethtool/strset.o
  CC [M]  drivers/video/fbdev/core/cfbfillrect.o
  CC      drivers/clk/clk-fractional-divider.o
  CC [M]  net/netfilter/ipvs/ip_vs_sched.o
  CC      net/bridge/br_fdb.o
  AR      drivers/acpi/dptf/built-in.a
  CC      drivers/acpi/tables.o
  CC      crypto/authenc.o
  CC      lib/zstd/compress/zstd_opt.o
  CC      net/netfilter/nf_queue.o
  CC      arch/x86/kernel/cpu/mshyperv.o
  CC      block/bsg-lib.o
  CC      fs/proc/devices.o
  CC      drivers/iommu/intel/iommu.o
  CC      fs/jbd2/journal.o
  CC      drivers/acpi/acpica/evhandler.o
  CC      drivers/acpi/acpica/evmisc.o
  CC      drivers/pci/pci-driver.o
  CC      drivers/pci/search.o
  CC      drivers/virtio/virtio_mmio.o
  CC      drivers/char/agp/isoch.o
  CC      drivers/virtio/virtio_pci_modern.o
  AR      drivers/dma/built-in.a
  CC      drivers/acpi/acpica/evregion.o
  CC      drivers/acpi/blacklist.o
  CC      net/ipv6/route.o
  CC      drivers/virtio/virtio_pci_common.o
  CC      drivers/tty/vt/consolemap.o
  CC      mm/mm_init.o
  AR      net/unix/built-in.a
  CC [M]  drivers/gpu/drm/tests/drm_connector_test.o
  CC [M]  sound/hda/hdac_controller.o
  CC      drivers/clk/clk-gpio.o
  CC [M]  drivers/gpu/drm/tests/drm_damage_helper_test.o
  CC [M]  net/ipv4/netfilter/iptable_nat.o
  CC [M]  sound/hda/hdac_stream.o
  AR      sound/x86/built-in.a
  AR      sound/xen/built-in.a
  CC      fs/proc/interrupts.o
  AR      sound/virtio/built-in.a
  CC      fs/proc/loadavg.o
  CC [M]  sound/hda/array.o
  CC      drivers/acpi/acpica/evrgnini.o
  CC      lib/zstd/zstd_decompress_module.o
  CC [M]  drivers/video/fbdev/core/cfbcopyarea.o
  CC      lib/earlycpio.o
  CC      lib/extable.o
  CC      block/blk-cgroup.o
  CC      sound/sound_core.o
  CC      arch/x86/kernel/cpu/capflags.o
  CC      kernel/time/itimer.o
  CC      drivers/tty/serial/8250/8250_dma.o
  CC      crypto/authencesn.o
  CC      block/blk-cgroup-rwstat.o
  AR      arch/x86/kernel/cpu/built-in.a
  CC      drivers/pci/pci-sysfs.o
  LDS     arch/x86/kernel/vmlinux.lds
  CC      net/ethtool/linkinfo.o
  AS      arch/x86/kernel/head_64.o
  CC      arch/x86/kernel/head64.o
  CC [M]  net/netfilter/ipvs/ip_vs_xmit.o
  CC      drivers/tty/serial/8250/8250_dwlib.o
  CC      drivers/char/agp/intel-agp.o
  AR      io_uring/built-in.a
  CC      drivers/tty/serial/8250/8250_pcilib.o
  CC      arch/x86/kernel/ebda.o
  AR      drivers/clk/built-in.a
  CC      block/blk-throttle.o
  CC      lib/flex_proportions.o
  CC      drivers/tty/serial/8250/8250_pci.o
  CC      sound/last.o
  CC [M]  drivers/gpu/drm/tests/drm_dp_mst_helper_test.o
  CC      drivers/base/power/sysfs.o
  CC      drivers/acpi/acpica/evsci.o
  CC      mm/percpu.o
  CC      fs/proc/meminfo.o
  CC      drivers/base/power/generic_ops.o
  CC      drivers/base/power/common.o
  CC [M]  sound/hda/hdmi_chmap.o
  CC      drivers/virtio/virtio_pci_legacy.o
  CC      drivers/block/loop.o
  CC      drivers/char/agp/intel-gtt.o
  HOSTCC  drivers/tty/vt/conmakehash
  CC      drivers/tty/vt/vt.o
  AR      drivers/misc/eeprom/built-in.a
  CC      net/8021q/vlan_core.o
  AR      drivers/misc/cb710/built-in.a
  AR      drivers/misc/ti-st/built-in.a
  CC [M]  sound/hda/trace.o
  AR      drivers/misc/lis3lv02d/built-in.a
  CC [M]  sound/hda/hdac_component.o
  AR      drivers/misc/cardreader/built-in.a
  CC      arch/x86/kernel/platform-quirks.o
  CC [M]  drivers/misc/mei/hdcp/mei_hdcp.o
  CC      drivers/acpi/acpica/evxface.o
  CC      net/ipv6/ip6_fib.o
  CC      net/netfilter/nf_sockopt.o
  CC [M]  net/ipv4/netfilter/ipt_REJECT.o
  CC      net/ipv6/ipv6_sockglue.o
  CC [M]  drivers/misc/mei/pxp/mei_pxp.o
  CC [M]  drivers/misc/mei/init.o
  CC      block/mq-deadline.o
  CC      net/ipv6/ndisc.o
  COPY    drivers/tty/vt/defkeymap.c
  CC      net/xfrm/xfrm_hash.o
  CC      kernel/time/clockevents.o
  CC [M]  drivers/video/fbdev/core/cfbimgblt.o
  CC      arch/x86/kernel/process_64.o
  CC      drivers/base/power/qos.o
  CC      drivers/tty/serial/earlycon.o
  CC      net/ethtool/linkmodes.o
  CC      crypto/lzo.o
  CC      fs/proc/stat.o
  CC [M]  drivers/virtio/virtio_mem.o
  CC [M]  drivers/gpu/drm/tests/drm_format_helper_test.o
  CC [M]  net/sunrpc/auth_gss/gss_mech_switch.o
  CC      net/bridge/br_forward.o
  CC [M]  sound/hda/hdac_i915.o
  CC      drivers/pci/rom.o
  CC      drivers/acpi/acpica/evxfevnt.o
  CC      drivers/tty/serial/serial_mctrl_gpio.o
  CC      net/sunrpc/xprt.o
  CC      net/xfrm/xfrm_input.o
  CC      drivers/base/firmware_loader/builtin/main.o
  CC [M]  drivers/video/fbdev/core/sysfillrect.o
  CC [M]  drivers/misc/mei/hbm.o
  AR      drivers/char/agp/built-in.a
  CC      drivers/char/tpm/tpm-chip.o
  CC      net/xfrm/xfrm_output.o
  CC      drivers/tty/serial/8250/8250_exar.o
  CC      net/xfrm/xfrm_sysctl.o
  CC      kernel/time/tick-common.o
  CC      crypto/lzo-rle.o
  CC      net/xfrm/xfrm_replay.o
  CC      drivers/base/firmware_loader/main.o
  CC [M]  drivers/video/fbdev/core/syscopyarea.o
  CC      fs/proc/uptime.o
  CC      drivers/block/virtio_blk.o
  CC      net/ipv4/ip_forward.o
  CC      drivers/acpi/acpica/evxfgpe.o
  CC      drivers/pci/setup-res.o
  AR      drivers/base/firmware_loader/builtin/built-in.a
  CC      drivers/base/power/runtime.o
  CC [M]  net/netfilter/ipvs/ip_vs_app.o
  CC      net/netfilter/utils.o
  CC      drivers/base/power/wakeirq.o
  CC [M]  net/8021q/vlan.o
  CC [M]  sound/hda/intel-dsp-config.o
  AR      fs/jbd2/built-in.a
  CC      drivers/iommu/intel/pasid.o
  CC      drivers/base/power/main.o
  CC      arch/x86/kernel/signal.o
  CC      net/ethtool/rss.o
  CC [M]  drivers/gpu/drm/tests/drm_format_test.o
  CC [M]  drivers/misc/mei/interrupt.o
  CC      block/kyber-iosched.o
  CC      net/sunrpc/socklib.o
  CC      drivers/char/tpm/tpm-dev-common.o
  CC [M]  net/netfilter/ipvs/ip_vs_sync.o
  CC      crypto/lz4.o
  CC      fs/ext4/file.o
  CC      fs/proc/util.o
  CC      drivers/acpi/acpica/evxfregn.o
  CC [M]  net/sunrpc/auth_gss/svcauth_gss.o
  CC [M]  drivers/video/fbdev/core/sysimgblt.o
  CC      drivers/char/tpm/tpm-dev.o
  CC      drivers/tty/serial/8250/8250_early.o
  CC      drivers/char/tpm/tpm-interface.o
  CC      net/bridge/br_if.o
  CC [M]  drivers/misc/mei/client.o
  CC [M]  net/8021q/vlan_dev.o
  CC      kernel/time/tick-broadcast.o
  CC      drivers/pci/irq.o
  CC      fs/ext4/fsmap.o
  CC [M]  sound/hda/intel-nhlt.o
  CC      crypto/lz4hc.o
  AR      drivers/base/firmware_loader/built-in.a
  CC      fs/proc/version.o
  CC      block/bfq-iosched.o
  CC      drivers/char/tpm/tpm1-cmd.o
  CC [M]  net/netfilter/ipvs/ip_vs_est.o
  CC      drivers/acpi/acpica/exconcat.o
  CC      arch/x86/kernel/signal_64.o
  CC      net/ethtool/linkstate.o
  CC      mm/slab_common.o
  AR      drivers/virtio/built-in.a
  CC      net/ethtool/debug.o
  CC [M]  net/8021q/vlan_netlink.o
  CC      net/ethtool/wol.o
  CC [M]  drivers/gpu/drm/tests/drm_framebuffer_test.o
  CC [M]  drivers/block/nbd.o
  CC      drivers/iommu/intel/trace.o
  CC      net/ethtool/features.o
  AR      drivers/gpu/drm/arm/built-in.a
  CC      net/xfrm/xfrm_device.o
  CC [M]  drivers/gpu/drm/tests/drm_managed_test.o
  CC [M]  drivers/gpu/drm/tests/drm_mm_test.o
  AR      drivers/base/test/built-in.a
  CC      drivers/base/regmap/regmap.o
  CC      drivers/char/tpm/tpm2-cmd.o
  CC      net/ipv4/ip_options.o
  CC      drivers/iommu/intel/cap_audit.o
  CC      net/sunrpc/xprtsock.o
  CC      drivers/tty/serial/8250/8250_dw.o
  CC      crypto/xxhash_generic.o
  CC      drivers/pci/vpd.o
  CC      net/bridge/br_input.o
  CC [M]  net/8021q/vlanproc.o
  CC      fs/proc/softirqs.o
  CC      net/bridge/br_ioctl.o
  CC      drivers/acpi/acpica/exconfig.o
  CC [M]  sound/hda/intel-sdw-acpi.o
  CC [M]  drivers/video/fbdev/core/fb_sys_fops.o
  CONMK   drivers/tty/vt/consolemap_deftbl.c
  CC      drivers/tty/vt/defkeymap.o
  CC      kernel/time/tick-broadcast-hrtimer.o
  CC      lib/zstd/decompress/huf_decompress.o
  AR      drivers/iommu/arm/arm-smmu/built-in.a
  CC      net/core/netevent.o
  AR      drivers/iommu/arm/arm-smmu-v3/built-in.a
  AR      drivers/iommu/arm/built-in.a
  LD [M]  sound/hda/snd-hda-core.o
  LD [M]  sound/hda/snd-intel-dspcfg.o
  AR      drivers/iommu/iommufd/built-in.a
  CC      drivers/iommu/iommu.o
  CC      drivers/tty/vt/consolemap_deftbl.o
  CC      crypto/rng.o
  AR      drivers/tty/vt/built-in.a
  CC      crypto/drbg.o
  CC [M]  drivers/gpu/drm/tests/drm_modes_test.o
  AR      drivers/tty/ipwireless/built-in.a
  CC [M]  net/sunrpc/auth_gss/gss_rpc_upcall.o
  CC      arch/x86/kernel/traps.o
  CC      drivers/char/tpm/tpmrm-dev.o
  CC      drivers/char/tpm/tpm2-space.o
  CC      fs/proc/namespaces.o
  CC      drivers/acpi/acpica/exconvrt.o
  CC      drivers/iommu/iommu-traces.o
  CC      kernel/time/tick-oneshot.o
  LD [M]  sound/hda/snd-intel-sdw-acpi.o
  CC      drivers/iommu/intel/irq_remapping.o
  AR      sound/built-in.a
  CC      drivers/iommu/intel/perfmon.o
  AR      drivers/gpu/drm/display/built-in.a
  CC      drivers/iommu/iommu-sysfs.o
  CC [M]  drivers/gpu/drm/display/drm_display_helper_mod.o
  CC      drivers/base/power/wakeup.o
  CC      drivers/base/power/wakeup_stats.o
  CC      drivers/base/power/domain.o
  CC [M]  drivers/gpu/drm/display/drm_dp_dual_mode_helper.o
  CC      drivers/base/power/domain_governor.o
  CC      net/ethtool/privflags.o
  CC      drivers/pci/setup-bus.o
  CC      net/ethtool/rings.o
  LD [M]  drivers/video/fbdev/core/fb.o
  CC      drivers/tty/serial/8250/8250_lpss.o
  AR      drivers/video/fbdev/core/built-in.a
  AR      drivers/video/fbdev/built-in.a
  CC      net/core/neighbour.o
  AR      drivers/video/built-in.a
  CC      net/sunrpc/sched.o
  CC      fs/ext4/fsync.o
  CC      drivers/pci/vc.o
  AR      net/8021q/built-in.a
  CC      drivers/pci/mmap.o
  LD [M]  net/8021q/8021q.o
  CC      fs/ext4/hash.o
  CC      kernel/time/tick-sched.o
  CC      kernel/time/vsyscall.o
  CC      drivers/acpi/acpica/excreate.o
  AR      drivers/block/built-in.a
  CC [M]  drivers/gpu/drm/tests/drm_plane_helper_test.o
  CC      crypto/jitterentropy.o
  CC      drivers/char/mem.o
  CC      net/xfrm/xfrm_algo.o
  CC      drivers/char/tpm/tpm-sysfs.o
  CC [M]  net/netfilter/ipvs/ip_vs_proto.o
  CC      net/ipv4/ip_output.o
  CC [M]  drivers/misc/mei/main.o
  CC      drivers/base/power/clock_ops.o
  CC [M]  drivers/gpu/drm/display/drm_dp_helper.o
  CC [M]  drivers/gpu/drm/display/drm_dp_mst_topology.o
  CC      fs/proc/self.o
  CC      drivers/char/tpm/eventlog/common.o
  CC      mm/compaction.o
  CC      net/bridge/br_stp.o
  AR      drivers/misc/built-in.a
  CC      net/sunrpc/auth.o
  CC      arch/x86/kernel/idt.o
  CC      drivers/tty/serial/8250/8250_mid.o
  CC [M]  net/sunrpc/auth_gss/gss_rpc_xdr.o
  CC      kernel/time/timekeeping_debug.o
  CC      drivers/iommu/dma-iommu.o
  CC      drivers/acpi/acpica/exdebug.o
  CC      drivers/mfd/mfd-core.o
  AR      drivers/nfc/built-in.a
  CC [M]  drivers/gpu/drm/display/drm_dsc_helper.o
  CC      net/ipv4/ip_sockglue.o
  CC      drivers/pci/setup-irq.o
  CC      block/bfq-wf2q.o
  CC      net/ipv6/udp.o
  CC      drivers/pci/proc.o
  CC [M]  net/sunrpc/auth_gss/trace.o
  CC      crypto/jitterentropy-kcapi.o
  CC [M]  drivers/gpu/drm/tests/drm_probe_helper_test.o
  CC      net/ethtool/channels.o
  CC      fs/proc/thread_self.o
  CC      crypto/ghash-generic.o
  CC      drivers/pci/slot.o
  CC      net/ipv4/inet_hashtables.o
  AR      drivers/iommu/intel/built-in.a
  CC      drivers/char/tpm/eventlog/tpm1.o
  CC      drivers/acpi/acpica/exdump.o
  AR      drivers/dax/hmem/built-in.a
  CC      drivers/acpi/acpica/exfield.o
  CC      drivers/char/tpm/eventlog/tpm2.o
  CC      drivers/dax/super.o
  CC      drivers/acpi/acpica/exfldio.o
  CC      kernel/time/namespace.o
  CC      fs/ext4/ialloc.o
  CC      net/xfrm/xfrm_user.o
  CC      arch/x86/kernel/irq.o
  CC      drivers/tty/serial/8250/8250_pericom.o
  CC      drivers/pci/pci-acpi.o
  CC      crypto/af_alg.o
  CC [M]  drivers/misc/mei/dma-ring.o
  CC [M]  arch/x86/kvm/emulate.o
  AR      drivers/base/power/built-in.a
  CC      fs/proc/proc_sysctl.o
  CC      lib/idr.o
  CC      crypto/algif_hash.o
  CC      drivers/dax/bus.o
  CC      drivers/mfd/intel-lpss.o
  CC      crypto/algif_skcipher.o
  CC [M]  drivers/gpu/drm/display/drm_hdcp_helper.o
  CC      crypto/xor.o
  CC [M]  net/netfilter/ipvs/ip_vs_pe.o
  CC [M]  drivers/gpu/drm/tests/drm_rect_test.o
  CC      drivers/dma-buf/dma-buf.o
  CC      drivers/acpi/acpica/exmisc.o
  CC [M]  net/netfilter/ipvs/ip_vs_proto_tcp.o
  CC      lib/irq_regs.o
  CC      net/bridge/br_stp_bpdu.o
  CC      drivers/dma-buf/dma-fence.o
  CC [M]  arch/x86/kvm/i8259.o
  CC [M]  arch/x86/kvm/irq.o
  CC      drivers/acpi/acpica/exmutex.o
  CC      drivers/char/tpm/tpm_ppi.o
  CC      net/sunrpc/auth_null.o
  CC      drivers/base/regmap/regcache.o
  CC      arch/x86/kernel/irq_64.o
  CC      block/bfq-cgroup.o
  CC      net/ethtool/coalesce.o
  CC      arch/x86/kernel/dumpstack_64.o
  CC      drivers/iommu/ioasid.o
  AR      drivers/tty/serial/8250/built-in.a
  AR      kernel/time/built-in.a
  AR      drivers/tty/serial/built-in.a
  CC      drivers/tty/tty_io.o
  CC      kernel/cgroup/cgroup.o
  CC [M]  drivers/misc/mei/bus.o
  CC      drivers/tty/n_tty.o
  CC      drivers/tty/tty_ioctl.o
  CC      drivers/iommu/iova.o
  CC      drivers/mfd/intel-lpss-pci.o
  CC [M]  drivers/gpu/drm/display/drm_hdmi_helper.o
  CC [M]  drivers/gpu/drm/display/drm_scdc_helper.o
  CC      drivers/acpi/acpica/exnames.o
  CC [M]  net/sunrpc/auth_gss/gss_krb5_mech.o
  CC      net/sunrpc/auth_unix.o
  CC      drivers/pci/quirks.o
  CC      crypto/hash_info.o
  CC      block/blk-mq-pci.o
  CC      crypto/simd.o
  AR      drivers/macintosh/built-in.a
  CC      net/sunrpc/svc.o
  AR      drivers/cxl/core/built-in.a
  AR      drivers/cxl/built-in.a
  CC      drivers/scsi/scsi.o
  CC      drivers/char/tpm/eventlog/acpi.o
  AR      drivers/gpu/drm/rcar-du/built-in.a
  CC      drivers/scsi/hosts.o
  CC [M]  drivers/gpu/drm/display/drm_dp_aux_dev.o
  CC      lib/is_single_threaded.o
  CC      drivers/iommu/irq_remapping.o
  AR      drivers/dax/built-in.a
  CC      kernel/cgroup/rstat.o
  CC      fs/fat/cache.o
  CC      drivers/acpi/acpica/exoparg1.o
  CC      fs/nfs/client.o
  CC      fs/nfs/dir.o
  CC      drivers/mfd/intel-lpss-acpi.o
  CC      drivers/base/regmap/regcache-rbtree.o
  CC      drivers/nvme/host/core.o
  CC      net/bridge/br_stp_if.o
  CC      drivers/nvme/host/ioctl.o
  CC      drivers/nvme/host/trace.o
  CC      drivers/nvme/host/pci.o
  CC      drivers/dma-buf/dma-fence-array.o
  CC      net/ethtool/pause.o
  CC      lib/klist.o
  CC      net/ethtool/eee.o
  CC      drivers/acpi/acpica/exoparg2.o
  CC      drivers/char/tpm/eventlog/efi.o
  CC      drivers/char/tpm/tpm_crb.o
  CC      arch/x86/kernel/time.o
  CC [M]  net/netfilter/ipvs/ip_vs_proto_udp.o
  CC      drivers/acpi/acpica/exoparg3.o
  CC      fs/proc/proc_net.o
  CC      net/ipv4/inet_timewait_sock.o
  CC [M]  crypto/md4.o
  CC      block/blk-mq-virtio.o
  CC [M]  drivers/misc/mei/bus-fixup.o
  CC [M]  net/sunrpc/auth_gss/gss_krb5_seal.o
  CC      drivers/tty/tty_ldisc.o
  AR      drivers/iommu/built-in.a
  CC      mm/interval_tree.o
  CC      drivers/mfd/intel_soc_pmic_crc.o
  CC      net/sunrpc/svcsock.o
  CC      mm/list_lru.o
  CC      mm/workingset.o
  CC [M]  drivers/mfd/lpc_sch.o
  CC      net/ipv6/udplite.o
  CC      net/core/rtnetlink.o
  CC      fs/fat/dir.o
  CC      drivers/dma-buf/dma-fence-chain.o
  CC      arch/x86/kernel/ioport.o
  CC [M]  arch/x86/kvm/lapic.o
  CC [M]  arch/x86/kvm/i8254.o
  CC      fs/ext4/indirect.o
  CC      block/blk-mq-debugfs.o
  CC      drivers/base/regmap/regcache-flat.o
  LD [M]  drivers/gpu/drm/display/drm_display_helper.o
  CC      drivers/acpi/acpica/exoparg6.o
  CC      net/core/utils.o
  AR      drivers/gpu/drm/omapdrm/built-in.a
  AR      drivers/gpu/drm/tilcdc/built-in.a
  AR      drivers/gpu/drm/imx/built-in.a
  AR      drivers/gpu/drm/i2c/built-in.a
  AR      drivers/gpu/drm/panel/built-in.a
  AR      drivers/gpu/drm/bridge/analogix/built-in.a
  CC [M]  crypto/ccm.o
  AR      drivers/gpu/drm/hisilicon/built-in.a
  CC      net/core/link_watch.o
  CC      drivers/tty/tty_buffer.o
  AR      drivers/gpu/drm/bridge/cadence/built-in.a
  AR      drivers/gpu/drm/bridge/imx/built-in.a
  AR      drivers/gpu/drm/bridge/synopsys/built-in.a
  AR      drivers/gpu/drm/bridge/built-in.a
  AR      drivers/gpu/drm/mxsfb/built-in.a
  AR      drivers/gpu/drm/tiny/built-in.a
  AR      drivers/gpu/drm/xlnx/built-in.a
  CC [M]  crypto/arc4.o
  AR      drivers/gpu/drm/gud/built-in.a
  CC      lib/kobject.o
  AR      drivers/gpu/drm/solomon/built-in.a
  CC [M]  drivers/gpu/drm/ttm/ttm_tt.o
  CC      drivers/scsi/scsi_ioctl.o
  AR      net/xfrm/built-in.a
  CC [M]  net/sunrpc/auth_gss/gss_krb5_unseal.o
  AR      drivers/char/tpm/built-in.a
  CC      lib/kobject_uevent.o
  CC      drivers/char/random.o
  CC [M]  net/sunrpc/auth_gss/gss_krb5_seqnum.o
  CC [M]  drivers/misc/mei/debugfs.o
  CC      fs/proc/kcore.o
  AR      drivers/nvme/target/built-in.a
  CC [M]  net/netfilter/nfnetlink.o
  CC      net/ethtool/tsinfo.o
  CC      drivers/acpi/acpica/exprep.o
  CC      drivers/base/regmap/regmap-debugfs.o
  CC      net/bridge/br_stp_timer.o
  CC [M]  drivers/gpu/drm/ttm/ttm_bo.o
  CC      drivers/scsi/scsicam.o
  CC      drivers/tty/tty_port.o
  CC [M]  drivers/mfd/lpc_ich.o
  CC      drivers/dma-buf/dma-fence-unwrap.o
  CC      mm/debug.o
  CC [M]  net/netfilter/ipvs/ip_vs_nfct.o
  CC      arch/x86/kernel/dumpstack.o
  CC      drivers/base/regmap/regmap-i2c.o
  CC      net/ipv4/inet_connection_sock.o
  CC      drivers/base/regmap/regmap-irq.o
  CC      fs/ext4/inline.o
  CC      net/ipv6/raw.o
  CC      drivers/acpi/acpica/exregion.o
  CC      block/blk-pm.o
  CC      drivers/tty/tty_mutex.o
  CC [M]  drivers/misc/mei/mei-trace.o
  CC [M]  net/netfilter/ipvs/ip_vs_rr.o
  CC      drivers/ata/libata-core.o
  CC      drivers/ata/libata-scsi.o
  CC      lib/logic_pio.o
  CC [M]  net/sunrpc/auth_gss/gss_krb5_wrap.o
  CC      net/sunrpc/svcauth.o
  CC      drivers/dma-buf/dma-resv.o
  CC      fs/nfs/file.o
  CC      drivers/pci/ats.o
  CC [M]  crypto/ecc.o
  CC      drivers/spi/spi.o
  CC      fs/exportfs/expfs.o
  CC      net/core/filter.o
  CC      drivers/scsi/scsi_error.o
  CC      fs/proc/kmsg.o
  CC      net/core/sock_diag.o
  CC      net/sunrpc/svcauth_unix.o
  CC      net/ethtool/cabletest.o
  AR      drivers/mfd/built-in.a
  CC      drivers/acpi/acpica/exresnte.o
  CC      fs/nfs/getroot.o
  CC      arch/x86/kernel/nmi.o
  CC      drivers/dma-buf/sync_file.o
  CC      mm/gup.o
  CC      fs/fat/fatent.o
  CC      net/bridge/br_netlink.o
  CC      drivers/tty/tty_ldsem.o
  CC      block/holder.o
  CC      net/bridge/br_netlink_tunnel.o
  CC [M]  drivers/gpu/drm/ttm/ttm_bo_util.o
  CC      fs/ext4/inode.o
  CC      arch/x86/kernel/ldt.o
  CC [M]  arch/x86/kvm/ioapic.o
  CC      drivers/dma-buf/sw_sync.o
  CC      net/ipv4/tcp.o
  CC [M]  net/sunrpc/auth_gss/gss_krb5_crypto.o
  CC [M]  drivers/misc/mei/pci-me.o
  CC      drivers/char/misc.o
  CC      fs/proc/page.o
  AR      fs/exportfs/built-in.a
  CC      fs/nfs/inode.o
  CC      net/ipv4/tcp_input.o
  CC      drivers/acpi/acpica/exresolv.o
  CC      drivers/pci/iov.o
  AR      drivers/base/regmap/built-in.a
  CC      drivers/base/component.o
  LD [M]  net/netfilter/ipvs/ip_vs.o
  CC      drivers/dma-buf/sync_debug.o
  CC      net/sunrpc/addr.o
  CC [M]  net/netfilter/nf_conntrack_core.o
  CC      net/bridge/br_arp_nd_proxy.o
  AR      block/built-in.a
  CC      net/core/dev_ioctl.o
  CC      drivers/tty/tty_baudrate.o
  CC      fs/nfs/super.o
  CC      fs/nfs/io.o
  CC      drivers/acpi/acpica/exresop.o
  CC      drivers/ata/libata-eh.o
  CC      drivers/char/virtio_console.o
  CC      fs/lockd/clntlock.o
  CC      net/ethtool/tunnels.o
  CC [M]  drivers/gpu/drm/ttm/ttm_bo_vm.o
  CC [M]  drivers/misc/mei/hw-me.o
  CC      fs/lockd/clntproc.o
  CC      fs/fat/file.o
  CC      arch/x86/kernel/setup.o
  CC      drivers/net/phy/mdio-boardinfo.o
  CC [M]  drivers/dma-buf/selftest.o
  AR      drivers/firewire/built-in.a
  AR      drivers/net/pse-pd/built-in.a
  AR      fs/proc/built-in.a
  CC      net/sunrpc/rpcb_clnt.o
  CC      net/sunrpc/timer.o
  AR      drivers/cdrom/built-in.a
  CC      net/sunrpc/xdr.o
  AR      drivers/auxdisplay/built-in.a
  CC      fs/nls/nls_base.o
  CC [M]  drivers/dma-buf/st-dma-fence.o
  CC      fs/nls/nls_cp437.o
  CC      drivers/base/core.o
  CC      net/ipv6/icmp.o
  CC      drivers/acpi/acpica/exserial.o
  CC      drivers/scsi/scsi_lib.o
  CC      drivers/tty/tty_jobctrl.o
  CC [M]  drivers/gpu/drm/ttm/ttm_module.o
  CC [M]  net/sunrpc/auth_gss/gss_krb5_keys.o
  CC [M]  arch/x86/kvm/irq_comm.o
  CC [M]  crypto/essiv.o
  CC      net/ipv6/mcast.o
  AR      drivers/nvme/host/built-in.a
  AR      drivers/nvme/built-in.a
  CC      drivers/pci/pci-label.o
  CC      drivers/usb/common/common.o
  CC      drivers/usb/core/usb.o
  CC      drivers/usb/common/debug.o
  CC      net/sunrpc/sunrpc_syms.o
  CC [M]  drivers/gpu/drm/ttm/ttm_execbuf_util.o
  CC      fs/nls/nls_ascii.o
  CC [M]  drivers/gpu/drm/ttm/ttm_range_manager.o
  CC      drivers/acpi/acpica/exstore.o
  CC      fs/nfs/direct.o
  CC [M]  net/netfilter/nf_conntrack_standalone.o
  CC      drivers/input/serio/serio.o
  CC      drivers/input/serio/i8042.o
  CC      drivers/net/phy/mdio_devres.o
  CC      net/bridge/br_sysfs_if.o
  CC      kernel/cgroup/namespace.o
  CC      drivers/net/phy/phy.o
  CC [M]  drivers/dma-buf/st-dma-fence-chain.o
  CC      drivers/tty/n_null.o
  CC      fs/fat/inode.o
  CC      fs/nls/nls_iso8859-1.o
  CC      arch/x86/kernel/x86_init.o
  CC      net/ethtool/fec.o
  CC      drivers/pci/pci-stub.o
  CC      drivers/tty/pty.o
  AR      drivers/usb/common/built-in.a
  CC      drivers/pci/vgaarb.o
  CC      net/ethtool/eeprom.o
  LD [M]  net/sunrpc/auth_gss/auth_rpcgss.o
  CC      mm/mmap_lock.o
  CC [M]  crypto/ecdh.o
  CC      drivers/acpi/acpica/exstoren.o
  LD [M]  net/sunrpc/auth_gss/rpcsec_gss_krb5.o
  CC      fs/lockd/clntxdr.o
  CC      drivers/char/hpet.o
  CC [M]  drivers/misc/mei/gsc-me.o
  LD [M]  drivers/misc/mei/mei.o
  CC [M]  drivers/gpu/drm/ttm/ttm_resource.o
  CC      fs/nls/nls_utf8.o
  CC      net/bridge/br_sysfs_br.o
  CC [M]  arch/x86/kvm/cpuid.o
  CC      net/ipv6/reassembly.o
  AR      drivers/usb/phy/built-in.a
  CC      drivers/net/phy/phy-c45.o
  CC      drivers/usb/core/hub.o
  CC      drivers/usb/core/hcd.o
  CC      kernel/cgroup/cgroup-v1.o
  AR      fs/unicode/built-in.a
  CC      lib/zstd/decompress/zstd_ddict.o
  CC      net/ethtool/stats.o
  CC      net/sunrpc/cache.o
  CC      drivers/tty/sysrq.o
  CC      drivers/acpi/acpica/exstorob.o
  CC      drivers/usb/core/urb.o
  AR      drivers/gpu/vga/built-in.a
  CC      drivers/input/serio/libps2.o
  CC      arch/x86/kernel/i8259.o
  CC      fs/nfs/pagelist.o
  CC [M]  crypto/ecdh_helper.o
  AR      fs/nls/built-in.a
  CC      fs/ntfs/aops.o
  CC      fs/autofs/init.o
  CC [M]  drivers/dma-buf/st-dma-fence-unwrap.o
  AR      drivers/spi/built-in.a
  CC      fs/ntfs/attrib.o
  CC      fs/autofs/inode.o
  LD [M]  drivers/misc/mei/mei-me.o
  CC      fs/debugfs/inode.o
  LD [M]  drivers/misc/mei/mei-gsc.o
  CC      fs/tracefs/inode.o
  CC      drivers/input/keyboard/atkbd.o
  CC      fs/debugfs/file.o
  CC      drivers/acpi/acpica/exsystem.o
  CC      lib/zstd/decompress/zstd_decompress.o
  CC [M]  net/netfilter/nf_conntrack_expect.o
  AR      drivers/input/mouse/built-in.a
  CC      net/ipv6/tcp_ipv6.o
  CC      net/ethtool/phc_vclocks.o
  CC      lib/zstd/decompress/zstd_decompress_block.o
  CC      mm/highmem.o
  CC      drivers/scsi/scsi_lib_dma.o
  LD [M]  crypto/ecdh_generic.o
  AR      crypto/built-in.a
  CC      net/sunrpc/rpc_pipe.o
  CC      drivers/char/nvram.o
  CC      fs/lockd/host.o
  CC [M]  drivers/gpu/drm/ttm/ttm_pool.o
  CC [M]  drivers/dma-buf/st-dma-resv.o
  AR      drivers/pci/built-in.a
  CC      arch/x86/kernel/irqinit.o
  CC      kernel/cgroup/freezer.o
  CC      drivers/rtc/lib.o
  CC      fs/fat/misc.o
  AR      drivers/input/serio/built-in.a
  CC      drivers/rtc/class.o
  AR      drivers/dma-buf/built-in.a
  CC      drivers/rtc/interface.o
  CC      drivers/acpi/acpica/extrace.o
  CC      arch/x86/kernel/jump_label.o
  CC      arch/x86/kernel/irq_work.o
  CC      fs/autofs/root.o
  AR      drivers/tty/built-in.a
  CC [M]  arch/x86/kvm/pmu.o
  AR      drivers/i2c/algos/built-in.a
  CC [M]  drivers/i2c/algos/i2c-algo-bit.o
  CC [M]  arch/x86/kvm/mtrr.o
  CC      drivers/net/phy/phy-core.o
  CC      net/bridge/br_nf_core.o
  CC      kernel/trace/trace_clock.o
  LD [M]  drivers/dma-buf/dmabuf_selftests.o
  AR      fs/tracefs/built-in.a
  CC      kernel/trace/ftrace.o
  CC      mm/memory.o
  CC      mm/mincore.o
  CC      drivers/scsi/scsi_scan.o
  CC      net/ipv6/ping.o
  CC      drivers/ata/libata-transport.o
  CC      drivers/ata/libata-trace.o
  CC      drivers/ata/libata-sata.o
  CC      net/ipv6/exthdrs.o
  CC      kernel/bpf/core.o
  CC      drivers/base/bus.o
  CC      drivers/base/dd.o
  CC      drivers/rtc/nvmem.o
  CC      drivers/acpi/acpica/exutils.o
  CC      fs/ntfs/collate.o
  AR      drivers/char/built-in.a
  CC      drivers/i2c/busses/i2c-designware-common.o
  AR      fs/debugfs/built-in.a
  AR      drivers/i2c/muxes/built-in.a
  CC [M]  drivers/i2c/muxes/i2c-mux-gpio.o
  CC      net/ethtool/mm.o
  CC      drivers/i2c/busses/i2c-designware-master.o
  CC      drivers/i2c/i2c-boardinfo.o
  CC [M]  net/netfilter/nf_conntrack_helper.o
  AR      drivers/input/keyboard/built-in.a
  CC      drivers/input/input.o
  CC      kernel/trace/ring_buffer.o
  CC      fs/fat/nfs.o
  CC [M]  drivers/gpu/drm/ttm/ttm_device.o
  CC      drivers/rtc/dev.o
  CC      kernel/cgroup/legacy_freezer.o
  CC      arch/x86/kernel/probe_roms.o
  CC      drivers/acpi/acpica/hwacpi.o
  CC      kernel/cgroup/pids.o
  CC      fs/autofs/symlink.o
  CC      drivers/input/input-compat.o
  CC      fs/lockd/svc.o
  CC      drivers/i2c/i2c-core-base.o
  CC      fs/ntfs/compress.o
  CC      drivers/usb/core/message.o
  CC      drivers/net/phy/phy_device.o
  CC      drivers/ata/libata-sff.o
  CC      net/bridge/br_multicast.o
  CC      net/ipv4/tcp_output.o
  CC      drivers/net/phy/linkmode.o
  CC      fs/ext4/ioctl.o
  CC      drivers/net/phy/mdio_bus.o
  CC [M]  arch/x86/kvm/hyperv.o
  CC      drivers/usb/core/driver.o
  CC      drivers/ata/libata-pmp.o
  CC      drivers/ata/libata-acpi.o
  CC      fs/fat/namei_vfat.o
  CC      net/ipv6/datagram.o
  CC      drivers/acpi/acpica/hwesleep.o
  CC      net/bridge/br_mdb.o
  CC      fs/nfs/read.o
  CC [M]  drivers/gpu/drm/ttm/ttm_sys_manager.o
  CC      drivers/base/syscore.o
  CC      fs/autofs/waitq.o
  CC      fs/fat/namei_msdos.o
  CC      kernel/cgroup/cpuset.o
  CC      drivers/base/driver.o
  CC      drivers/rtc/proc.o
  CC      arch/x86/kernel/sys_ia32.o
  CC      drivers/i2c/busses/i2c-designware-platdrv.o
  CC      net/sunrpc/sysfs.o
  CC      drivers/i2c/busses/i2c-designware-baytrail.o
  CC      net/ethtool/module.o
  CC      drivers/net/phy/mdio_device.o
  GEN     drivers/scsi/scsi_devinfo_tbl.c
  CC      arch/x86/kernel/signal_32.o
  CC      drivers/scsi/scsi_devinfo.o
  CC      drivers/base/class.o
  CC [M]  drivers/gpu/drm/ttm/ttm_agp_backend.o
  CC      drivers/acpi/acpica/hwgpe.o
  CC [M]  drivers/i2c/busses/i2c-scmi.o
  CC [M]  net/netfilter/nf_conntrack_proto.o
  CC [M]  net/netfilter/nf_conntrack_proto_generic.o
  CC [M]  drivers/gpu/drm/scheduler/sched_main.o
  CC      drivers/rtc/sysfs.o
  CC      fs/autofs/expire.o
  CC [M]  drivers/gpu/drm/scheduler/sched_fence.o
  CC      fs/ntfs/debug.o
  CC [M]  drivers/i2c/busses/i2c-ccgx-ucsi.o
  CC      drivers/scsi/scsi_sysctl.o
  CC      fs/lockd/svclock.o
  LD [M]  drivers/gpu/drm/ttm/ttm.o
  CC      drivers/input/input-mt.o
  CC      drivers/input/input-poller.o
  CC      fs/autofs/dev-ioctl.o
  CC      fs/nfs/symlink.o
  CC      drivers/acpi/osi.o
  CC      fs/ntfs/dir.o
  CC      drivers/acpi/acpica/hwregs.o
  CC      net/bridge/br_multicast_eht.o
  CC [M]  drivers/i2c/busses/i2c-i801.o
  CC      drivers/ata/libata-pata-timings.o
  CC      net/sunrpc/svc_xprt.o
  CC      drivers/base/platform.o
  CC      arch/x86/kernel/sys_x86_64.o
  CC      net/sunrpc/xprtmultipath.o
  AR      fs/fat/built-in.a
  CC      net/ethtool/pse-pd.o
  CC      arch/x86/kernel/espfix_64.o
  CC      drivers/usb/core/config.o
  CC [M]  drivers/i2c/busses/i2c-isch.o
  CC      drivers/base/cpu.o
  CC      drivers/rtc/rtc-mc146818-lib.o
  CC      drivers/i2c/i2c-core-smbus.o
  CC      fs/lockd/svcshare.o
  CC      fs/ntfs/file.o
  CC      net/ipv6/ip6_flowlabel.o
  CC      fs/nfs/unlink.o
  CC      drivers/scsi/scsi_debugfs.o
  CC      drivers/acpi/acpica/hwsleep.o
  CC      kernel/events/core.o
  CC      drivers/input/ff-core.o
  CC      drivers/scsi/scsi_trace.o
  CC      lib/zstd/zstd_common_module.o
  CC [M]  drivers/i2c/busses/i2c-ismt.o
  CC      arch/x86/kernel/ksysfs.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_drv.o
  CC      drivers/net/phy/swphy.o
  AR      kernel/bpf/built-in.a
  CC      drivers/ata/ahci.o
  AR      fs/autofs/built-in.a
  CC      drivers/rtc/rtc-cmos.o
  CC      arch/x86/kernel/bootflag.o
  CC      arch/x86/kernel/e820.o
  CC      net/bridge/br_vlan.o
  CC      lib/zstd/common/debug.o
  CC      fs/ext4/mballoc.o
  CC [M]  drivers/gpu/drm/scheduler/sched_entity.o
  CC      arch/x86/kernel/pci-dma.o
  CC      drivers/net/phy/fixed_phy.o
  CC [M]  drivers/net/phy/phylink.o
  CC      net/ipv6/inet6_connection_sock.o
  CC      drivers/usb/core/file.o
  CC      drivers/ata/libahci.o
  CC [M]  net/netfilter/nf_conntrack_proto_tcp.o
  CC      lib/zstd/common/entropy_common.o
  CC      drivers/acpi/acpica/hwvalid.o
  CC      fs/ntfs/index.o
  CC      net/ethtool/plca.o
  CC [M]  drivers/gpu/drm/i915/i915_driver.o
  CC      fs/nfs/write.o
  CC [M]  drivers/i2c/busses/i2c-piix4.o
  CC      lib/zstd/common/error_private.o
  CC      kernel/events/ring_buffer.o
  CC      fs/lockd/svcproc.o
  CC [M]  net/netfilter/nf_conntrack_proto_udp.o
  CC      drivers/base/firmware.o
  CC      drivers/input/touchscreen.o
  CC      lib/maple_tree.o
  CC      lib/zstd/common/fse_decompress.o
  CC      arch/x86/kernel/quirks.o
  CC      net/core/tso.o
  CC      net/core/sock_reuseport.o
  CC      net/core/fib_notifier.o
  CC      drivers/ata/ata_piix.o
  CC      drivers/scsi/scsi_logging.o
  CC [M]  drivers/gpu/drm/i915/i915_drm_client.o
  CC      kernel/fork.o
  CC      net/bridge/br_vlan_tunnel.o
  CC      drivers/acpi/acpica/hwxface.o
  CC [M]  arch/x86/kvm/debugfs.o
  CC      arch/x86/kernel/topology.o
  CC      drivers/base/init.o
  CC      drivers/usb/core/buffer.o
  CC      kernel/trace/trace.o
  AR      drivers/rtc/built-in.a
  CC      kernel/trace/trace_output.o
  CC      arch/x86/kernel/kdebugfs.o
  LD [M]  drivers/gpu/drm/scheduler/gpu-sched.o
  CC      kernel/events/callchain.o
  CC      drivers/net/mdio/acpi_mdio.o
  CC      fs/ntfs/inode.o
  CC      drivers/input/ff-memless.o
  CC      drivers/input/vivaldi-fmap.o
  AR      kernel/cgroup/built-in.a
  CC      drivers/acpi/acpica/hwxfsleep.o
  CC [M]  drivers/i2c/busses/i2c-designware-pcidrv.o
  CC      arch/x86/kernel/alternative.o
  CC      fs/ntfs/mft.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_device.o
  CC      net/ipv6/udp_offload.o
  CC      kernel/events/hw_breakpoint.o
  CC      fs/lockd/svcsubs.o
  CC      kernel/exec_domain.o
  AR      net/ethtool/built-in.a
  CC      lib/zstd/common/zstd_common.o
  CC      net/sunrpc/stats.o
  CC      drivers/scsi/scsi_pm.o
  CC      drivers/base/map.o
  CC      drivers/input/input-leds.o
  CC      drivers/base/devres.o
  AR      lib/zstd/built-in.a
  CC      fs/btrfs/super.o
  CC      net/core/xdp.o
  CC      drivers/base/attribute_container.o
  CC      drivers/usb/core/sysfs.o
  CC      kernel/events/uprobes.o
  CC      drivers/acpi/acpica/hwpci.o
  CC      drivers/i2c/i2c-core-acpi.o
  CC      net/sunrpc/sysctl.o
  CC      fs/btrfs/ctree.o
  CC      net/ipv4/tcp_timer.o
  CC      net/core/flow_offload.o
  CC [M]  arch/x86/kvm/mmu/mmu.o
  CC      fs/btrfs/extent-tree.o
  CC      net/ipv6/seg6.o
  CC      drivers/acpi/osl.o
  CC [M]  arch/x86/kvm/mmu/page_track.o
  CC      drivers/net/mdio/fwnode_mdio.o
  CC [M]  arch/x86/kvm/mmu/spte.o
  CC      fs/ntfs/mst.o
  CC [M]  drivers/gpu/drm/i915/i915_config.o
  CC      net/ipv6/fib6_notifier.o
  LD [M]  drivers/i2c/busses/i2c-designware-pci.o
  CC      net/core/gro.o
  AR      drivers/i2c/busses/built-in.a
  CC      net/ipv4/tcp_ipv4.o
  CC [M]  net/netfilter/nf_conntrack_proto_icmp.o
  CC      mm/mlock.o
  CC      drivers/acpi/acpica/nsaccess.o
  CC      fs/ntfs/namei.o
  CC      drivers/input/mousedev.o
  AR      drivers/ata/built-in.a
  CC [M]  drivers/gpu/drm/i915/i915_getparam.o
  CC      net/core/netdev-genl.o
  CC      drivers/scsi/scsi_bsg.o
  CC      arch/x86/kernel/i8253.o
  CC [M]  drivers/net/phy/aquantia_main.o
  CC      kernel/trace/trace_seq.o
  CC [M]  drivers/gpu/drm/i915/i915_ioctl.o
  CC      fs/ntfs/runlist.o
  CC      drivers/base/transport_class.o
  CC      fs/lockd/mon.o
  CC      fs/nfs/namespace.o
  CC [M]  drivers/net/phy/aquantia_hwmon.o
  CC [M]  drivers/net/phy/ax88796b.o
  CC      drivers/usb/core/endpoint.o
  CC [M]  drivers/gpu/drm/i915/i915_irq.o
  CC      drivers/i2c/i2c-core-slave.o
  CC      drivers/acpi/acpica/nsalloc.o
  CC      fs/btrfs/print-tree.o
  CC      drivers/scsi/scsi_common.o
  CC      net/ipv4/tcp_minisocks.o
  AR      drivers/net/mdio/built-in.a
  CC      net/bridge/br_vlan_options.o
  CC      arch/x86/kernel/hw_breakpoint.o
  CC      kernel/trace/trace_stat.o
  CC      net/ipv6/rpl.o
  CC      drivers/base/topology.o
  CC      drivers/base/container.o
  CC      kernel/panic.o
  CC      drivers/scsi/sd.o
  CC      drivers/acpi/utils.o
  CC [M]  arch/x86/kvm/mmu/tdp_iter.o
  CC      net/dcb/dcbnl.o
  CC [M]  drivers/gpu/drm/xe/tests/xe_bo_test.o
  CC [M]  drivers/gpu/drm/xe/tests/xe_dma_buf_test.o
  CC      drivers/input/evdev.o
  CC      drivers/acpi/acpica/nsarguments.o
  CC      kernel/trace/trace_printk.o
  CC      drivers/acpi/reboot.o
  CC      fs/nfs/mount_clnt.o
  CC      fs/nfs/nfstrace.o
  AR      net/sunrpc/built-in.a
  CC [M]  drivers/gpu/drm/i915/i915_mitigations.o
  CC [M]  drivers/gpu/drm/xe/tests/xe_migrate_test.o
  CC      drivers/usb/core/devio.o
  CC      net/dcb/dcbevent.o
  CC [M]  net/netfilter/nf_conntrack_extend.o
  CC      fs/lockd/xdr.o
  CC      fs/lockd/clnt4xdr.o
  CC [M]  drivers/net/phy/bcm7xxx.o
  CC [M]  arch/x86/kvm/mmu/tdp_mmu.o
  CC      fs/ntfs/super.o
  CC [M]  drivers/gpu/drm/xe/tests/xe_pci_test.o
  CC [M]  drivers/gpu/drm/i915/i915_module.o
  CC      drivers/i2c/i2c-dev.o
  CC [M]  drivers/gpu/drm/xe/tests/xe_rtp_test.o
  CC [M]  drivers/gpu/drm/xe/tests/xe_wa_test.o
  CC [M]  drivers/i2c/i2c-smbus.o
  CC      drivers/base/property.o
  CC      arch/x86/kernel/tsc.o
  CC      drivers/acpi/acpica/nsconvert.o
  CC      drivers/scsi/sg.o
  CC      mm/mmap.o
  CC      fs/ext4/migrate.o
  CC [M]  arch/x86/kvm/smm.o
  CC [M]  drivers/gpu/drm/xe/xe_bb.o
  CC      net/core/netdev-genl-gen.o
  CC      net/ipv6/ioam6.o
  CC [M]  drivers/gpu/drm/xe/xe_bo.o
  CC      net/ipv6/sysctl_net_ipv6.o
  CC      drivers/acpi/nvs.o
  CC      drivers/acpi/wakeup.o
  CC [M]  drivers/net/phy/bcm87xx.o
  CC [M]  drivers/net/phy/bcm-phy-lib.o
  CC      drivers/acpi/acpica/nsdump.o
  CC      net/bridge/br_mst.o
  CC [M]  drivers/i2c/i2c-mux.o
  CC [M]  net/netfilter/nf_conntrack_acct.o
  CC      fs/ext4/mmp.o
  CC      fs/ext4/move_extent.o
  CC      net/ipv4/tcp_cong.o
  AR      drivers/input/built-in.a
  AR      drivers/i3c/built-in.a
  CC      net/core/net-sysfs.o
  CC [M]  drivers/gpu/drm/i915/i915_params.o
  CC      fs/nfs/export.o
  CC      fs/lockd/xdr4.o
  CC      drivers/acpi/acpica/nseval.o
  AR      drivers/media/i2c/built-in.a
  AR      drivers/media/tuners/built-in.a
  AR      drivers/media/rc/keymaps/built-in.a
  AR      drivers/media/rc/built-in.a
  CC      drivers/acpi/acpica/nsinit.o
  AR      drivers/media/common/b2c2/built-in.a
  CC      net/core/net-procfs.o
  AR      drivers/media/common/saa7146/built-in.a
  AR      drivers/media/common/siano/built-in.a
  AR      drivers/media/common/v4l2-tpg/built-in.a
  CC [M]  drivers/gpu/drm/i915/i915_pci.o
  CC [M]  drivers/gpu/drm/i915/i915_scatterlist.o
  CC      drivers/acpi/sleep.o
  AR      drivers/media/common/videobuf2/built-in.a
  AR      drivers/media/common/built-in.a
  CC      net/core/netpoll.o
  AR      drivers/media/platform/allegro-dvt/built-in.a
  CC      fs/lockd/svc4proc.o
  AR      drivers/media/platform/amlogic/meson-ge2d/built-in.a
  AR      drivers/media/platform/amlogic/built-in.a
  AR      drivers/media/pci/ttpci/built-in.a
  AR      drivers/media/pci/b2c2/built-in.a
  AR      drivers/media/platform/amphion/built-in.a
  AR      drivers/media/platform/aspeed/built-in.a
  AR      drivers/media/pci/pluto2/built-in.a
  AR      drivers/media/platform/atmel/built-in.a
  AR      drivers/media/pci/dm1105/built-in.a
  AR      drivers/media/platform/cadence/built-in.a
  AR      drivers/media/pci/pt1/built-in.a
  CC      arch/x86/kernel/tsc_msr.o
  AR      drivers/media/platform/chips-media/built-in.a
  AR      drivers/media/pci/pt3/built-in.a
  AR      drivers/media/platform/intel/built-in.a
  AR      drivers/media/pci/mantis/built-in.a
  AR      drivers/media/platform/marvell/built-in.a
  AR      drivers/media/pci/ngene/built-in.a
  AR      drivers/media/pci/ddbridge/built-in.a
  CC      drivers/usb/host/pci-quirks.o
  AR      drivers/media/platform/mediatek/jpeg/built-in.a
  AR      drivers/media/pci/saa7146/built-in.a
  AR      drivers/media/platform/mediatek/mdp/built-in.a
  CC      drivers/usb/host/ehci-hcd.o
  AR      drivers/media/pci/smipcie/built-in.a
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_kms.o
  AR      drivers/media/platform/mediatek/vcodec/built-in.a
  AR      drivers/media/pci/netup_unidvb/built-in.a
  CC      drivers/base/cacheinfo.o
  AR      drivers/media/platform/mediatek/vpu/built-in.a
  AR      drivers/media/pci/intel/ipu3/built-in.a
  AR      drivers/media/pci/intel/built-in.a
  AR      drivers/media/platform/mediatek/mdp3/built-in.a
  AR      drivers/media/platform/mediatek/built-in.a
  AR      drivers/media/pci/built-in.a
  AR      drivers/media/platform/microchip/built-in.a
  CC      fs/ext4/namei.o
  AR      drivers/media/platform/nvidia/tegra-vde/built-in.a
  AR      drivers/media/platform/nvidia/built-in.a
  AR      drivers/media/platform/nxp/dw100/built-in.a
  CC      fs/ntfs/sysctl.o
  AR      drivers/media/platform/nxp/imx-jpeg/built-in.a
  AR      drivers/media/platform/nxp/built-in.a
  AR      drivers/media/platform/qcom/camss/built-in.a
  CC [M]  drivers/net/phy/broadcom.o
  CC      fs/ntfs/unistr.o
  AR      drivers/media/platform/renesas/rcar-vin/built-in.a
  AR      drivers/media/platform/qcom/venus/built-in.a
  AR      drivers/media/platform/qcom/built-in.a
  AR      drivers/media/platform/renesas/rzg2l-cru/built-in.a
  CC      net/ipv6/xfrm6_policy.o
  AR      drivers/media/platform/renesas/vsp1/built-in.a
  AR      drivers/media/platform/renesas/built-in.a
  CC      arch/x86/kernel/io_delay.o
  AR      drivers/media/platform/rockchip/rga/built-in.a
  AR      drivers/media/platform/rockchip/rkisp1/built-in.a
  AR      drivers/media/platform/rockchip/built-in.a
  CC      drivers/acpi/acpica/nsload.o
  AR      drivers/media/platform/samsung/exynos-gsc/built-in.a
  AR      drivers/media/platform/samsung/exynos4-is/built-in.a
  AR      drivers/media/platform/samsung/s3c-camif/built-in.a
  CC      fs/ext4/page-io.o
  AR      drivers/media/platform/samsung/s5p-g2d/built-in.a
  AR      net/dcb/built-in.a
  AR      drivers/media/platform/samsung/s5p-jpeg/built-in.a
  CC      arch/x86/kernel/rtc.o
  AR      drivers/media/platform/samsung/s5p-mfc/built-in.a
  AR      drivers/media/platform/samsung/built-in.a
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_atombios.o
  AR      drivers/media/platform/st/sti/bdisp/built-in.a
  AR      drivers/media/platform/st/sti/c8sectpfe/built-in.a
  AR      drivers/i2c/built-in.a
  AR      drivers/media/platform/st/sti/delta/built-in.a
  CC      kernel/trace/pid_list.o
  AR      drivers/media/platform/st/sti/hva/built-in.a
  AR      drivers/media/platform/st/stm32/built-in.a
  AR      drivers/ptp/built-in.a
  CC      fs/ext4/readpage.o
  AR      drivers/media/platform/st/built-in.a
  CC [M]  drivers/ptp/ptp_clock.o
  AR      drivers/media/platform/sunxi/sun4i-csi/built-in.a
  CC [M]  net/netfilter/nf_conntrack_seqadj.o
  AR      drivers/media/platform/sunxi/sun6i-csi/built-in.a
  AR      drivers/media/platform/sunxi/sun6i-mipi-csi2/built-in.a
  CC      fs/ext4/resize.o
  AR      drivers/media/platform/sunxi/sun8i-a83t-mipi-csi2/built-in.a
  AR      drivers/media/platform/sunxi/sun8i-di/built-in.a
  CC [M]  drivers/ptp/ptp_chardev.o
  AR      drivers/media/platform/sunxi/sun8i-rotate/built-in.a
  AR      drivers/media/platform/sunxi/built-in.a
  AR      drivers/media/platform/ti/am437x/built-in.a
  AR      drivers/media/platform/ti/cal/built-in.a
  CC      drivers/usb/storage/scsiglue.o
  AR      drivers/media/platform/ti/vpe/built-in.a
  CC      fs/btrfs/root-tree.o
  AR      drivers/media/platform/ti/omap/built-in.a
  AR      drivers/media/platform/ti/davinci/built-in.a
  AR      drivers/media/platform/ti/omap3isp/built-in.a
  CC      drivers/usb/serial/usb-serial.o
  AR      drivers/media/platform/ti/built-in.a
  CC      fs/btrfs/dir-item.o
  AR      drivers/media/platform/verisilicon/built-in.a
  AR      drivers/media/platform/via/built-in.a
  AR      drivers/usb/misc/built-in.a
  CC      drivers/acpi/acpica/nsnames.o
  AR      drivers/media/platform/xilinx/built-in.a
  CC [M]  drivers/usb/misc/ftdi-elan.o
  CC [M]  net/bridge/br_netfilter_hooks.o
  AR      drivers/media/platform/built-in.a
  CC      fs/btrfs/file-item.o
  CC      drivers/usb/core/notify.o
  AR      drivers/media/usb/b2c2/built-in.a
  AR      drivers/media/usb/dvb-usb/built-in.a
  CC      fs/btrfs/inode-item.o
  AR      drivers/media/usb/dvb-usb-v2/built-in.a
  CC      drivers/scsi/scsi_sysfs.o
  AR      drivers/media/usb/s2255/built-in.a
  AR      drivers/media/usb/siano/built-in.a
  AR      drivers/media/usb/ttusb-budget/built-in.a
  AR      drivers/media/usb/ttusb-dec/built-in.a
  AR      drivers/media/usb/built-in.a
  CC      drivers/base/swnode.o
  CC      net/ipv6/xfrm6_state.o
  AR      drivers/media/mmc/siano/built-in.a
  CC      fs/ntfs/upcase.o
  AR      drivers/media/mmc/built-in.a
  CC      arch/x86/kernel/resource.o
  AR      drivers/media/firewire/built-in.a
  AR      drivers/media/spi/built-in.a
  AR      drivers/media/test-drivers/built-in.a
  AR      drivers/media/built-in.a
  CC [M]  drivers/gpu/drm/vgem/vgem_drv.o
  CC      fs/lockd/procfs.o
  AR      drivers/net/pcs/built-in.a
  CC      drivers/usb/host/ehci-pci.o
  CC [M]  drivers/gpu/drm/nouveau/nvif/object.o
  CC [M]  drivers/gpu/drm/i915/i915_suspend.o
  CC      net/ipv4/tcp_metrics.o
  CC [M]  drivers/gpu/drm/i915/i915_switcheroo.o
  CC      fs/nfs/sysfs.o
  CC [M]  drivers/gpu/drm/nouveau/nvif/client.o
  AR      drivers/net/ethernet/adi/built-in.a
  AR      drivers/net/ethernet/alacritech/built-in.a
  AR      drivers/net/ethernet/amazon/built-in.a
  AR      drivers/net/ethernet/aquantia/built-in.a
  CC [M]  drivers/net/phy/lxt.o
  AS      arch/x86/kernel/irqflags.o
  AR      drivers/net/ethernet/asix/built-in.a
  AR      drivers/net/ethernet/cadence/built-in.a
  CC      arch/x86/kernel/static_call.o
  AR      drivers/net/ethernet/broadcom/built-in.a
  CC [M]  drivers/net/ethernet/broadcom/b44.o
  CC [M]  drivers/gpu/drm/xe/xe_bo_evict.o
  CC [M]  drivers/net/ethernet/broadcom/bnx2.o
  CC      drivers/acpi/acpica/nsobject.o
  CC      kernel/trace/trace_sched_switch.o
  CC      drivers/usb/core/generic.o
  CC [M]  drivers/net/ethernet/broadcom/cnic.o
  CC [M]  drivers/ptp/ptp_sysfs.o
  CC [M]  drivers/ptp/ptp_vclock.o
  CC      mm/mmu_gather.o
  CC      drivers/usb/core/quirks.o
  CC      kernel/trace/trace_functions.o
  CC      drivers/usb/storage/protocol.o
  AR      fs/ntfs/built-in.a
  CC      net/core/fib_rules.o
  CC      fs/btrfs/disk-io.o
  CC      arch/x86/kernel/process.o
  CC [M]  drivers/gpu/drm/vgem/vgem_fence.o
  CC      lib/memcat_p.o
  AR      fs/lockd/built-in.a
  CC      net/core/net-traces.o
  CC      drivers/acpi/acpica/nsparse.o
  CC [M]  drivers/net/phy/realtek.o
  CC [M]  net/netfilter/nf_conntrack_proto_icmpv6.o
  CC [M]  drivers/net/ethernet/broadcom/tg3.o
  CC      drivers/base/auxiliary.o
  CC      net/ipv6/xfrm6_input.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/atombios_crtc.o
  AR      drivers/net/ethernet/cavium/common/built-in.a
  AR      drivers/net/ethernet/cavium/thunder/built-in.a
  AR      drivers/net/ethernet/cavium/liquidio/built-in.a
  AR      drivers/net/ethernet/cavium/octeon/built-in.a
  CC      fs/btrfs/transaction.o
  AR      drivers/net/ethernet/cavium/built-in.a
  CC      drivers/acpi/acpica/nspredef.o
  CC [M]  net/netfilter/nf_conntrack_proto_dccp.o
  CC [M]  drivers/gpu/drm/nouveau/nvif/conn.o
  CC      fs/pstore/inode.o
  CC      lib/nmi_backtrace.o
  CC      fs/pstore/platform.o
  CC      fs/nfs/fs_context.o
  CC [M]  drivers/gpu/drm/xe/xe_debugfs.o
  CC      fs/pstore/pmsg.o
  CC [M]  drivers/gpu/drm/i915/i915_sysfs.o
  CC [M]  drivers/net/phy/smsc.o
  CC      drivers/usb/serial/generic.o
  CC [M]  drivers/gpu/drm/xe/xe_device.o
  CC      drivers/usb/core/devices.o
  CC      fs/efivarfs/inode.o
  CC      drivers/acpi/device_sysfs.o
  CC      drivers/usb/storage/transport.o
  AR      drivers/scsi/built-in.a
  CC      drivers/usb/storage/usb.o
  CC [M]  drivers/ptp/ptp_kvm_x86.o
  CC      mm/mprotect.o
  CC      drivers/acpi/acpica/nsprepkg.o
  LD [M]  drivers/gpu/drm/vgem/vgem.o
  CC      drivers/base/devtmpfs.o
  CC      drivers/usb/host/ohci-hcd.o
  CC      kernel/trace/trace_preemptirq.o
  CC [M]  drivers/gpu/drm/nouveau/nvif/device.o
  CC      fs/ext4/super.o
  CC      drivers/acpi/device_pm.o
  AR      kernel/events/built-in.a
  CC      fs/nfs/sysctl.o
  CC [M]  drivers/gpu/drm/ast/ast_drv.o
  CC      lib/plist.o
  CC [M]  drivers/gpu/drm/ast/ast_i2c.o
  CC [M]  drivers/gpu/drm/nouveau/nvif/disp.o
  AR      drivers/power/reset/built-in.a
  CC      net/ipv4/tcp_fastopen.o
  CC      drivers/power/supply/power_supply_core.o
  CC      net/ipv4/tcp_rate.o
  CC      drivers/power/supply/power_supply_sysfs.o
  CC      fs/efivarfs/file.o
  AR      fs/pstore/built-in.a
  CC      lib/radix-tree.o
  CC      drivers/usb/host/ohci-pci.o
  CC      drivers/acpi/acpica/nsrepair.o
  CC      drivers/hwmon/hwmon.o
  CC      net/ipv4/tcp_recovery.o
  CC [M]  net/bridge/br_netfilter_ipv6.o
  CC [M]  drivers/ptp/ptp_kvm_common.o
  CC      net/ipv6/xfrm6_output.o
  CC      drivers/usb/core/phy.o
  CC      drivers/acpi/acpica/nsrepair2.o
  CC      arch/x86/kernel/ptrace.o
  CC      drivers/usb/serial/bus.o
  CC [M]  drivers/gpu/drm/xe/xe_dma_buf.o
  CC [M]  drivers/gpu/drm/i915/i915_utils.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_connectors.o
  CC [M]  net/netfilter/nf_conntrack_proto_sctp.o
  LD [M]  drivers/net/phy/aquantia.o
  AR      drivers/net/phy/built-in.a
  CC      drivers/usb/serial/console.o
  CC      fs/btrfs/inode.o
  CC      kernel/trace/trace_nop.o
  CC      drivers/base/memory.o
  CC      kernel/trace/trace_functions_graph.o
  CC [M]  drivers/gpu/drm/nouveau/nvif/driver.o
  CC      drivers/usb/storage/initializers.o
  CC      net/core/selftests.o
  CC [M]  drivers/gpu/drm/nouveau/nvif/event.o
  CC      fs/nfs/nfs2super.o
  CC      fs/efivarfs/super.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/atom.o
  CC      fs/ext4/symlink.o
  CC      fs/ext4/sysfs.o
  CC      drivers/usb/serial/ftdi_sio.o
  CC      drivers/usb/serial/pl2303.o
  CC [M]  drivers/gpu/drm/ast/ast_main.o
  CC      fs/btrfs/file.o
  CC      drivers/acpi/acpica/nssearch.o
  LD [M]  drivers/ptp/ptp.o
  LD [M]  drivers/ptp/ptp_kvm.o
  CC      drivers/power/supply/power_supply_leds.o
  AR      drivers/thermal/broadcom/built-in.a
  CC      drivers/watchdog/watchdog_core.o
  CC      drivers/usb/core/port.o
  AR      drivers/thermal/samsung/built-in.a
  CC      drivers/thermal/intel/intel_tcc.o
  CC      mm/mremap.o
  CC      drivers/watchdog/watchdog_dev.o
  CC [M]  arch/x86/kvm/vmx/vmx.o
  CC      fs/ext4/xattr.o
  CC      lib/ratelimit.o
  CC      drivers/thermal/intel/therm_throt.o
  CC      drivers/usb/storage/sierra_ms.o
  CC [M]  drivers/thermal/intel/x86_pkg_temp_thermal.o
  CC      net/ipv4/tcp_ulp.o
  CC      drivers/usb/storage/option_ms.o
  CC [M]  drivers/gpu/drm/xe/xe_engine.o
  CC      drivers/usb/storage/usual-tables.o
  CC      drivers/acpi/acpica/nsutils.o
  CC [M]  drivers/gpu/drm/i915/intel_clock_gating.o
  CC [M]  drivers/hwmon/acpi_power_meter.o
  CC      fs/efivarfs/vars.o
  CC [M]  drivers/hwmon/coretemp.o
  CC      net/ipv4/tcp_offload.o
  CC      drivers/base/module.o
  CC [M]  drivers/gpu/drm/nouveau/nvif/fifo.o
  CC      arch/x86/kernel/tls.o
  CC      drivers/power/supply/power_supply_hwmon.o
  CC      arch/x86/kernel/step.o
  CC      lib/rbtree.o
  AR      net/bridge/built-in.a
  LD [M]  net/bridge/br_netfilter.o
  CC      net/ipv6/xfrm6_protocol.o
  CC [M]  arch/x86/kvm/kvm-asm-offsets.s
  CC      drivers/acpi/proc.o
  CC      fs/nfs/proc.o
  CC [M]  drivers/gpu/drm/nouveau/nvif/head.o
  CC      kernel/trace/fgraph.o
  CC [M]  net/netfilter/nf_conntrack_netlink.o
  CC [M]  drivers/gpu/drm/nouveau/nvif/mem.o
  CC [M]  drivers/gpu/drm/ast/ast_mm.o
  CC      net/core/ptp_classifier.o
  CC      drivers/base/pinctrl.o
  CC      drivers/usb/core/hcd-pci.o
  CC      kernel/trace/blktrace.o
  CC      fs/ext4/xattr_hurd.o
  CC      drivers/acpi/acpica/nswalk.o
  CC      drivers/usb/host/uhci-hcd.o
  CC      drivers/base/platform-msi.o
  CC      lib/seq_buf.o
  CC [M]  drivers/gpu/drm/ast/ast_mode.o
  AR      drivers/usb/storage/built-in.a
  CC      fs/ext4/xattr_trusted.o
  AR      drivers/power/supply/built-in.a
  AR      drivers/power/built-in.a
  CC      kernel/cpu.o
  CC      drivers/watchdog/softdog.o
  CC      mm/msync.o
  CC [M]  drivers/thermal/intel/intel_menlow.o
  AR      fs/efivarfs/built-in.a
  AR      drivers/usb/serial/built-in.a
  CC      arch/x86/kernel/i8237.o
  CC [M]  drivers/gpu/drm/ast/ast_post.o
  CC [M]  drivers/gpu/drm/ast/ast_dp501.o
  CC [M]  drivers/md/persistent-data/dm-array.o
  CC      drivers/md/md.o
  CC [M]  drivers/md/persistent-data/dm-bitset.o
  CC      drivers/md/md-bitmap.o
  AR      drivers/hwmon/built-in.a
  CC      kernel/trace/trace_events.o
  CC      drivers/usb/core/usb-acpi.o
  CC      net/l3mdev/l3mdev.o
  CC [M]  net/bluetooth/af_bluetooth.o
  CC      drivers/base/physical_location.o
  CC      drivers/acpi/acpica/nsxfeval.o
  CC [M]  net/bluetooth/hci_core.o
  CC [M]  arch/x86/kvm/vmx/pmu_intel.o
  CC [M]  drivers/gpu/drm/nouveau/nvif/mmu.o
  CC [M]  arch/x86/kvm/vmx/vmcs12.o
  AR      drivers/watchdog/built-in.a
  CC      fs/btrfs/defrag.o
  CC      arch/x86/kernel/stacktrace.o
  CC      net/ipv4/tcp_plb.o
  CC      net/ipv4/datagram.o
  CC [M]  drivers/gpu/drm/xe/xe_exec.o
  CC      lib/show_mem.o
  CC      fs/ext4/xattr_user.o
  CC      mm/page_vma_mapped.o
  CC [M]  drivers/gpu/drm/i915/intel_device_info.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_fence.o
  CC      net/ipv6/netfilter.o
  CC      lib/siphash.o
  CC      drivers/base/trace.o
  CC      net/ipv6/fib6_rules.o
  CC      mm/pagewalk.o
  CC      net/core/netprio_cgroup.o
  CC      fs/nfs/nfs2xdr.o
  CC      fs/ext4/fast_commit.o
  CC      drivers/acpi/acpica/nsxfname.o
  CC      fs/ext4/orphan.o
  AR      drivers/thermal/intel/built-in.a
  AR      drivers/thermal/st/built-in.a
  AR      drivers/thermal/qcom/built-in.a
  AR      drivers/thermal/tegra/built-in.a
  AR      drivers/thermal/mediatek/built-in.a
  CC      drivers/thermal/thermal_core.o
  CC      drivers/opp/core.o
  CC [M]  drivers/gpu/drm/i915/intel_memory_region.o
  AR      drivers/usb/core/built-in.a
  CC      drivers/opp/cpu.o
  CC [M]  drivers/md/persistent-data/dm-block-manager.o
  CC      arch/x86/kernel/reboot.o
  CC [M]  net/netfilter/nf_nat_core.o
  AR      net/l3mdev/built-in.a
  CC      lib/string.o
  CC      fs/btrfs/extent_map.o
  CC      drivers/thermal/thermal_sysfs.o
  CC      kernel/exit.o
  CC      drivers/gpu/drm/drm_mipi_dsi.o
  CC [M]  net/netfilter/nf_nat_proto.o
  CC [M]  drivers/gpu/drm/nouveau/nvif/outp.o
  CC      arch/x86/kernel/msr.o
  CC      arch/x86/kernel/cpuid.o
  CC      lib/timerqueue.o
  AR      drivers/base/built-in.a
  CC      drivers/acpi/acpica/nsxfobj.o
  CC      lib/vsprintf.o
  CC [M]  drivers/gpu/drm/xe/xe_execlist.o
  CC [M]  drivers/gpu/drm/ast/ast_dp.o
  CC      arch/x86/kernel/early-quirks.o
  CC      drivers/opp/debugfs.o
  CC [M]  drivers/gpu/drm/drm_aperture.o
  CC      net/ipv4/raw.o
  CC      kernel/softirq.o
  CC      drivers/thermal/thermal_trip.o
  CC      mm/pgtable-generic.o
  CC [M]  drivers/md/persistent-data/dm-space-map-common.o
  CC [M]  drivers/md/persistent-data/dm-space-map-disk.o
  CC      drivers/thermal/thermal_helpers.o
  CC      lib/win_minmax.o
  CC      net/core/dst_cache.o
  CC      drivers/acpi/acpica/psargs.o
  CC      drivers/thermal/thermal_hwmon.o
  CC      mm/rmap.o
  CC      drivers/thermal/gov_fair_share.o
  CC [M]  arch/x86/kvm/vmx/hyperv.o
  CC      lib/xarray.o
  CC      net/ipv6/proc.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.o
  CC [M]  drivers/gpu/drm/i915/intel_pcode.o
  CC      net/core/gro_cells.o
  CC [M]  net/bluetooth/hci_conn.o
  CC [M]  net/netfilter/nf_nat_helper.o
  CC [M]  drivers/gpu/drm/drm_atomic.o
  CC      lib/lockref.o
  CC [M]  drivers/gpu/drm/xe/xe_force_wake.o
  CC [M]  drivers/gpu/drm/nouveau/nvif/timer.o
  CC [M]  drivers/gpu/drm/nouveau/nvif/vmm.o
  CC      mm/vmalloc.o
  CC      drivers/acpi/acpica/psloop.o
  CC      drivers/usb/host/xhci.o
  LD [M]  drivers/gpu/drm/ast/ast.o
  CC      fs/nfs/nfs3super.o
  CC      drivers/usb/gadget/udc/core.o
  CC      arch/x86/kernel/smp.o
  CC      drivers/usb/gadget/udc/trace.o
  CC      arch/x86/kernel/smpboot.o
  AR      drivers/usb/gadget/function/built-in.a
  CC      arch/x86/kernel/tsc_sync.o
  CC      drivers/md/md-autodetect.o
  CC      arch/x86/kernel/setup_percpu.o
  CC      drivers/acpi/acpica/psobject.o
  CC [M]  drivers/md/persistent-data/dm-space-map-metadata.o
  CC      lib/bcd.o
  CC      drivers/thermal/gov_step_wise.o
  CC      drivers/usb/host/xhci-mem.o
  AR      drivers/opp/built-in.a
  CC      arch/x86/kernel/ftrace.o
  AS      arch/x86/kernel/ftrace_64.o
  CC      drivers/md/dm-uevent.o
  CC      fs/btrfs/sysfs.o
  CC      kernel/trace/trace_export.o
  AR      drivers/net/ethernet/cortina/built-in.a
  AR      drivers/net/ethernet/engleder/built-in.a
  AR      drivers/net/ethernet/ezchip/built-in.a
  AR      drivers/net/ethernet/fungible/built-in.a
  AR      drivers/net/ethernet/huawei/built-in.a
  CC [M]  drivers/net/ethernet/intel/e1000/e1000_main.o
  CC      drivers/acpi/acpica/psopcode.o
  CC [M]  drivers/net/ethernet/intel/e1000e/82571.o
  CC [M]  fs/netfs/buffered_read.o
  CC [M]  drivers/net/ethernet/intel/e1000/e1000_hw.o
  CC      net/core/failover.o
  CC [M]  net/netfilter/nf_nat_redirect.o
  CC      arch/x86/kernel/trace_clock.o
  CC      drivers/thermal/gov_user_space.o
  CC [M]  drivers/gpu/drm/i915/intel_region_ttm.o
  CC [M]  drivers/gpu/drm/xe/xe_ggtt.o
  CC [M]  drivers/net/ethernet/intel/igb/igb_main.o
  CC [M]  drivers/gpu/drm/nouveau/nvif/user.o
  CC      arch/x86/kernel/trace.o
  CC      lib/sort.o
  AR      drivers/usb/gadget/legacy/built-in.a
  CC      net/ipv4/udp.o
  CC [M]  drivers/gpu/drm/i915/intel_runtime_pm.o
  CC      drivers/acpi/acpica/psopinfo.o
  CC [M]  net/bluetooth/hci_event.o
  CC      lib/parser.o
  CC      net/ipv6/syncookies.o
  CC      net/ipv6/mip6.o
  CC      lib/debug_locks.o
  CC      drivers/md/dm.o
  CC [M]  drivers/md/persistent-data/dm-transaction-manager.o
  CC      arch/x86/kernel/rethook.o
  CC      fs/nfs/nfs3client.o
  CC [M]  drivers/gpu/drm/xe/xe_gt.o
  CC [M]  arch/x86/kvm/vmx/nested.o
  CC [M]  drivers/gpu/drm/xe/xe_gt_clock.o
  CC      kernel/trace/trace_event_perf.o
  CC      drivers/acpi/acpica/psparse.o
  CC [M]  drivers/net/ethernet/intel/igb/igb_ethtool.o
  AR      drivers/thermal/built-in.a
  CC      drivers/acpi/bus.o
  CC      drivers/acpi/acpica/psscope.o
  CC [M]  drivers/gpu/drm/drm_atomic_uapi.o
  CC [M]  drivers/gpu/drm/drm_auth.o
  CC [M]  drivers/net/ethernet/intel/igb/e1000_82575.o
  CC      lib/random32.o
  CC      kernel/trace/trace_events_filter.o
  CC      kernel/trace/trace_events_trigger.o
  AR      drivers/usb/gadget/udc/built-in.a
  CC      drivers/usb/gadget/usbstring.o
  CC      arch/x86/kernel/crash_core_64.o
  AR      net/core/built-in.a
  CC [M]  fs/netfs/io.o
  CC      mm/page_alloc.o
  CC      arch/x86/kernel/module.o
  CC [M]  net/dns_resolver/dns_key.o
  CC [M]  drivers/gpu/drm/nouveau/nvif/userc361.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/core/client.o
  CC      drivers/acpi/acpica/pstree.o
  CC [M]  drivers/gpu/drm/i915/intel_sbi.o
  CC      drivers/acpi/acpica/psutils.o
  CC      lib/bust_spinlocks.o
  CC [M]  drivers/md/persistent-data/dm-btree.o
  CC      lib/kasprintf.o
  CC [M]  net/netfilter/nf_nat_masquerade.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_object.o
  CC [M]  drivers/net/ethernet/intel/e1000e/ich8lan.o
  CC      fs/nfs/nfs3proc.o
  CC      kernel/trace/trace_eprobe.o
  CC      drivers/acpi/acpica/pswalk.o
  CC [M]  drivers/md/persistent-data/dm-btree-remove.o
  CC [M]  net/netfilter/x_tables.o
  CC      drivers/usb/gadget/config.o
  CC [M]  drivers/gpu/drm/drm_blend.o
  CC [M]  net/bluetooth/mgmt.o
  CC [M]  drivers/net/ethernet/intel/e1000e/80003es2lan.o
  CC [M]  drivers/gpu/drm/xe/xe_gt_debugfs.o
  CC      net/ipv6/addrconf_core.o
  CC      kernel/trace/trace_kprobe.o
  CC [M]  drivers/gpu/drm/i915/intel_step.o
  CC [M]  net/dns_resolver/dns_query.o
  CC      drivers/acpi/glue.o
  CC      arch/x86/kernel/early_printk.o
  CC [M]  drivers/gpu/drm/drm_bridge.o
  CC      fs/btrfs/accessors.o
  CC      lib/bitmap.o
  CC [M]  drivers/gpu/drm/xe/xe_gt_mcr.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/core/engine.o
  CC      drivers/acpi/acpica/psxface.o
  CC      kernel/trace/error_report-traces.o
  CC [M]  drivers/net/ethernet/intel/e1000e/mac.o
  CC [M]  drivers/net/ethernet/intel/e1000/e1000_ethtool.o
  CC      kernel/trace/power-traces.o
  CC [M]  fs/netfs/iterator.o
  CC      arch/x86/kernel/hpet.o
  CC      drivers/cpufreq/cpufreq.o
  CC      kernel/trace/rpm-traces.o
  CC      arch/x86/kernel/amd_nb.o
  CC      drivers/usb/gadget/epautoconf.o
  CC [M]  drivers/gpu/drm/xe/xe_gt_pagefault.o
  LD [M]  net/dns_resolver/dns_resolver.o
  CC      net/devres.o
  CC      drivers/acpi/acpica/rsaddr.o
  CC [M]  drivers/gpu/drm/i915/intel_uncore.o
  CC [M]  drivers/md/persistent-data/dm-btree-spine.o
  CC      net/socket.o
  CC      drivers/acpi/scan.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_gart.o
  CC [M]  drivers/gpu/drm/drm_cache.o
  CC [M]  drivers/gpu/drm/drm_client.o
  CC      drivers/cpufreq/freq_table.o
  CC      net/ipv6/exthdrs_core.o
  CC      drivers/cpufreq/cpufreq_performance.o
  CC [M]  arch/x86/kvm/vmx/posted_intr.o
  CC      drivers/acpi/acpica/rscalc.o
  CC      mm/init-mm.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/core/enum.o
  CC [M]  net/bluetooth/hci_sock.o
  CC      fs/nfs/nfs3xdr.o
  CC      drivers/usb/host/xhci-ext-caps.o
  CC [M]  drivers/net/ethernet/intel/igb/e1000_mac.o
  CC      net/ipv4/udplite.o
  CC [M]  net/bluetooth/hci_sysfs.o
  CC      drivers/usb/gadget/composite.o
  CC      lib/scatterlist.o
  CC      drivers/acpi/resource.o
  CC      drivers/cpuidle/governors/menu.o
  CC [M]  fs/netfs/main.o
  CC      drivers/cpuidle/governors/haltpoll.o
  CC      drivers/cpuidle/cpuidle.o
  CC      drivers/acpi/acpi_processor.o
  CC      fs/btrfs/xattr.o
  CC [M]  drivers/net/ethernet/intel/igb/e1000_nvm.o
  LD [M]  drivers/md/persistent-data/dm-persistent-data.o
  CC      drivers/mmc/core/core.o
  CC      arch/x86/kernel/kvm.o
  CC      drivers/acpi/acpica/rscreate.o
  CC      drivers/mmc/core/bus.o
  CC      drivers/mmc/core/host.o
  CC [M]  drivers/usb/class/usbtmc.o
  CC      drivers/cpufreq/cpufreq_ondemand.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_encoders.o
  AR      drivers/ufs/built-in.a
  AR      drivers/net/usb/built-in.a
  CC [M]  drivers/net/usb/pegasus.o
  AR      drivers/leds/trigger/built-in.a
  CC [M]  drivers/leds/trigger/ledtrig-audio.o
  AR      drivers/firmware/arm_ffa/built-in.a
  AR      drivers/firmware/arm_scmi/built-in.a
  CC [M]  drivers/gpu/drm/nouveau/nvkm/core/event.o
  AR      drivers/firmware/broadcom/built-in.a
  AR      drivers/firmware/cirrus/built-in.a
  CC      drivers/usb/host/xhci-ring.o
  AR      drivers/firmware/meson/built-in.a
  CC [M]  net/netfilter/xt_tcpudp.o
  CC      drivers/firmware/efi/efi-bgrt.o
  CC      net/ipv6/ip6_checksum.o
  CC [M]  drivers/gpu/drm/xe/xe_gt_sysfs.o
  CC      drivers/firmware/efi/libstub/efi-stub-helper.o
  CC      drivers/firmware/efi/efi.o
  CC      drivers/md/dm-table.o
  CC      drivers/acpi/acpica/rsdumpinfo.o
  CC      kernel/trace/trace_dynevent.o
  CC      net/ipv4/udp_offload.o
  CC [M]  drivers/net/ethernet/intel/e1000/e1000_param.o
  AR      drivers/firmware/imx/built-in.a
  CC [M]  net/bluetooth/l2cap_core.o
  CC      lib/list_sort.o
  CC      drivers/usb/host/xhci-hub.o
  AR      drivers/cpuidle/governors/built-in.a
  AR      drivers/leds/blink/built-in.a
  CC      drivers/cpuidle/driver.o
  AR      drivers/leds/simple/built-in.a
  CC      drivers/leds/led-core.o
  CC      lib/uuid.o
  CC      drivers/leds/led-class.o
  CC [M]  drivers/net/ethernet/intel/e1000e/manage.o
  CC [M]  fs/netfs/objects.o
  AR      drivers/firmware/psci/built-in.a
  CC      net/ipv4/arp.o
  CC      drivers/acpi/processor_core.o
  CC      drivers/md/dm-target.o
  CC      drivers/acpi/acpica/rsinfo.o
  CC [M]  drivers/net/ethernet/intel/e1000e/nvm.o
  CC      drivers/usb/host/xhci-dbg.o
  AR      fs/ext4/built-in.a
  CC      lib/iov_iter.o
  CC      drivers/usb/host/xhci-trace.o
  CC [M]  net/bluetooth/l2cap_sock.o
  CC      net/ipv6/ip6_icmp.o
  CC      drivers/acpi/processor_pdc.o
  CC      drivers/acpi/ec.o
  CC      drivers/cpufreq/cpufreq_governor.o
  CC [M]  drivers/gpu/drm/xe/xe_gt_tlb_invalidation.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_display.o
  CC      fs/btrfs/ordered-data.o
  CC      drivers/firmware/efi/libstub/gop.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/core/firmware.o
  CC      drivers/cpuidle/governor.o
  CC      arch/x86/kernel/kvmclock.o
  CC      drivers/acpi/acpica/rsio.o
  CC [M]  net/bluetooth/smp.o
  CC      net/ipv4/icmp.o
  CC      kernel/trace/trace_probe.o
  CC      drivers/leds/led-triggers.o
  CC [M]  drivers/gpu/drm/xe/xe_gt_topology.o
  CC      drivers/acpi/dock.o
  CC      drivers/acpi/pci_root.o
  AR      fs/nfs/built-in.a
  CC      drivers/usb/host/xhci-debugfs.o
  CC      net/compat.o
  CC [M]  net/netfilter/xt_mark.o
  CC      kernel/trace/trace_uprobe.o
  CC [M]  drivers/gpu/drm/xe/xe_guc.o
  CC      drivers/usb/gadget/functions.o
  CC      net/sysctl_net.o
  LD [M]  fs/netfs/netfs.o
  CC [M]  drivers/net/ethernet/intel/e1000e/phy.o
  CC [M]  drivers/net/usb/rtl8150.o
  CC      drivers/cpuidle/sysfs.o
  CC [M]  drivers/net/ethernet/intel/igb/e1000_phy.o
  CC      drivers/acpi/acpica/rsirq.o
  CC      drivers/cpufreq/cpufreq_governor_attr_set.o
  CC [M]  drivers/net/ethernet/intel/e1000e/param.o
  LD [M]  drivers/net/ethernet/intel/e1000/e1000.o
  CC [M]  drivers/net/ethernet/intel/igc/igc_main.o
  CC      drivers/firmware/efi/libstub/secureboot.o
  CC [M]  drivers/net/ethernet/intel/igc/igc_mac.o
  CC      arch/x86/kernel/paravirt.o
  CC      net/ipv6/output_core.o
  CC      drivers/mmc/core/mmc.o
  CC [M]  drivers/net/ethernet/intel/igc/igc_i225.o
  CC      drivers/md/dm-linear.o
  CC [M]  drivers/net/ethernet/intel/igb/e1000_mbx.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/core/gpuobj.o
  CC [M]  drivers/net/usb/r8152.o
  CC      drivers/acpi/acpica/rslist.o
  CC [M]  fs/fscache/cache.o
  AR      drivers/leds/built-in.a
  CC      drivers/firmware/efi/vars.o
  CC      net/ipv4/devinet.o
  CC      drivers/usb/gadget/configfs.o
  CC      drivers/acpi/acpica/rsmemory.o
  CC      drivers/cpufreq/acpi-cpufreq.o
  CC [M]  drivers/gpu/drm/i915/intel_wakeref.o
  CC      drivers/cpuidle/poll_state.o
  CC [M]  net/netfilter/xt_nat.o
  CC      drivers/acpi/pci_link.o
  AR      drivers/crypto/stm32/built-in.a
  CC      drivers/acpi/pci_irq.o
  AR      drivers/crypto/xilinx/built-in.a
  AR      drivers/crypto/hisilicon/built-in.a
  AR      drivers/crypto/keembay/built-in.a
  CC      drivers/usb/host/xhci-pci.o
  CC      drivers/cpuidle/cpuidle-haltpoll.o
  AR      drivers/crypto/built-in.a
  CC      drivers/firmware/efi/libstub/tpm.o
  CC      kernel/resource.o
  CC      mm/memblock.o
  CC      kernel/sysctl.o
  CC      kernel/capability.o
  CC [M]  drivers/gpu/drm/xe/xe_guc_ads.o
  CC      drivers/acpi/acpica/rsmisc.o
  CC      drivers/md/dm-stripe.o
  CC      drivers/acpi/acpica/rsserial.o
  CC      arch/x86/kernel/pvclock.o
  CC [M]  net/bluetooth/lib.o
  CC [M]  drivers/gpu/drm/i915/vlv_sideband.o
  LD [M]  arch/x86/kvm/kvm.o
  CC [M]  drivers/gpu/drm/i915/vlv_suspend.o
  CC [M]  fs/smbfs_common/cifs_arc4.o
  CC      drivers/md/dm-ioctl.o
  UPD     arch/x86/kvm/kvm-asm-offsets.h
  CC [M]  fs/cifs/trace.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_i2c.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/core/intr.o
  CC [M]  fs/cifs/cifsfs.o
  CC      fs/btrfs/extent_io.o
  CC [M]  net/bluetooth/ecdh_helper.o
  CC [M]  net/bluetooth/hci_request.o
  CC      drivers/firmware/efi/libstub/file.o
  CC [M]  drivers/net/ipvlan/ipvlan_core.o
  AR      drivers/cpuidle/built-in.a
  CC [M]  drivers/gpu/drm/nouveau/nvkm/core/ioctl.o
  CC [M]  fs/smbfs_common/cifs_md4.o
  CC [M]  fs/fscache/cookie.o
  CC      net/ipv6/protocol.o
  CC [M]  net/bluetooth/mgmt_util.o
  AS [M]  arch/x86/kvm/vmx/vmenter.o
  CC [M]  net/bluetooth/mgmt_config.o
  LD [M]  arch/x86/kvm/kvm-intel.o
  CC      drivers/cpufreq/intel_pstate.o
  CC      drivers/acpi/acpica/rsutils.o
  CC [M]  drivers/net/ethernet/intel/igb/e1000_i210.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_gem.o
  CC      arch/x86/kernel/pcspeaker.o
  CC      net/ipv6/ip6_offload.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_ring.o
  CC      net/ipv4/af_inet.o
  CC [M]  net/netfilter/xt_REDIRECT.o
  CC      kernel/trace/rethook.o
  CC      drivers/firmware/efi/reboot.o
  CC [M]  drivers/net/ipvlan/ipvlan_main.o
  CC      drivers/usb/gadget/u_f.o
  CC      lib/clz_ctz.o
  CC      lib/bsearch.o
  CC [M]  drivers/net/ethernet/intel/e1000e/ethtool.o
  CC [M]  drivers/gpu/drm/xe/xe_guc_ct.o
  CC      drivers/md/dm-io.o
  CC      lib/find_bit.o
  CC [M]  drivers/net/ethernet/intel/igc/igc_base.o
  CC      drivers/firmware/efi/libstub/mem.o
  CC      drivers/mmc/core/mmc_ops.o
  CC      drivers/firmware/efi/libstub/random.o
  CC      arch/x86/kernel/check.o
  AR      drivers/usb/host/built-in.a
  CC      drivers/acpi/acpica/rsxface.o
  CC [M]  drivers/net/ethernet/intel/e1000e/netdev.o
  CC      kernel/ptrace.o
  CC [M]  drivers/gpu/drm/xe/xe_guc_debugfs.o
  CC      mm/memory_hotplug.o
  CC [M]  net/bluetooth/hci_codec.o
  CC [M]  fs/fuse/dev.o
  CC      lib/llist.o
  CC      net/ipv6/tcpv6_offload.o
  CC      drivers/acpi/acpi_lpss.o
  CC [M]  drivers/gpu/drm/i915/soc/intel_dram.o
  CC [M]  fs/fuse/dir.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/core/memory.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/core/mm.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/core/object.o
  AR      drivers/usb/gadget/built-in.a
  CC      lib/memweight.o
  AR      drivers/usb/built-in.a
  CC [M]  drivers/net/ethernet/intel/e1000e/ptp.o
  AR      kernel/trace/built-in.a
  AR      drivers/net/ethernet/i825xx/built-in.a
  CC [M]  drivers/net/usb/asix_devices.o
  CC      lib/kfifo.o
  CC [M]  drivers/net/usb/asix_common.o
  CC [M]  drivers/net/ethernet/intel/igb/igb_ptp.o
  CC [M]  fs/overlayfs/super.o
  CC      drivers/acpi/acpica/tbdata.o
  CC [M]  net/bluetooth/eir.o
  CC [M]  fs/overlayfs/namei.o
  CC      arch/x86/kernel/uprobes.o
  CC      net/ipv6/exthdrs_offload.o
  CC      drivers/firmware/efi/libstub/randomalloc.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_cs.o
  CC      net/ipv4/igmp.o
  CC [M]  fs/fscache/io.o
  CC      drivers/mmc/core/sd.o
  CC [M]  net/netfilter/xt_MASQUERADE.o
  CC      drivers/mmc/core/sd_ops.o
  CC      drivers/md/dm-kcopyd.o
  CC      mm/madvise.o
  CC      net/ipv6/inet6_hashtables.o
  CC      drivers/firmware/efi/memattr.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_bios.o
  CC      net/ipv6/mcast_snoop.o
  CC      drivers/md/dm-sysfs.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/core/oproxy.o
  CC      drivers/acpi/acpica/tbfadt.o
  CC [M]  drivers/net/ipvlan/ipvlan_l3s.o
  CC [M]  net/bluetooth/hci_sync.o
  CC      mm/page_io.o
  CC      lib/percpu-refcount.o
  CC      kernel/user.o
  CC      drivers/firmware/efi/libstub/pci.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/core/option.o
  CC      drivers/acpi/acpica/tbfind.o
  CC [M]  drivers/gpu/drm/xe/xe_guc_hwconfig.o
  CC [M]  drivers/gpu/drm/xe/xe_guc_log.o
  CC      drivers/acpi/acpica/tbinstal.o
  CC [M]  net/netfilter/xt_addrtype.o
  CC [M]  drivers/gpu/drm/i915/soc/intel_gmch.o
  CC      arch/x86/kernel/perf_regs.o
  CC [M]  drivers/net/usb/ax88172a.o
  CC      drivers/firmware/efi/libstub/skip_spaces.o
  AR      drivers/cpufreq/built-in.a
  CC [M]  drivers/gpu/drm/xe/xe_guc_pc.o
  CC      kernel/signal.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/core/ramht.o
  CC [M]  fs/fscache/main.o
  CC      lib/rhashtable.o
  CC [M]  net/netfilter/xt_conntrack.o
  CC [M]  drivers/net/usb/ax88179_178a.o
  CC      drivers/mmc/core/sdio.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/core/subdev.o
  CC      drivers/acpi/acpi_apd.o
  CC      drivers/md/dm-stats.o
  CC      drivers/acpi/acpica/tbprint.o
  CC [M]  drivers/net/usb/cdc_ether.o
  CC      drivers/acpi/acpica/tbutils.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/core/uevent.o
  CC      drivers/firmware/efi/tpm.o
  CC [M]  fs/fuse/file.o
  AR      drivers/net/ethernet/microsoft/built-in.a
  CC      net/ipv4/fib_frontend.o
  CC [M]  drivers/net/ethernet/intel/igb/igb_hwmon.o
  CC [M]  fs/cifs/cifs_debug.o
  CC [M]  fs/overlayfs/util.o
  CC      drivers/firmware/efi/libstub/lib-cmdline.o
  CC [M]  drivers/net/ethernet/intel/igc/igc_nvm.o
  CC [M]  drivers/net/ethernet/intel/igc/igc_phy.o
  CC      drivers/clocksource/acpi_pm.o
  CC      drivers/hid/usbhid/hid-core.o
  AR      drivers/staging/media/built-in.a
  CC      drivers/hid/usbhid/hiddev.o
  AR      drivers/staging/built-in.a
  CC      drivers/firmware/efi/libstub/lib-ctype.o
  CC      drivers/clocksource/i8253.o
  AR      drivers/platform/x86/amd/built-in.a
  CC      drivers/mmc/core/sdio_ops.o
  CC      drivers/platform/x86/intel/pmc/core.o
  CC      arch/x86/kernel/tracepoint.o
  CC      drivers/firmware/efi/libstub/alignedmem.o
  CC      drivers/firmware/efi/libstub/relocate.o
  CC      drivers/platform/x86/p2sb.o
  CC [M]  drivers/platform/x86/intel/pmt/class.o
  CC      drivers/platform/x86/intel/turbo_max_3.o
  CC [M]  net/ipv6/ip6_udp_tunnel.o
  CC      drivers/acpi/acpica/tbxface.o
  CC      drivers/acpi/acpi_platform.o
  LD [M]  drivers/net/ipvlan/ipvlan.o
  CC [M]  drivers/net/ethernet/intel/igc/igc_diag.o
  CC      kernel/sys.o
  CC      mm/swap_state.o
  CC      drivers/firmware/efi/memmap.o
  CC [M]  drivers/net/ethernet/intel/igc/igc_ethtool.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/nvfw/fw.o
  CC [M]  drivers/gpu/drm/i915/soc/intel_pch.o
  CC [M]  drivers/net/ethernet/intel/igbvf/vf.o
  CC      arch/x86/kernel/itmt.o
  CC      fs/btrfs/volumes.o
  CC [M]  drivers/net/ethernet/intel/igbvf/mbx.o
  CC      drivers/firmware/efi/esrt.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/nvfw/hs.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_benchmark.o
  AR      drivers/clocksource/built-in.a
  CC [M]  drivers/gpu/drm/xe/xe_guc_submit.o
  AR      drivers/net/ethernet/litex/built-in.a
  CC      fs/btrfs/async-thread.o
  AR      drivers/net/ethernet/microchip/built-in.a
  CC [M]  drivers/gpu/drm/nouveau/nvkm/nvfw/ls.o
  CC      arch/x86/kernel/umip.o
  CC      drivers/acpi/acpica/tbxfload.o
  CC      arch/x86/kernel/unwind_orc.o
  CC      drivers/platform/x86/pmc_atom.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/atombios_dp.o
  CC      drivers/firmware/efi/libstub/printk.o
  CC [M]  net/netfilter/xt_ipvs.o
  CC      drivers/firmware/efi/efi-pstore.o
  CC      drivers/acpi/acpica/tbxfroot.o
  CC [M]  fs/fscache/volume.o
  CC      drivers/mmc/core/sdio_bus.o
  LD [M]  drivers/net/ethernet/intel/igb/igb.o
  CC [M]  drivers/platform/x86/intel/pmt/telemetry.o
  CC [M]  drivers/net/ethernet/intel/ixgbe/ixgbe_main.o
  CC      drivers/acpi/acpi_pnp.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/nvfw/acr.o
  CC [M]  drivers/platform/x86/wmi.o
  CC      lib/base64.o
  CC [M]  drivers/net/ethernet/intel/igc/igc_ptp.o
  CC [M]  fs/overlayfs/inode.o
  CC      arch/x86/kernel/callthunks.o
  CC      drivers/acpi/power.o
  CC      lib/once.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/nvfw/flcn.o
  CC      drivers/md/dm-rq.o
  CC [M]  drivers/platform/x86/intel/vsec.o
  CC [M]  drivers/net/ethernet/intel/igc/igc_dump.o
  CC      drivers/acpi/acpica/utaddress.o
  CC [M]  drivers/gpu/drm/xe/xe_hw_engine.o
  CC [M]  drivers/platform/x86/wmi-bmof.o
  AR      net/ipv6/built-in.a
  CC [M]  drivers/platform/x86/mxm-wmi.o
  CC [M]  drivers/platform/x86/intel_ips.o
  CC      drivers/platform/x86/intel/pmc/spt.o
  CC [M]  drivers/net/ethernet/intel/igbvf/ethtool.o
  CC      drivers/firmware/efi/libstub/vsprintf.o
  CC      fs/btrfs/ioctl.o
  CC      drivers/md/dm-io-rewind.o
  CC [M]  fs/cifs/connect.o
  CC [M]  fs/cifs/dir.o
  CC      drivers/firmware/efi/cper.o
  CC [M]  drivers/net/usb/cdc_eem.o
  CC [M]  drivers/platform/x86/intel/pmt/crashlog.o
  CC [M]  drivers/net/usb/smsc75xx.o
  CC      arch/x86/kernel/mmconf-fam10h_64.o
  CC      mm/swapfile.o
  CC      lib/refcount.o
  AR      drivers/hid/usbhid/built-in.a
  CC      drivers/firmware/efi/libstub/x86-stub.o
  CC      drivers/hid/hid-core.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_afmt.o
  CC [M]  drivers/gpu/drm/i915/i915_memcpy.o
  CC      drivers/mmc/core/sdio_cis.o
  CC [M]  fs/cifs/file.o
  CC      drivers/acpi/acpica/utalloc.o
  CC [M]  fs/fscache/proc.o
  CC      lib/usercopy.o
  CC      net/ipv4/fib_semantics.o
  CC [M]  drivers/net/ethernet/intel/ixgbevf/vf.o
  CC      drivers/platform/x86/intel/pmc/cnp.o
  CC [M]  drivers/net/ethernet/intel/ixgbevf/mbx.o
  CC      drivers/platform/x86/intel/pmc/icl.o
  LD [M]  net/netfilter/nf_conntrack.o
  CC [M]  drivers/net/ethernet/intel/ixgbevf/ethtool.o
  CC      fs/btrfs/locking.o
  CC [M]  drivers/gpu/drm/i915/i915_mm.o
  CC      fs/btrfs/orphan.o
  LD [M]  net/netfilter/nf_nat.o
  CC      lib/errseq.o
  AR      net/netfilter/built-in.a
  CC [M]  drivers/net/ethernet/intel/igbvf/netdev.o
  CC [M]  drivers/platform/x86/intel/rst.o
  CC      arch/x86/kernel/vsmp_64.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/falcon/base.o
  STUBCPY drivers/firmware/efi/libstub/alignedmem.stub.o
  CC      drivers/acpi/acpica/utascii.o
  LD [M]  drivers/platform/x86/intel/intel_vsec.o
  CC [M]  fs/overlayfs/file.o
  STUBCPY drivers/firmware/efi/libstub/efi-stub-helper.stub.o
  CC [M]  fs/overlayfs/dir.o
  CC      drivers/md/dm-builtin.o
  CC      kernel/umh.o
  CC      lib/bucket_locks.o
  CC [M]  drivers/md/dm-bufio.o
  LD [M]  drivers/platform/x86/intel/pmt/pmt_class.o
  STUBCPY drivers/firmware/efi/libstub/file.stub.o
  LD [M]  drivers/platform/x86/intel/pmt/pmt_telemetry.o
  CC      lib/generic-radix-tree.o
  LD [M]  drivers/platform/x86/intel/pmt/pmt_crashlog.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/falcon/cmdq.o
  CC      drivers/acpi/acpica/utbuffer.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_trace_points.o
  CC [M]  drivers/net/ethernet/intel/igc/igc_tsn.o
  CC [M]  fs/fuse/inode.o
  CC [M]  fs/overlayfs/readdir.o
  CC      fs/open.o
  CC      drivers/platform/x86/intel/pmc/tgl.o
  CC      fs/read_write.o
  CC      drivers/mmc/core/sdio_io.o
  CC [M]  drivers/net/usb/smsc95xx.o
  STUBCPY drivers/firmware/efi/libstub/gop.stub.o
  STUBCPY drivers/firmware/efi/libstub/lib-cmdline.stub.o
  STUBCPY drivers/firmware/efi/libstub/lib-ctype.stub.o
  LD [M]  fs/fscache/fscache.o
  STUBCPY drivers/firmware/efi/libstub/mem.stub.o
  STUBCPY drivers/firmware/efi/libstub/pci.stub.o
  AR      arch/x86/kernel/built-in.a
  CC [M]  drivers/net/ethernet/intel/ixgbe/ixgbe_common.o
  STUBCPY drivers/firmware/efi/libstub/printk.stub.o
  CC [M]  drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.o
  STUBCPY drivers/firmware/efi/libstub/random.stub.o
  AR      arch/x86/built-in.a
  STUBCPY drivers/firmware/efi/libstub/randomalloc.stub.o
  CC      drivers/mmc/core/sdio_irq.o
  STUBCPY drivers/firmware/efi/libstub/relocate.stub.o
  CC      drivers/mmc/core/slot-gpio.o
  STUBCPY drivers/firmware/efi/libstub/secureboot.stub.o
  CC [M]  drivers/net/ethernet/intel/ixgbe/ixgbe_82599.o
  STUBCPY drivers/firmware/efi/libstub/skip_spaces.stub.o
  LD [M]  drivers/net/ethernet/intel/e1000e/e1000e.o
  CC [M]  drivers/net/ethernet/intel/igc/igc_xdp.o
  STUBCPY drivers/firmware/efi/libstub/tpm.stub.o
  STUBCPY drivers/firmware/efi/libstub/vsprintf.stub.o
  STUBCPY drivers/firmware/efi/libstub/x86-stub.stub.o
  AR      drivers/firmware/efi/libstub/lib.a
  CC      drivers/firmware/efi/cper_cxl.o
  CC [M]  drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.o
  CC [M]  drivers/net/usb/mcs7830.o
  CC      drivers/acpi/acpica/utcksum.o
  CC      lib/string_helpers.o
  CC [M]  drivers/gpu/drm/xe/xe_hw_fence.o
  CC      kernel/workqueue.o
  CC [M]  drivers/gpu/drm/i915/i915_sw_fence.o
  CC [M]  drivers/net/ethernet/intel/ixgbevf/ipsec.o
  LD [M]  drivers/platform/x86/intel/intel-rst.o
  CC      drivers/acpi/acpica/utcopy.o
  CC      kernel/pid.o
  CC [M]  drivers/net/ethernet/intel/ixgbe/ixgbe_82598.o
  CC      drivers/platform/x86/intel/pmc/adl.o
  CC [M]  drivers/net/ethernet/intel/ixgbe/ixgbe_phy.o
  CC      drivers/acpi/event.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/falcon/fw.o
  CC [M]  drivers/net/vxlan/vxlan_core.o
  CC      drivers/firmware/efi/runtime-wrappers.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/falcon/msgq.o
  CC [M]  net/bluetooth/sco.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/falcon/qmgr.o
  CC      drivers/platform/x86/intel/pmc/mtl.o
  CC      drivers/net/loopback.o
  CC [M]  drivers/net/vxlan/vxlan_multicast.o
  CC [M]  drivers/net/vxlan/vxlan_vnifilter.o
  CC [M]  drivers/net/ethernet/intel/ixgb/ixgb_main.o
  CC      lib/hexdump.o
  CC [M]  fs/overlayfs/copy_up.o
  CC      drivers/mmc/core/regulator.o
  CC [M]  drivers/net/ethernet/intel/ixgb/ixgb_hw.o
  CC      drivers/acpi/acpica/utexcep.o
  CC      drivers/platform/x86/intel/pmc/pltdrv.o
  CC      drivers/hid/hid-input.o
  CC      drivers/acpi/evged.o
  CC      lib/kstrtox.o
  LD [M]  drivers/net/ethernet/intel/igc/igc.o
  AR      drivers/net/ethernet/intel/built-in.a
  CC      drivers/acpi/sysfs.o
  CC [M]  fs/fuse/control.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/atombios_encoders.o
  CC [M]  drivers/md/dm-bio-prison-v1.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/falcon/v1.o
  CC      drivers/acpi/acpica/utdebug.o
  CC [M]  drivers/gpu/drm/xe/xe_huc.o
  CC      drivers/acpi/acpica/utdecode.o
  CC      drivers/acpi/acpica/utdelete.o
  CC      drivers/mmc/core/debugfs.o
  CC      lib/debug_info.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/falcon/gm200.o
  AR      drivers/platform/x86/intel/pmc/built-in.a
  CC      drivers/acpi/acpica/uterror.o
  AR      drivers/platform/x86/intel/built-in.a
  CC [M]  drivers/gpu/drm/i915/i915_sw_fence_work.o
  AR      drivers/platform/x86/built-in.a
  CC      net/ipv4/fib_trie.o
  CC      drivers/acpi/acpica/uteval.o
  AR      drivers/platform/surface/built-in.a
  AR      drivers/platform/built-in.a
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_sa.o
  CC [M]  fs/fuse/xattr.o
  CC      drivers/acpi/property.o
  CC [M]  drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.o
  CC [M]  drivers/net/usb/usbnet.o
  CC      drivers/firmware/efi/dev-path-parser.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/atombios_i2c.o
  LD [M]  drivers/net/ethernet/intel/igbvf/igbvf.o
  CC [M]  drivers/gpu/drm/i915/i915_syncmap.o
  CC      fs/file_table.o
  CC [M]  drivers/md/dm-bio-prison-v2.o
  CC [M]  drivers/net/usb/cdc_ncm.o
  CC      net/ipv4/fib_notifier.o
  CC      mm/swap_slots.o
  CC      mm/dmapool.o
  CC      mm/hugetlb.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_dma_buf.o
  CC [M]  fs/fuse/acl.o
  CC [M]  fs/overlayfs/export.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_vm.o
  CC [M]  drivers/gpu/drm/i915/i915_user_extensions.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/falcon/gp102.o
  CC [M]  drivers/net/ethernet/intel/ixgb/ixgb_ee.o
  CC      drivers/acpi/acpica/utglobal.o
  CC [M]  drivers/net/ethernet/intel/ixgb/ixgb_ethtool.o
  CC [M]  drivers/md/dm-crypt.o
  CC      fs/super.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_vm_pt.o
  CC [M]  drivers/gpu/drm/xe/xe_huc_debugfs.o
  CC      fs/btrfs/export.o
  CC      drivers/mmc/core/block.o
  CC [M]  drivers/net/ethernet/intel/ixgb/ixgb_param.o
  CC [M]  fs/fuse/readdir.o
  CC      drivers/firmware/efi/apple-properties.o
  CC [M]  net/bluetooth/iso.o
  CC      lib/iomap.o
  CC [M]  drivers/net/ethernet/intel/ixgbe/ixgbe_mbx.o
  CC      drivers/acpi/acpica/uthex.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_ib.o
  CC      fs/btrfs/tree-log.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/falcon/ga100.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/falcon/ga102.o
  CC      fs/char_dev.o
  CC [M]  fs/fuse/ioctl.o
  CC [M]  drivers/gpu/drm/i915/i915_ioc32.o
  CC      drivers/mmc/host/sdhci.o
  CC [M]  drivers/net/ethernet/intel/e100.o
  CC      drivers/mmc/host/sdhci-pci-core.o
  CC      net/ipv4/inet_fragment.o
  CC      mm/hugetlb_vmemmap.o
  CC      mm/sparse.o
  LD [M]  fs/overlayfs/overlay.o
  CC [M]  drivers/gpu/drm/xe/xe_irq.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/acr/base.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/acr/lsfw.o
  CC [M]  drivers/gpu/drm/i915/i915_debugfs.o
  CC      fs/btrfs/free-space-cache.o
  AR      drivers/net/ethernet/mscc/built-in.a
  CC      fs/btrfs/zlib.o
  CC      drivers/net/netconsole.o
  CC      drivers/acpi/acpica/utids.o
  CC [M]  fs/cifs/inode.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_pll.o
  CC      drivers/firmware/efi/earlycon.o
  CC      lib/pci_iomap.o
  CC      lib/iomap_copy.o
  CC      drivers/acpi/acpi_cmos_rtc.o
  LD [M]  drivers/net/ethernet/intel/ixgb/ixgb.o
  CC [M]  drivers/net/usb/r8153_ecm.o
  CC      net/ipv4/ping.o
  CC      drivers/acpi/acpica/utinit.o
  CC      drivers/firmware/efi/cper-x86.o
  CC      lib/devres.o
  CC      drivers/net/virtio_net.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/acr/gm200.o
  CC      fs/stat.o
  CC      drivers/net/net_failover.o
  CC [M]  fs/cifs/link.o
  LD [M]  fs/fuse/fuse.o
  CC      fs/exec.o
  CC      lib/check_signature.o
  CC      drivers/hid/hid-quirks.o
  CC      drivers/acpi/acpica/utlock.o
  CC      net/ipv4/ip_tunnel_core.o
  LD [M]  drivers/net/ethernet/intel/ixgbevf/ixgbevf.o
  CC [M]  drivers/gpu/drm/i915/i915_debugfs_params.o
  CC      kernel/task_work.o
  CC      kernel/extable.o
  CC      mm/sparse-vmemmap.o
  CC      kernel/params.o
  CC      net/ipv4/gre_offload.o
  CC [M]  drivers/net/ethernet/intel/ixgbe/ixgbe_x540.o
  CC [M]  drivers/gpu/drm/i915/display/intel_display_debugfs.o
  AR      drivers/net/ethernet/neterion/built-in.a
  CC      drivers/acpi/acpica/utmath.o
  CC      fs/pipe.o
  AR      drivers/net/ethernet/netronome/built-in.a
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/acr/gm20b.o
  CC [M]  drivers/net/ethernet/intel/ixgbe/ixgbe_x550.o
  CC [M]  drivers/gpu/drm/xe/xe_lrc.o
  CC      drivers/mmc/core/queue.o
  CC      mm/mmu_notifier.o
  CC      drivers/acpi/x86/apple.o
  CC      kernel/kthread.o
  AR      drivers/net/ethernet/ni/built-in.a
  AR      drivers/net/ethernet/packetengines/built-in.a
  AR      drivers/net/ethernet/realtek/built-in.a
  CC [M]  drivers/net/ethernet/realtek/8139cp.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/acr/gp102.o
  AR      drivers/firmware/efi/built-in.a
  AR      drivers/firmware/smccc/built-in.a
  AR      drivers/firmware/tegra/built-in.a
  CC      kernel/sys_ni.o
  AR      drivers/firmware/xilinx/built-in.a
  CC      drivers/firmware/dmi_scan.o
  CC      lib/interval_tree.o
  CC [M]  net/bluetooth/a2mp.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_ucode.o
  CC      drivers/acpi/acpica/utmisc.o
  CC [M]  drivers/gpu/drm/drm_client_modeset.o
  CC      kernel/nsproxy.o
  LD [M]  drivers/net/usb/asix.o
  CC [M]  drivers/gpu/drm/xe/xe_migrate.o
  CC      mm/ksm.o
  CC      net/ipv4/metrics.o
  CC      drivers/hid/hid-debug.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/acr/gp108.o
  CC [M]  net/bluetooth/amp.o
  CC      lib/assoc_array.o
  CC [M]  drivers/gpu/drm/drm_color_mgmt.o
  CC      drivers/acpi/x86/utils.o
  CC [M]  drivers/gpu/drm/xe/xe_mmio.o
  CC      drivers/hid/hidraw.o
  CC [M]  drivers/net/ethernet/realtek/8139too.o
  CC      drivers/mmc/host/sdhci-pci-o2micro.o
  CC [M]  drivers/net/ethernet/intel/ixgbe/ixgbe_lib.o
  CC      drivers/acpi/acpica/utmutex.o
  CC      drivers/hid/hid-generic.o
  CC [M]  fs/cifs/misc.o
  AR      drivers/mmc/core/built-in.a
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/acr/gv100.o
  AR      drivers/net/ethernet/renesas/built-in.a
  CC [M]  drivers/gpu/drm/xe/xe_mocs.o
  CC [M]  drivers/gpu/drm/i915/display/intel_pipe_crc.o
  CC      mm/slub.o
  CC [M]  drivers/md/dm-thin.o
  CC      drivers/hid/hid-a4tech.o
  CC      fs/namei.o
  CC [M]  drivers/gpu/drm/xe/xe_module.o
  LD [M]  drivers/net/vxlan/vxlan.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/acr/gp10b.o
  CC [M]  drivers/net/dummy.o
  CC [M]  drivers/net/ethernet/realtek/r8169_main.o
  CC      drivers/hid/hid-apple.o
  CC [M]  drivers/md/dm-thin-metadata.o
  CC      drivers/acpi/x86/s2idle.o
  CC      net/ipv4/netlink.o
  CC      drivers/acpi/acpica/utnonansi.o
  CC      drivers/firmware/dmi-sysfs.o
  CC [M]  net/bluetooth/hci_debugfs.o
  CC      fs/btrfs/lzo.o
  CC [M]  drivers/gpu/drm/drm_connector.o
  CC      drivers/hid/hid-belkin.o
  CC [M]  drivers/gpu/drm/i915/i915_pmu.o
  CC      net/ipv4/nexthop.o
  CC [M]  fs/cifs/netmisc.o
  CC      lib/list_debug.o
  CC      kernel/notifier.o
  CC      net/ipv4/udp_tunnel_stub.o
  CC      drivers/hid/hid-cherry.o
  CC [M]  drivers/gpu/drm/i915/gt/gen2_engine_cs.o
  CC [M]  fs/cifs/smbencrypt.o
  CC [M]  drivers/gpu/drm/xe/xe_pat.o
  CC      fs/fcntl.o
  CC      lib/debugobjects.o
  CC      drivers/mmc/host/sdhci-pci-arasan.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_bo_list.o
  CC      drivers/acpi/acpica/utobject.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/acr/tu102.o
  CC      fs/btrfs/zstd.o
  CC      drivers/acpi/acpica/utosi.o
  CC      drivers/mmc/host/sdhci-pci-dwc-mshc.o
  CC [M]  drivers/gpu/drm/i915/gt/gen6_engine_cs.o
  CC      net/ipv4/sysctl_net_ipv4.o
  CC [M]  drivers/gpu/drm/drm_crtc.o
  CC [M]  drivers/net/macvlan.o
  CC [M]  drivers/net/mii.o
  CC      drivers/firmware/dmi-id.o
  CC [M]  drivers/net/ethernet/intel/ixgbe/ixgbe_ptp.o
  CC [M]  drivers/gpu/drm/xe/xe_pci.o
  CC [M]  drivers/gpu/drm/i915/gt/gen6_ppgtt.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/acr/ga100.o
  CC      fs/ioctl.o
  CC [M]  drivers/gpu/drm/drm_displayid.o
  CC      drivers/hid/hid-chicony.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.o
  CC [M]  drivers/net/mdio.o
  CC      kernel/ksysfs.o
  CC      drivers/hid/hid-cypress.o
  CC      drivers/acpi/acpica/utownerid.o
  CC [M]  drivers/net/ethernet/realtek/r8169_firmware.o
  CC [M]  drivers/gpu/drm/drm_drv.o
  CC      lib/bitrev.o
  CC      fs/readdir.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_sync.o
  CC      drivers/mmc/host/sdhci-pci-gli.o
  CC      drivers/firmware/memmap.o
  CC      drivers/mailbox/mailbox.o
  CC      fs/btrfs/compression.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/acr/ga102.o
  CC      drivers/mmc/host/sdhci-acpi.o
  CC      drivers/devfreq/devfreq.o
  CC [M]  drivers/gpu/drm/i915/gt/gen7_renderclear.o
  CC [M]  fs/cifs/transport.o
  CC [M]  drivers/gpu/drm/i915/gt/gen8_engine_cs.o
  CC      drivers/acpi/acpica/utpredef.o
  CC      drivers/acpi/acpica/utresdecode.o
  CC      mm/migrate.o
  CC      fs/select.o
  CC      lib/crc16.o
  CC [M]  drivers/gpu/drm/drm_dumb_buffers.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bar/base.o
  CC      mm/migrate_device.o
  CC      drivers/acpi/acpica/utresrc.o
  CC      drivers/acpi/acpica/utstate.o
  CC      kernel/cred.o
  CC      kernel/reboot.o
  CC      drivers/mmc/host/cqhci-core.o
  CC [M]  fs/cifs/cached_dir.o
  LD [M]  net/bluetooth/bluetooth.o
  CC [M]  drivers/gpu/drm/xe/xe_pcode.o
  CC      drivers/hid/hid-ezkey.o
  CC      drivers/acpi/acpica/utstring.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bar/nv50.o
  CC [M]  drivers/gpu/drm/drm_edid.o
  CC      lib/crc-t10dif.o
  CC      mm/huge_memory.o
  CC      fs/btrfs/delayed-ref.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bar/g84.o
  CC      drivers/acpi/debugfs.o
  CC [M]  drivers/net/ethernet/intel/ixgbe/ixgbe_xsk.o
  CC [M]  drivers/gpu/drm/drm_encoder.o
  AR      drivers/firmware/built-in.a
  CC [M]  drivers/gpu/drm/drm_file.o
  CC      drivers/mailbox/pcc.o
  CC [M]  drivers/gpu/drm/i915/gt/gen8_ppgtt.o
  CC [M]  fs/cifs/cifs_unicode.o
  CC [M]  fs/cifs/nterr.o
  CC [M]  fs/cifs/cifsencrypt.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bar/gf100.o
  LD [M]  drivers/md/dm-bio-prison.o
  CC [M]  drivers/gpu/drm/drm_fourcc.o
  LD [M]  drivers/md/dm-thin-pool.o
  CC [M]  drivers/gpu/drm/drm_framebuffer.o
  CC [M]  drivers/gpu/drm/xe/xe_pm.o
  AR      drivers/md/built-in.a
  CC      drivers/powercap/powercap_sys.o
  CC      drivers/acpi/acpica/utstrsuppt.o
  CC      drivers/powercap/intel_rapl_common.o
  CC      drivers/acpi/acpica/utstrtoul64.o
  CC      drivers/acpi/acpi_lpat.o
  HOSTCC  lib/gen_crc32table
  CC      kernel/async.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bar/gk20a.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_gtt_mgr.o
  CC      lib/libcrc32c.o
  CC      drivers/hid/hid-kensington.o
  CC [M]  drivers/net/ethernet/intel/ixgbe/ixgbe_dcb.o
  CC      lib/xxhash.o
  CC [M]  drivers/net/ethernet/intel/ixgbe/ixgbe_dcb_82598.o
  CC      lib/genalloc.o
  AR      drivers/perf/built-in.a
  CC      drivers/hid/hid-lg.o
  CC      drivers/acpi/acpi_lpit.o
  CC [M]  drivers/gpu/drm/xe/xe_preempt_fence.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bar/gm107.o
  CC [M]  drivers/mmc/host/sdhci-pltfm.o
  CC      drivers/acpi/acpica/utxface.o
  AR      drivers/mailbox/built-in.a
  CC [M]  fs/cifs/readdir.o
  CC [M]  drivers/net/tun.o
  CC [M]  drivers/net/veth.o
  CC      drivers/acpi/prmt.o
  CC [M]  fs/cifs/ioctl.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_breadcrumbs.o
  CC [M]  drivers/net/ethernet/realtek/r8169_phy_config.o
  CC      drivers/acpi/acpi_pcc.o
  CC      lib/percpu_counter.o
  CC      kernel/range.o
  CC      drivers/acpi/acpica/utxfinit.o
  CC      drivers/ras/ras.o
  AR      drivers/mmc/host/built-in.a
  AR      drivers/hwtracing/intel_th/built-in.a
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bar/gm20b.o
  CC      drivers/android/binderfs.o
  CC      drivers/nvmem/core.o
  CC [M]  drivers/devfreq/governor_simpleondemand.o
  CC      kernel/smpboot.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_context.o
  CC      kernel/ucount.o
  CC [M]  drivers/devfreq/governor_performance.o
  CC      mm/khugepaged.o
  CC      net/ipv4/proc.o
  CC      kernel/regset.o
  CC [M]  drivers/mtd/chips/chipreg.o
  CC      net/ipv4/syncookies.o
  CC      mm/page_counter.o
  CC      net/ipv4/esp4.o
  CC      drivers/powercap/intel_rapl_msr.o
  CC      kernel/kmod.o
  CC      fs/btrfs/relocation.o
  AR      drivers/net/ethernet/sfc/built-in.a
  CC      fs/btrfs/delayed-inode.o
  CC [M]  drivers/gpu/drm/xe/xe_pt.o
  AR      drivers/mmc/built-in.a
  CC      lib/fault-inject.o
  CC      net/ipv4/esp4_offload.o
  CC      kernel/groups.o
  CC      drivers/acpi/acpica/utxferror.o
  CC      drivers/acpi/acpica/utxfmutex.o
  AR      drivers/net/ethernet/smsc/built-in.a
  CC      fs/dcache.o
  CC [M]  drivers/net/ethernet/smsc/smsc9420.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_preempt_mgr.o
  CC      mm/memcontrol.o
  CC [M]  drivers/gpu/drm/drm_gem.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.o
  AR      drivers/devfreq/built-in.a
  CC      drivers/acpi/ac.o
  CC      fs/inode.o
  CC [M]  drivers/net/ethernet/intel/ixgbe/ixgbe_dcb_82599.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_virt.o
  AR      drivers/net/ethernet/socionext/built-in.a
  CC      mm/vmpressure.o
  CC [M]  drivers/gpu/drm/drm_ioctl.o
  CC [M]  fs/cifs/sess.o
  CC [M]  fs/cifs/export.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_context_sseu.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_atomfirmware.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_vf_error.o
  LD [M]  drivers/net/ethernet/realtek/r8169.o
  CC      drivers/hid/hid-lg-g15.o
  CC      drivers/ras/debugfs.o
  CC [M]  drivers/mtd/mtdcore.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bar/tu102.o
  CC      drivers/hid/hid-microsoft.o
  CC [M]  drivers/uio/uio.o
  CC [M]  fs/cifs/unc.o
  AR      drivers/acpi/acpica/built-in.a
  CC [M]  drivers/mtd/mtdsuper.o
  CC      drivers/android/binder.o
  CC      lib/syscall.o
  CC      lib/dynamic_debug.o
  AR      drivers/powercap/built-in.a
  CC [M]  drivers/vfio/pci/vfio_pci_core.o
  CC      kernel/kcmp.o
  CC      drivers/acpi/button.o
  CC [M]  drivers/vfio/pci/vfio_pci_intrs.o
  AR      drivers/nvmem/built-in.a
  CC      drivers/android/binder_alloc.o
  AR      drivers/net/ethernet/vertexcom/built-in.a
  AR      drivers/net/ethernet/wangxun/built-in.a
  AR      drivers/net/ethernet/xilinx/built-in.a
  CC [M]  drivers/gpu/drm/i915/gt/intel_engine_cs.o
  AR      drivers/net/ethernet/synopsys/built-in.a
  AR      drivers/ras/built-in.a
  CC [M]  fs/cifs/winucase.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_engine_heartbeat.o
  CC [M]  drivers/vfio/vfio_main.o
  CC [M]  fs/cifs/smb2ops.o
  CC      fs/btrfs/scrub.o
  CC      lib/errname.o
  CC      net/ipv4/netfilter.o
  CC [M]  drivers/gpu/drm/drm_lease.o
  CC [M]  drivers/net/ethernet/intel/ixgbe/ixgbe_dcb_nl.o
  CC [M]  drivers/gpu/drm/drm_managed.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_sched.o
  CC      mm/swap_cgroup.o
  CC      drivers/acpi/fan_core.o
  CC [M]  drivers/gpu/drm/drm_mm.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/base.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.o
  CC      mm/hugetlb_cgroup.o
  CC [M]  drivers/vfio/pci/vfio_pci_rdwr.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_ids.o
  CC [M]  drivers/mtd/mtdconcat.o
  CC [M]  drivers/pps/pps.o
  CC      drivers/acpi/fan_attr.o
  CC      drivers/hid/hid-monterey.o
  CC      kernel/freezer.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_engine_pm.o
  CC [M]  drivers/vfio/pci/vfio_pci_config.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/bit.o
  CC      kernel/stacktrace.o
  CC [M]  drivers/mtd/mtdpart.o
  CC      net/ipv4/inet_diag.o
  CC      drivers/acpi/processor_driver.o
  CC      drivers/acpi/processor_thermal.o
  CC [M]  drivers/gpu/drm/xe/xe_pt_walk.o
  CC      drivers/acpi/processor_idle.o
  CC [M]  drivers/vfio/group.o
  CC [M]  drivers/gpu/drm/drm_mode_config.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.o
  CC      mm/kmemleak.o
  CC [M]  drivers/pps/kapi.o
  CC      lib/nlattr.o
  CC      net/ipv4/tcp_diag.o
  CC [M]  drivers/gpu/drm/drm_mode_object.o
  CC [M]  drivers/mtd/mtdchar.o
  CC [M]  drivers/gpu/drm/drm_modes.o
  CC      mm/page_isolation.o
  CC      fs/btrfs/backref.o
  CC      mm/early_ioremap.o
  CC      mm/cma.o
  AR      drivers/hid/built-in.a
  AR      drivers/net/ethernet/pensando/built-in.a
  CC      fs/btrfs/ulist.o
  CC      fs/btrfs/qgroup.o
  CC [M]  drivers/pps/sysfs.o
  CC [M]  drivers/vfio/pci/vfio_pci.o
  CC [M]  drivers/vfio/iova_bitmap.o
  CC [M]  drivers/gpu/drm/xe/xe_query.o
  CC [M]  drivers/vfio/container.o
  CC      fs/attr.o
  CC      kernel/dma.o
  CC [M]  drivers/net/ethernet/intel/ixgbe/ixgbe_sysfs.o
  CC      net/ipv4/udp_diag.o
  CC      fs/btrfs/send.o
  CC [M]  drivers/vfio/virqfd.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/boost.o
  CC [M]  drivers/net/ethernet/intel/ixgbe/ixgbe_debugfs.o
  CC [M]  drivers/net/ethernet/intel/ixgbe/ixgbe_ipsec.o
  CC [M]  fs/cifs/smb2maperror.o
  CC      fs/bad_inode.o
  CC [M]  drivers/bluetooth/btusb.o
  CC      mm/secretmem.o
  CC      drivers/acpi/processor_throttling.o
  LD [M]  drivers/pps/pps_core.o
  CC [M]  drivers/vfio/vfio_iommu_type1.o
  CC [M]  drivers/dca/dca-core.o
  CC      kernel/smp.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.o
  CC      drivers/acpi/processor_perflib.o
  CC      fs/file.o
  CC      mm/userfaultfd.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_engine_user.o
  CC      mm/memremap.o
  CC      kernel/uid16.o
  CC      kernel/kallsyms.o
  LD [M]  drivers/vfio/pci/vfio-pci.o
  CC [M]  drivers/gpu/drm/xe/xe_reg_sr.o
  LD [M]  drivers/vfio/pci/vfio-pci-core.o
  CC [M]  drivers/ssb/main.o
  CC [M]  drivers/ssb/scan.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_execlists_submission.o
  CC [M]  drivers/ssb/sprom.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_hdp.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_ggtt.o
  CC      lib/checksum.o
  LD [M]  drivers/vfio/vfio.o
  CC [M]  drivers/ssb/pci.o
  CC [M]  drivers/vhost/net.o
  CC [M]  drivers/ssb/pcihost_wrapper.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/conn.o
  CC [M]  drivers/ssb/driver_chipcommon.o
  CC [M]  fs/cifs/smb2transport.o
  CC [M]  drivers/vhost/vhost.o
  CC [M]  fs/cifs/smb2misc.o
  LD [M]  drivers/mtd/mtd.o
  CC [M]  fs/cifs/smb2pdu.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_ggtt_fencing.o
  CC [M]  drivers/gpu/drm/xe/xe_reg_whitelist.o
  CC      fs/btrfs/dev-replace.o
  CC      mm/hmm.o
  CC      lib/cpu_rmap.o
  CC      kernel/acct.o
  CC      lib/dynamic_queue_limits.o
  CC [M]  drivers/dca/dca-sysfs.o
  CC      net/ipv4/tcp_cubic.o
  CC      kernel/crash_core.o
  CC [M]  fs/cifs/smb2inode.o
  CC      drivers/acpi/container.o
  CC      fs/filesystems.o
  CC      drivers/acpi/thermal.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_gt.o
  CC [M]  drivers/gpu/drm/xe/xe_rtp.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_gt_buffer_pool.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/cstep.o
  CC [M]  drivers/ssb/driver_chipcommon_pmu.o
  CC      lib/glob.o
  CC      kernel/compat.o
  CC      kernel/utsname.o
  CC      kernel/user_namespace.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/dcb.o
  LD [M]  drivers/net/ethernet/intel/ixgbe/ixgbe.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_gt_clock_utils.o
  CC      net/ipv4/xfrm4_policy.o
  CC [M]  drivers/gpu/drm/drm_modeset_lock.o
  LD [M]  drivers/dca/dca.o
  CC [M]  drivers/vhost/iotlb.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_csa.o
  AR      drivers/net/ethernet/built-in.a
  CC [M]  drivers/ssb/driver_pcicore.o
  AR      drivers/net/built-in.a
  CC      kernel/pid_namespace.o
  UPD     kernel/config_data
  CC      kernel/stop_machine.o
  CC      mm/memfd.o
  CC [M]  drivers/gpu/drm/xe/xe_ring_ops.o
  CC      lib/strncpy_from_user.o
  CC      fs/btrfs/raid56.o
../drivers/gpu/drm/i915/gt/intel_engine_cs.c:1525: warning: expecting prototype for intel_engines_cleanup_common(). Prototype was for intel_engine_cleanup_common() instead
  CC      fs/namespace.o
  CC      fs/seq_file.o
  CC      fs/xattr.o
  CC      fs/libfs.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_gt_debugfs.o
  CC [M]  drivers/gpu/drm/drm_plane.o
  CC      fs/fs-writeback.o
  CC      fs/pnode.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/disp.o
  CC      drivers/acpi/acpi_memhotplug.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_gt_engines_debugfs.o
  CC      lib/strnlen_user.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_ras.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_gt_irq.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_gt_mcr.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_gt_pm.o
  CC [M]  fs/cifs/smb2file.o
  LD [M]  drivers/vhost/vhost_iotlb.o
  CC [M]  drivers/bluetooth/btintel.o
  CC      fs/splice.o
  CC [M]  drivers/bluetooth/btbcm.o
  CC [M]  drivers/gpu/drm/drm_prime.o
  CC [M]  fs/cifs/cifsacl.o
  CC      fs/sync.o
  LD [M]  drivers/ssb/ssb.o
  CC      drivers/acpi/ioapic.o
  CC [M]  drivers/gpu/drm/xe/xe_sa.o
  CC      lib/net_utils.o
  CC      mm/bootmem_info.o
  CC      kernel/kprobes.o
  CC      fs/btrfs/uuid-tree.o
  CC [M]  drivers/gpu/drm/xe/xe_sched_job.o
  CC [M]  drivers/gpu/drm/drm_print.o
  CC      kernel/hung_task.o
  CC      kernel/watchdog.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_gt_pm_debugfs.o
  CC [M]  drivers/gpu/drm/xe/xe_step.o
  CC      net/ipv4/xfrm4_state.o
  CC      fs/utimes.o
  CC      fs/btrfs/props.o
  LD [M]  drivers/vhost/vhost_net.o
  CC      drivers/acpi/battery.o
  CC      drivers/acpi/hed.o
  CC [M]  drivers/gpu/drm/xe/xe_sync.o
  CC      fs/d_path.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_gt_pm_irq.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_gt_requests.o
  AR      drivers/android/built-in.a
  CC      kernel/watchdog_hld.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/dp.o
  CC      fs/btrfs/free-space-tree.o
  AR      mm/built-in.a
  CC [M]  fs/cifs/fs_context.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_gt_sysfs.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_vm_cpu.o
  CC      lib/sg_pool.o
  CC      fs/stack.o
  CC      fs/fs_struct.o
  CC      net/ipv4/xfrm4_input.o
  CC      drivers/acpi/bgrt.o
  CC      net/ipv4/xfrm4_output.o
  CC [M]  drivers/bluetooth/btrtl.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_vm_sdma.o
  CC      fs/btrfs/tree-checker.o
  CC      fs/btrfs/space-info.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.o
  CC [M]  fs/cifs/dns_resolve.o
  CC      kernel/seccomp.o
  CC      kernel/relay.o
  CC      kernel/utsname_sysctl.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_gtt.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_llc.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_lrc.o
  CC      lib/stackdepot.o
  CC [M]  drivers/gpu/drm/drm_property.o
  CC [M]  drivers/gpu/drm/xe/xe_trace.o
  CC      net/ipv4/xfrm4_protocol.o
  CC      fs/statfs.o
  CC      lib/ucs2_string.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_migrate.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/extdev.o
  CC      fs/btrfs/block-rsv.o
  CC      fs/btrfs/delalloc-space.o
  CC      kernel/delayacct.o
  CC      fs/btrfs/block-group.o
  CC      kernel/taskstats.o
  ASN.1   fs/cifs/cifs_spnego_negtokeninit.asn1.[ch]
  CC      kernel/tsacct.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/fan.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_mocs.o
  CC      drivers/acpi/cppc_acpi.o
  CC [M]  fs/cifs/smb1ops.o
  CC      drivers/acpi/spcr.o
  CC      fs/btrfs/discard.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_ppgtt.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_rc6.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_region_lmem.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_renderstate.o
  CC [M]  drivers/gpu/drm/drm_syncobj.o
  CC [M]  drivers/gpu/drm/drm_sysfs.o
  CC      lib/sbitmap.o
  CC      kernel/tracepoint.o
  CC [M]  net/ipv4/ip_tunnel.o
  CC      kernel/latencytop.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_ras_eeprom.o
  CC      kernel/irq_work.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/gpio.o
  CC [M]  fs/cifs/cifssmb.o
  CC      kernel/static_call.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/i2c.o
  CC [M]  drivers/gpu/drm/xe/xe_ttm_sys_mgr.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_umc.o
  CC      kernel/static_call_inline.o
  CC      kernel/user-return-notifier.o
  CC [M]  net/ipv4/udp_tunnel_core.o
  CC [M]  fs/cifs/cifs_spnego_negtokeninit.asn1.o
  CC      drivers/acpi/acpi_pad.o
  CC      lib/group_cpus.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/iccsense.o
  CC      fs/btrfs/reflink.o
  CC [M]  drivers/gpu/drm/xe/xe_ttm_stolen_mgr.o
  CC      kernel/padata.o
  CC      kernel/jump_label.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/smu_v11_0_i2c.o
  CC      kernel/context_tracking.o
  CC      kernel/iomem.o
  CC [M]  drivers/acpi/acpi_video.o
  CC      fs/fs_pin.o
  CC      fs/btrfs/subpage.o
  CC [M]  net/ipv4/udp_tunnel_nic.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_fru_eeprom.o
  CC      fs/nsfs.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/image.o
  CC      fs/fs_types.o
  CC      fs/fs_context.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_reset.o
  CC      fs/fs_parser.o
  CC [M]  drivers/acpi/video_detect.o
  CC [M]  lib/asn1_decoder.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_ring.o
  GEN     lib/oid_registry_data.c
  CC [M]  fs/cifs/asn1.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_rap.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_ring_submission.o
  CC [M]  lib/oid_registry.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/init.o
  AR      net/ipv4/built-in.a
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/mxm.o
  CC [M]  drivers/gpu/drm/drm_trace_points.o
  CC      kernel/rseq.o
  CC      fs/btrfs/tree-mod-log.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_fw_attestation.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/npde.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_rps.o
  CC [M]  drivers/gpu/drm/xe/xe_ttm_vram_mgr.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_securedisplay.o
  CC      fs/fsopen.o
  CC [M]  drivers/gpu/drm/drm_vblank.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/pcir.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/perf.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_sa_media.o
  AR      drivers/acpi/built-in.a
  CC      fs/init.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_sseu.o
  CC      fs/kernel_read_file.o
  CC      fs/mnt_idmapping.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_eeprom.o
  AR      lib/lib.a
  CC [M]  drivers/gpu/drm/xe/xe_tuning.o
  CC [M]  drivers/gpu/drm/xe/xe_uc.o
  GEN     lib/crc32table.h
  CC [M]  drivers/gpu/drm/i915/gt/intel_sseu_debugfs.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/pll.o
  CC      lib/crc32.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_mca.o
  CC      fs/remap_range.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/pmu.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/power_budget.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_psp_ta.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_lsdma.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_timeline.o
  CC [M]  drivers/gpu/drm/xe/xe_uc_debugfs.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_wopcm.o
  CC [M]  drivers/gpu/drm/drm_vblank_work.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_ring_mux.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/ramcfg.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/rammap.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/shadow.o
  CC      fs/buffer.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/shadowacpi.o
  CC      fs/mpage.o
  GZIP    kernel/config_data.gz
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_fdinfo.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_workarounds.o
  AR      lib/built-in.a
  CC      kernel/configs.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_pmu.o
  CC      fs/btrfs/extent-io-tree.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/shadowof.o
  CC      fs/btrfs/fs.o
  CC [M]  drivers/gpu/drm/xe/xe_uc_fw.o
  CC [M]  drivers/gpu/drm/i915/gt/shmem_utils.o
  CC      fs/btrfs/messages.o
  CC [M]  drivers/gpu/drm/xe/xe_vm.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/cik.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/cik_ih.o
  LD [M]  drivers/acpi/video.o
  CC [M]  drivers/gpu/drm/i915/gt/sysfs_engines.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_ggtt_gmch.o
  LD [M]  net/ipv4/udp_tunnel.o
  AR      net/built-in.a
  CC [M]  drivers/gpu/drm/amd/amdgpu/dce_v8_0.o
  CC [M]  drivers/gpu/drm/i915/gt/gen6_renderstate.o
  CC [M]  drivers/gpu/drm/i915/gt/gen7_renderstate.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/shadowpci.o
  CC      fs/proc_namespace.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/gfx_v7_0.o
  CC [M]  drivers/gpu/drm/xe/xe_vm_madvise.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/shadowramin.o
  CC      fs/direct-io.o
  AR      kernel/built-in.a
  CC [M]  drivers/gpu/drm/i915/gt/gen8_renderstate.o
  CC [M]  drivers/gpu/drm/i915/gt/gen9_renderstate.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gem_busy.o
  CC      fs/btrfs/bio.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gem_clflush.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/shadowrom.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/timing.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gem_context.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/cik_sdma.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/therm.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/vmap.o
  CC      fs/btrfs/lru_cache.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/uvd_v4_2.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/volt.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gem_create.o
  CC [M]  drivers/gpu/drm/drm_vma_manager.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/vpstate.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gem_dmabuf.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/xpio.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/vce_v2_0.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gem_domain.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gem_execbuffer.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gem_internal.o
  CC      fs/eventpoll.o
  CC [M]  drivers/gpu/drm/xe/xe_wait_user_fence.o
  CC [M]  drivers/gpu/drm/drm_writeback.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gem_object.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/M0203.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/si.o
  CC      fs/btrfs/acl.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gem_lmem.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/M0205.o
  CC      fs/anon_inodes.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gem_mman.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gem_pages.o
  CC [M]  drivers/gpu/drm/xe/xe_wa.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gem_phys.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/M0209.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bios/P0260.o
  CC [M]  drivers/gpu/drm/lib/drm_random.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bus/base.o
  CC [M]  drivers/gpu/drm/drm_ioc32.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bus/hwsq.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bus/nv04.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gem_pm.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bus/nv31.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gem_region.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/gmc_v6_0.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bus/nv50.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bus/g94.o
  CC [M]  drivers/gpu/drm/drm_panel.o
  CC [M]  drivers/gpu/drm/drm_pci.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/gfx_v6_0.o
  CC [M]  drivers/gpu/drm/drm_debugfs.o
  CC [M]  drivers/gpu/drm/xe/xe_wopcm.o
  CC      fs/signalfd.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/bus/gf100.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gem_shmem.o
  CC [M]  drivers/gpu/drm/xe/xe_display.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/clk/base.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/clk/nv04.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/si_ih.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gem_shrinker.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/si_dma.o
  LD [M]  fs/cifs/cifs.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gem_stolen.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/clk/nv40.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/clk/nv50.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/clk/g84.o
  CC [M]  drivers/gpu/drm/drm_debugfs_crc.o
  AR      fs/btrfs/built-in.a
  CC [M]  drivers/gpu/drm/drm_edid_load.o
  CC      fs/timerfd.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gem_throttle.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gem_tiling.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/clk/gt215.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/clk/mcp77.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/clk/gf100.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/clk/gk104.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/clk/gk20a.o
  CC      fs/eventfd.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gem_ttm.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gem_ttm_move.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/clk/gm20b.o
  CC      fs/userfaultfd.o
  CC [M]  drivers/gpu/drm/drm_panel_orientation_quirks.o
  CC [M]  drivers/gpu/drm/xe/display/xe_fb_pin.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gem_ttm_pm.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gem_userptr.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/clk/pllnv04.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/dce_v6_0.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/uvd_v3_1.o
  CC      fs/aio.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gem_wait.o
  CC [M]  drivers/gpu/drm/xe/display/xe_hdcp_gsc.o
  CC [M]  drivers/gpu/drm/i915/gem/i915_gemfs.o
  CC [M]  drivers/gpu/drm/i915/i915_active.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/clk/pllgt215.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/vi.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/devinit/base.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/devinit/nv04.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/devinit/nv05.o
  CC      fs/locks.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/mxgpu_vi.o
  CC [M]  drivers/gpu/drm/xe/display/xe_plane_initial.o
  CC [M]  drivers/gpu/drm/drm_buddy.o
  CC [M]  drivers/gpu/drm/drm_gem_shmem_helper.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/devinit/nv10.o
  CC      fs/binfmt_script.o
  CC      fs/binfmt_elf.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/devinit/nv1a.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/nbio_v6_1.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/devinit/nv20.o
  CC [M]  drivers/gpu/drm/i915/i915_cmd_parser.o
  CC [M]  drivers/gpu/drm/i915/i915_deps.o
  CC      fs/compat_binfmt_elf.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/devinit/nv50.o
  CC [M]  drivers/gpu/drm/xe/display/xe_display_rps.o
  CC [M]  drivers/gpu/drm/i915/i915_gem_evict.o
  CC [M]  drivers/gpu/drm/xe/display/ext/i915_irq.o
  CC [M]  drivers/gpu/drm/i915/i915_gem_gtt.o
  CC [M]  drivers/gpu/drm/drm_suballoc.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/soc15.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/devinit/g84.o
  CC [M]  drivers/gpu/drm/xe/display/ext/intel_clock_gating.o
  CC [M]  drivers/gpu/drm/i915/i915_gem_ww.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/devinit/g98.o
  CC [M]  drivers/gpu/drm/i915/i915_gem.o
  CC [M]  drivers/gpu/drm/xe/display/ext/intel_device_info.o
  CC [M]  drivers/gpu/drm/xe/display/ext/intel_dram.o
  CC [M]  drivers/gpu/drm/i915/i915_query.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/devinit/gt215.o
  CC [M]  drivers/gpu/drm/i915/i915_request.o
  CC      fs/mbcache.o
  CC [M]  drivers/gpu/drm/i915/i915_scheduler.o
  CC [M]  drivers/gpu/drm/xe/display/ext/intel_pch.o
  CC [M]  drivers/gpu/drm/i915/i915_trace_points.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/devinit/mcp89.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/emu_soc.o
  CC [M]  drivers/gpu/drm/i915/i915_ttm_buddy_manager.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/devinit/gf100.o
  CC [M]  drivers/gpu/drm/drm_gem_ttm_helper.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/devinit/gm107.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/devinit/gm200.o
  CC [M]  drivers/gpu/drm/i915/i915_vma.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/devinit/gv100.o
  CC [M]  drivers/gpu/drm/i915/i915_vma_resource.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/mxgpu_ai.o
  CC      fs/posix_acl.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/devinit/tu102.o
  CC [M]  drivers/gpu/drm/i915/gt/uc/intel_gsc_fw.o
  CC [M]  drivers/gpu/drm/i915/gt/uc/intel_gsc_uc.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/devinit/ga100.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fault/base.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fault/user.o
  CC [M]  drivers/gpu/drm/xe/i915-display/icl_dsi.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_atomic.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fault/gp100.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_atomic_plane.o
  CC [M]  drivers/gpu/drm/i915/gt/uc/intel_gsc_uc_heci_cmd_submit.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/nbio_v7_0.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_audio.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/vega10_reg_init.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fault/gp10b.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fault/gv100.o
  CC [M]  drivers/gpu/drm/i915/gt/uc/intel_guc.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/vega20_reg_init.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/nbio_v7_4.o
  CC [M]  drivers/gpu/drm/i915/gt/uc/intel_guc_ads.o
  CC [M]  drivers/gpu/drm/i915/gt/uc/intel_guc_capture.o
  CC [M]  drivers/gpu/drm/i915/gt/uc/intel_guc_ct.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fault/tu102.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/nbio_v2_3.o
  CC      fs/coredump.o
  CC      fs/drop_caches.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/nv.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/base.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv04.o
  CC      fs/fhandle.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv10.o
  CC [M]  drivers/gpu/drm/i915/gt/uc/intel_guc_debugfs.o
  CC [M]  drivers/gpu/drm/i915/gt/uc/intel_guc_fw.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv1a.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv20.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv25.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv30.o
  CC [M]  drivers/gpu/drm/i915/gt/uc/intel_guc_hwconfig.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_backlight.o
  CC [M]  drivers/gpu/drm/i915/gt/uc/intel_guc_log.o
  CC [M]  drivers/gpu/drm/i915/gt/uc/intel_guc_log_debugfs.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv35.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv36.o
  CC [M]  drivers/gpu/drm/i915/gt/uc/intel_guc_rc.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv40.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv41.o
  CC [M]  drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.o
  CC [M]  drivers/gpu/drm/i915/gt/uc/intel_guc_submission.o
  CC [M]  drivers/gpu/drm/i915/gt/uc/intel_huc.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_bios.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv44.o
  CC [M]  drivers/gpu/drm/i915/gt/uc/intel_huc_debugfs.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/arct_reg_init.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/mxgpu_nv.o
  CC [M]  drivers/gpu/drm/i915/gt/uc/intel_huc_fw.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/nbio_v7_2.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/hdp_v4_0.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/hdp_v5_0.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv46.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv47.o
  CC [M]  drivers/gpu/drm/i915/gt/uc/intel_uc.o
  CC [M]  drivers/gpu/drm/i915/gt/uc/intel_uc_debugfs.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv49.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv4e.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv50.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/aldebaran_reg_init.o
  CC [M]  drivers/gpu/drm/i915/gt/uc/intel_uc_fw.o
  CC [M]  drivers/gpu/drm/i915/gt/intel_gsc.o
  CC [M]  drivers/gpu/drm/i915/i915_hwmon.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/g84.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/aldebaran.o
  CC [M]  drivers/gpu/drm/i915/display/hsw_ips.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_bw.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/gt215.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_cdclk.o
  CC [M]  drivers/gpu/drm/i915/display/intel_atomic.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_color.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/mcp77.o
  CC [M]  drivers/gpu/drm/i915/display/intel_atomic_plane.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/mcp89.o
  CC [M]  drivers/gpu/drm/i915/display/intel_audio.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/gf100.o
  CC [M]  drivers/gpu/drm/i915/display/intel_bios.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/gf108.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/gk104.o
  AR      fs/built-in.a
  CC [M]  drivers/gpu/drm/i915/display/intel_bw.o
  CC [M]  drivers/gpu/drm/i915/display/intel_cdclk.o
  CC [M]  drivers/gpu/drm/i915/display/intel_color.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_combo_phy.o
  CC [M]  drivers/gpu/drm/i915/display/intel_combo_phy.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/gk110.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/soc21.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/gk20a.o
  CC [M]  drivers/gpu/drm/i915/display/intel_connector.o
  CC [M]  drivers/gpu/drm/i915/display/intel_crtc.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/gm107.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/gm200.o
  CC [M]  drivers/gpu/drm/i915/display/intel_crtc_state_dump.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/sienna_cichlid.o
  CC [M]  drivers/gpu/drm/i915/display/intel_cursor.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/smu_v13_0_10.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/gm20b.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/gp100.o
  CC [M]  drivers/gpu/drm/i915/display/intel_display.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/nbio_v4_3.o
  CC [M]  drivers/gpu/drm/i915/display/intel_display_driver.o
  CC [M]  drivers/gpu/drm/drm_atomic_helper.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/gp102.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/gp10b.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/gv100.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/hdp_v6_0.o
  CC [M]  drivers/gpu/drm/i915/display/intel_display_power.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/tu102.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/nbio_v7_7.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/hdp_v5_2.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/ga100.o
  CC [M]  drivers/gpu/drm/i915/display/intel_display_power_map.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/lsdma_v6_0.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/ga102.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/ram.o
  CC [M]  drivers/gpu/drm/i915/display/intel_display_power_well.o
  CC [M]  drivers/gpu/drm/i915/display/intel_display_reset.o
  CC [M]  drivers/gpu/drm/i915/display/intel_display_rps.o
  CC [M]  drivers/gpu/drm/i915/display/intel_dmc.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv04.o
  CC [M]  drivers/gpu/drm/i915/display/intel_dpio_phy.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv10.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv1a.o
  CC [M]  drivers/gpu/drm/i915/display/intel_dpll.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_connector.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv20.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/nbio_v7_9.o
  CC [M]  drivers/gpu/drm/i915/display/intel_dpll_mgr.o
  CC [M]  drivers/gpu/drm/i915/display/intel_dpt.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/df_v1_7.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/df_v3_6.o
  CC [M]  drivers/gpu/drm/drm_atomic_state_helper.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv40.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/df_v4_3.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv41.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/gmc_v7_0.o
  CC [M]  drivers/gpu/drm/i915/display/intel_drrs.o
  CC [M]  drivers/gpu/drm/i915/display/intel_dsb.o
  CC [M]  drivers/gpu/drm/i915/display/intel_fb.o
  CC [M]  drivers/gpu/drm/i915/display/intel_fb_pin.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv44.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/gmc_v8_0.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/gfxhub_v1_0.o
  CC [M]  drivers/gpu/drm/i915/display/intel_fbc.o
  CC [M]  drivers/gpu/drm/i915/display/intel_fdi.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv49.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/mmhub_v1_0.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv4e.o
  CC [M]  drivers/gpu/drm/drm_bridge_connector.o
  CC [M]  drivers/gpu/drm/i915/display/intel_fifo_underrun.o
  CC [M]  drivers/gpu/drm/i915/display/intel_frontbuffer.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv50.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgt215.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/gmc_v9_0.o
  CC [M]  drivers/gpu/drm/i915/display/intel_global_state.o
  CC [M]  drivers/gpu/drm/i915/display/intel_hdcp.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/rammcp77.o
  CC [M]  drivers/gpu/drm/drm_crtc_helper.o
  CC [M]  drivers/gpu/drm/i915/display/intel_hdcp_gsc.o
  CC [M]  drivers/gpu/drm/drm_damage_helper.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgf100.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_crtc.o
  CC [M]  drivers/gpu/drm/drm_encoder_slave.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/gfxhub_v1_1.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/mmhub_v9_4.o
  CC [M]  drivers/gpu/drm/drm_flip_work.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgf108.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_crtc_state_dump.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/gfxhub_v2_0.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/mmhub_v2_0.o
  CC [M]  drivers/gpu/drm/i915/display/intel_hotplug.o
  CC [M]  drivers/gpu/drm/drm_format_helper.o
  CC [M]  drivers/gpu/drm/i915/display/intel_hotplug_irq.o
  CC [M]  drivers/gpu/drm/drm_gem_atomic_helper.o
  CC [M]  drivers/gpu/drm/i915/display/intel_hti.o
  CC [M]  drivers/gpu/drm/i915/display/intel_load_detect.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/gmc_v10_0.o
  CC [M]  drivers/gpu/drm/i915/display/intel_lpe_audio.o
  CC [M]  drivers/gpu/drm/drm_gem_framebuffer_helper.o
  CC [M]  drivers/gpu/drm/i915/display/intel_modeset_verify.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgk104.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgm107.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/gfxhub_v2_1.o
  CC [M]  drivers/gpu/drm/i915/display/intel_modeset_setup.o
  CC [M]  drivers/gpu/drm/i915/display/intel_overlay.o
  CC [M]  drivers/gpu/drm/i915/display/intel_pch_display.o
  CC [M]  drivers/gpu/drm/i915/display/intel_pch_refclk.o
  CC [M]  drivers/gpu/drm/drm_kms_helper_common.o
  CC [M]  drivers/gpu/drm/drm_modeset_helper.o
  CC [M]  drivers/gpu/drm/i915/display/intel_plane_initial.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/mmhub_v2_3.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/mmhub_v1_7.o
  CC [M]  drivers/gpu/drm/i915/display/intel_psr.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_cursor.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_cx0_phy.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/gfxhub_v3_0.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/mmhub_v3_0.o
  CC [M]  drivers/gpu/drm/drm_plane_helper.o
  CC [M]  drivers/gpu/drm/i915/display/intel_quirks.o
  CC [M]  drivers/gpu/drm/i915/display/intel_sprite.o
  CC [M]  drivers/gpu/drm/i915/display/intel_sprite_uapi.o
  CC [M]  drivers/gpu/drm/i915/display/intel_tc.o
  CC [M]  drivers/gpu/drm/drm_probe_helper.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_ddi.o
  CC [M]  drivers/gpu/drm/i915/display/intel_vblank.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_ddi_buf_trans.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_display.o
  CC [M]  drivers/gpu/drm/drm_rect.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgm200.o
  CC [M]  drivers/gpu/drm/i915/display/intel_vga.o
  CC [M]  drivers/gpu/drm/drm_self_refresh_helper.o
  CC [M]  drivers/gpu/drm/i915/display/intel_wm.o
  CC [M]  drivers/gpu/drm/i915/display/i9xx_plane.o
  CC [M]  drivers/gpu/drm/i915/display/i9xx_wm.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/mmhub_v3_0_2.o
  CC [M]  drivers/gpu/drm/i915/display/skl_scaler.o
  CC [M]  drivers/gpu/drm/i915/display/skl_universal_plane.o
  CC [M]  drivers/gpu/drm/i915/display/skl_watermark.o
  CC [M]  drivers/gpu/drm/i915/display/intel_acpi.o
  CC [M]  drivers/gpu/drm/i915/display/intel_opregion.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_display_driver.o
  CC [M]  drivers/gpu/drm/drm_simple_kms_helper.o
  CC [M]  drivers/gpu/drm/i915/display/intel_fbdev.o
  CC [M]  drivers/gpu/drm/bridge/panel.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/gmc_v11_0.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_display_debugfs.o
  CC [M]  drivers/gpu/drm/i915/display/dvo_ch7017.o
  CC [M]  drivers/gpu/drm/i915/display/dvo_ch7xxx.o
  CC [M]  drivers/gpu/drm/i915/display/dvo_ivch.o
  CC [M]  drivers/gpu/drm/i915/display/dvo_ns2501.o
  CC [M]  drivers/gpu/drm/i915/display/dvo_sil164.o
  CC [M]  drivers/gpu/drm/i915/display/dvo_tfp410.o
  CC [M]  drivers/gpu/drm/i915/display/g4x_dp.o
  CC [M]  drivers/gpu/drm/i915/display/g4x_hdmi.o
  CC [M]  drivers/gpu/drm/i915/display/icl_dsi.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgp100.o
  CC [M]  drivers/gpu/drm/i915/display/intel_backlight.o
  CC [M]  drivers/gpu/drm/drm_fbdev_generic.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/mmhub_v3_0_1.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_display_power.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/gfxhub_v3_0_3.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_display_power_map.o
  CC [M]  drivers/gpu/drm/drm_fb_helper.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/gfxhub_v1_2.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/mmhub_v1_8.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramga102.o
  CC [M]  drivers/gpu/drm/i915/display/intel_crt.o
  LD [M]  drivers/gpu/drm/drm.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_display_power_well.o
  CC [M]  drivers/gpu/drm/i915/display/intel_cx0_phy.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/sddr2.o
  CC [M]  drivers/gpu/drm/i915/display/intel_ddi.o
  LD [M]  drivers/gpu/drm/drm_shmem_helper.o
  LD [M]  drivers/gpu/drm/drm_suballoc_helper.o
  LD [M]  drivers/gpu/drm/drm_ttm_helper.o
  AR      drivers/gpu/drm/built-in.a
  CC [M]  drivers/gpu/drm/i915/display/intel_ddi_buf_trans.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/umc_v6_0.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_display_trace.o
  CC [M]  drivers/gpu/drm/i915/display/intel_display_trace.o
  CC [M]  drivers/gpu/drm/i915/display/intel_dkl_phy.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/umc_v6_1.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/sddr3.o
  CC [M]  drivers/gpu/drm/i915/display/intel_dp.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_dkl_phy.o
  CC [M]  drivers/gpu/drm/i915/display/intel_dp_aux.o
  CC [M]  drivers/gpu/drm/i915/display/intel_dp_aux_backlight.o
  CC [M]  drivers/gpu/drm/i915/display/intel_dp_hdcp.o
  CC [M]  drivers/gpu/drm/i915/display/intel_dp_link_training.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/gddr3.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fb/gddr5.o
  CC [M]  drivers/gpu/drm/i915/display/intel_dp_mst.o
  CC [M]  drivers/gpu/drm/i915/display/intel_dsi.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/umc_v6_7.o
  CC [M]  drivers/gpu/drm/i915/display/intel_dsi_dcs_backlight.o
  CC [M]  drivers/gpu/drm/i915/display/intel_dsi_vbt.o
  CC [M]  drivers/gpu/drm/i915/display/intel_dvo.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fuse/base.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fuse/nv50.o
  CC [M]  drivers/gpu/drm/i915/display/intel_gmbus.o
  CC [M]  drivers/gpu/drm/i915/display/intel_hdmi.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/umc_v8_7.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_dmc.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/umc_v8_10.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_irq.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_ih.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_dp.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fuse/gf100.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_dp_aux.o
  CC [M]  drivers/gpu/drm/i915/display/intel_lspcon.o
  CC [M]  drivers/gpu/drm/i915/display/intel_lvds.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/iceland_ih.o
  CC [M]  drivers/gpu/drm/i915/display/intel_panel.o
  CC [M]  drivers/gpu/drm/i915/display/intel_pps.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/fuse/gm107.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/tonga_ih.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/gpio/base.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_dp_aux_backlight.o
  CC [M]  drivers/gpu/drm/i915/display/intel_qp_tables.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/gpio/nv10.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/gpio/nv50.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/gpio/g94.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/gpio/gf119.o
  CC [M]  drivers/gpu/drm/i915/display/intel_sdvo.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_dp_hdcp.o
  CC [M]  drivers/gpu/drm/i915/display/intel_snps_phy.o
  CC [M]  drivers/gpu/drm/i915/display/intel_tv.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/cz_ih.o
  CC [M]  drivers/gpu/drm/i915/display/intel_vdsc.o
  CC [M]  drivers/gpu/drm/i915/display/intel_vrr.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/gpio/gk104.o
  CC [M]  drivers/gpu/drm/i915/display/vlv_dsi.o
  CC [M]  drivers/gpu/drm/i915/display/vlv_dsi_pll.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/vega10_ih.o
  CC [M]  drivers/gpu/drm/i915/i915_perf.o
  CC [M]  drivers/gpu/drm/i915/pxp/intel_pxp.o
  LD [M]  drivers/gpu/drm/drm_kms_helper.o
  CC [M]  drivers/gpu/drm/i915/pxp/intel_pxp_tee.o
  CC [M]  drivers/gpu/drm/i915/pxp/intel_pxp_huc.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/vega20_ih.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/navi10_ih.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/ih_v6_0.o
  CC [M]  drivers/gpu/drm/i915/pxp/intel_pxp_cmd.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_psp.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_dp_link_training.o
  CC [M]  drivers/gpu/drm/i915/pxp/intel_pxp_debugfs.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_dp_mst.o
  CC [M]  drivers/gpu/drm/i915/pxp/intel_pxp_irq.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/gpio/ga102.o
  CC [M]  drivers/gpu/drm/i915/pxp/intel_pxp_pm.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/psp_v3_1.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/gsp/base.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/gsp/gv100.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/psp_v10_0.o
  CC [M]  drivers/gpu/drm/i915/pxp/intel_pxp_session.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/gsp/ga102.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_dpll.o
  CC [M]  drivers/gpu/drm/i915/i915_gpu_error.o
  CC [M]  drivers/gpu/drm/i915/gem/selftests/i915_gem_client_blt.o
  CC [M]  drivers/gpu/drm/i915/gem/selftests/igt_gem_utils.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/base.o
  CC [M]  drivers/gpu/drm/i915/selftests/intel_scheduler_helpers.o
  CC [M]  drivers/gpu/drm/i915/selftests/i915_random.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/nv04.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_dpll_mgr.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/psp_v11_0.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/psp_v11_0_8.o
  CC [M]  drivers/gpu/drm/i915/selftests/i915_selftest.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/psp_v12_0.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/nv4e.o
  CC [M]  drivers/gpu/drm/i915/selftests/igt_atomic.o
  CC [M]  drivers/gpu/drm/i915/selftests/igt_flush_test.o
  CC [M]  drivers/gpu/drm/i915/selftests/igt_live_test.o
  CC [M]  drivers/gpu/drm/i915/selftests/igt_mmap.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/nv50.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/psp_v13_0.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_dpt.o
  CC [M]  drivers/gpu/drm/i915/selftests/igt_reset.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_drrs.o
  CC [M]  drivers/gpu/drm/i915/selftests/igt_spinner.o
  CC [M]  drivers/gpu/drm/i915/selftests/librapl.o
  CC [M]  drivers/gpu/drm/i915/i915_vgpu.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/psp_v13_0_4.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/dce_v10_0.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/dce_v11_0.o
  HDRTEST drivers/gpu/drm/i915/display/intel_dkl_phy_regs.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/g94.o
  HDRTEST drivers/gpu/drm/i915/display/intel_crtc_state_dump.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/gf117.o
  HDRTEST drivers/gpu/drm/i915/display/hsw_ips.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_vkms.o
  HDRTEST drivers/gpu/drm/i915/display/g4x_hdmi.h
  HDRTEST drivers/gpu/drm/i915/display/intel_hdcp_regs.h
  HDRTEST drivers/gpu/drm/i915/display/intel_overlay.h
  HDRTEST drivers/gpu/drm/i915/display/intel_display.h
  HDRTEST drivers/gpu/drm/i915/display/skl_watermark_regs.h
  HDRTEST drivers/gpu/drm/i915/display/intel_dmc.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/gf119.o
  HDRTEST drivers/gpu/drm/i915/display/intel_vga.h
  HDRTEST drivers/gpu/drm/i915/display/intel_audio.h
  HDRTEST drivers/gpu/drm/i915/display/intel_lvds.h
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_dsb.o
  HDRTEST drivers/gpu/drm/i915/display/intel_modeset_setup.h
  HDRTEST drivers/gpu/drm/i915/display/intel_cdclk.h
  HDRTEST drivers/gpu/drm/i915/display/intel_display_limits.h
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_dsi.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_dsi_dcs_backlight.o
  HDRTEST drivers/gpu/drm/i915/display/intel_hotplug.h
  HDRTEST drivers/gpu/drm/i915/display/intel_dkl_phy.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/gk104.o
  HDRTEST drivers/gpu/drm/i915/display/intel_atomic.h
  HDRTEST drivers/gpu/drm/i915/display/intel_display_driver.h
  HDRTEST drivers/gpu/drm/i915/display/intel_dpll.h
  HDRTEST drivers/gpu/drm/i915/display/vlv_dsi_pll_regs.h
  HDRTEST drivers/gpu/drm/i915/display/intel_dp_mst.h
  HDRTEST drivers/gpu/drm/i915/display/intel_fdi_regs.h
  HDRTEST drivers/gpu/drm/i915/display/g4x_dp.h
  HDRTEST drivers/gpu/drm/i915/display/intel_tc.h
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_dsi_vbt.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/gk110.o
  HDRTEST drivers/gpu/drm/i915/display/intel_frontbuffer.h
  HDRTEST drivers/gpu/drm/i915/display/intel_dsi_vbt.h
  HDRTEST drivers/gpu/drm/i915/display/intel_psr.h
  HDRTEST drivers/gpu/drm/i915/display/intel_crt.h
  HDRTEST drivers/gpu/drm/i915/display/intel_opregion.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/gm200.o
  HDRTEST drivers/gpu/drm/i915/display/intel_snps_phy_regs.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/pad.o
  HDRTEST drivers/gpu/drm/i915/display/i9xx_wm.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/padnv04.o
  HDRTEST drivers/gpu/drm/i915/display/intel_cx0_phy_regs.h
  HDRTEST drivers/gpu/drm/i915/display/intel_global_state.h
  HDRTEST drivers/gpu/drm/i915/display/intel_lpe_audio.h
  HDRTEST drivers/gpu/drm/i915/display/intel_drrs.h
  HDRTEST drivers/gpu/drm/i915/display/intel_display_rps.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/padnv4e.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_rlc.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/padnv50.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_fb.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/padg94.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_fbc.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/gfx_v8_0.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_fdi.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/padgf119.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/gfx_v9_0.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/gfx_v9_4.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_fifo_underrun.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/padgm200.o
  HDRTEST drivers/gpu/drm/i915/display/intel_fbdev.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/gfx_v9_4_2.o
  HDRTEST drivers/gpu/drm/i915/display/intel_pps_regs.h
  HDRTEST drivers/gpu/drm/i915/display/intel_hdmi.h
  HDRTEST drivers/gpu/drm/i915/display/intel_fdi.h
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_frontbuffer.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_global_state.o
  HDRTEST drivers/gpu/drm/i915/display/intel_fb.h
  HDRTEST drivers/gpu/drm/i915/display/intel_qp_tables.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/bus.o
  HDRTEST drivers/gpu/drm/i915/display/intel_dsb_regs.h
  HDRTEST drivers/gpu/drm/i915/display/intel_vdsc.h
  HDRTEST drivers/gpu/drm/i915/display/intel_snps_phy.h
  HDRTEST drivers/gpu/drm/i915/display/intel_display_core.h
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_gmbus.o
  HDRTEST drivers/gpu/drm/i915/display/vlv_dsi_pll.h
  HDRTEST drivers/gpu/drm/i915/display/intel_dvo_dev.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/gfx_v9_4_3.o
  HDRTEST drivers/gpu/drm/i915/display/intel_hdcp.h
  HDRTEST drivers/gpu/drm/i915/display/intel_sdvo_regs.h
  HDRTEST drivers/gpu/drm/i915/display/intel_pch_refclk.h
  HDRTEST drivers/gpu/drm/i915/display/intel_display_trace.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/gfx_v10_0.o
  HDRTEST drivers/gpu/drm/i915/display/intel_display_power.h
  HDRTEST drivers/gpu/drm/i915/display/intel_dp_aux_regs.h
  HDRTEST drivers/gpu/drm/i915/display/i9xx_plane.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/busnv04.o
  HDRTEST drivers/gpu/drm/i915/display/intel_dp_aux_backlight.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/imu_v11_0.o
  HDRTEST drivers/gpu/drm/i915/display/intel_dpll_mgr.h
  HDRTEST drivers/gpu/drm/i915/display/vlv_dsi.h
  HDRTEST drivers/gpu/drm/i915/display/intel_plane_initial.h
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_hdcp.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_hdmi.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/busnv4e.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/busnv50.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/gfx_v11_0.o
  HDRTEST drivers/gpu/drm/i915/display/intel_fifo_underrun.h
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_hotplug.o
  HDRTEST drivers/gpu/drm/i915/display/intel_cursor.h
  HDRTEST drivers/gpu/drm/i915/display/vlv_dsi_regs.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/gfx_v11_0_3.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/imu_v11_0_3.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/busgf119.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.o
  HDRTEST drivers/gpu/drm/i915/display/intel_cx0_phy.h
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_hotplug_irq.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/bit.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/aux.o
../drivers/gpu/drm/i915/display/intel_frontbuffer.h:84: warning: Function parameter or member 'fb' not described in 'intel_frontbuffer_invalidate'
../drivers/gpu/drm/i915/display/intel_frontbuffer.h:84: warning: Excess function parameter 'front' description in 'intel_frontbuffer_invalidate'
../drivers/gpu/drm/i915/display/intel_frontbuffer.h:112: warning: Function parameter or member 'fb' not described in 'intel_frontbuffer_flush'
../drivers/gpu/drm/i915/display/intel_frontbuffer.h:112: warning: Excess function parameter 'front' description in 'intel_frontbuffer_flush'
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/auxg94.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/auxgf119.o
../drivers/gpu/drm/i915/i915_gpu_error.c:2174: warning: Function parameter or member 'dump_flags' not described in 'i915_capture_error_state'
  HDRTEST drivers/gpu/drm/i915/display/skl_scaler.h
  HDRTEST drivers/gpu/drm/i915/display/intel_hti.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/auxgm200.o
  HDRTEST drivers/gpu/drm/i915/display/icl_dsi_regs.h
  HDRTEST drivers/gpu/drm/i915/display/intel_atomic_plane.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/i2c/anx9805.o
  HDRTEST drivers/gpu/drm/i915/display/skl_watermark.h
  HDRTEST drivers/gpu/drm/i915/display/intel_fbc.h
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_hti.o
  HDRTEST drivers/gpu/drm/i915/display/intel_display_reg_defs.h
  HDRTEST drivers/gpu/drm/i915/display/intel_acpi.h
  HDRTEST drivers/gpu/drm/i915/display/intel_connector.h
  HDRTEST drivers/gpu/drm/i915/display/intel_dpt.h
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_lspcon.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_modeset_setup.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/sdma_v2_4.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/iccsense/base.o
  HDRTEST drivers/gpu/drm/i915/display/intel_quirks.h
  HDRTEST drivers/gpu/drm/i915/display/intel_dp_link_training.h
  HDRTEST drivers/gpu/drm/i915/display/intel_color.h
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_modeset_verify.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/iccsense/gf100.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_panel.o
  HDRTEST drivers/gpu/drm/i915/display/intel_crtc.h
  HDRTEST drivers/gpu/drm/i915/display/intel_display_debugfs.h
  HDRTEST drivers/gpu/drm/i915/display/intel_modeset_verify.h
  HDRTEST drivers/gpu/drm/i915/display/intel_display_power_well.h
  HDRTEST drivers/gpu/drm/i915/display/intel_psr_regs.h
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_pipe_crc.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/instmem/base.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_pps.o
  HDRTEST drivers/gpu/drm/i915/display/intel_wm.h
  HDRTEST drivers/gpu/drm/i915/display/intel_pipe_crc.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv04.o
  HDRTEST drivers/gpu/drm/i915/display/intel_audio_regs.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/sdma_v3_0.o
  HDRTEST drivers/gpu/drm/i915/display/intel_panel.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv40.o
  HDRTEST drivers/gpu/drm/i915/display/intel_sprite.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.o
  HDRTEST drivers/gpu/drm/i915/display/intel_wm_types.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/instmem/gk20a.o
  HDRTEST drivers/gpu/drm/i915/display/intel_tv.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/sdma_v4_0.o
  HDRTEST drivers/gpu/drm/i915/display/intel_hti_regs.h
../drivers/gpu/drm/i915/i915_perf.c:5307: warning: Function parameter or member 'i915' not described in 'i915_perf_ioctl_version'
  HDRTEST drivers/gpu/drm/i915/display/intel_vrr.h
  HDRTEST drivers/gpu/drm/i915/display/intel_load_detect.h
  HDRTEST drivers/gpu/drm/i915/display/skl_universal_plane.h
  HDRTEST drivers/gpu/drm/i915/display/intel_mg_phy_regs.h
  HDRTEST drivers/gpu/drm/i915/display/intel_bw.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/ltc/base.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/ltc/gf100.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/ltc/gk104.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_psr.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/ltc/gm107.o
  HDRTEST drivers/gpu/drm/i915/display/intel_de.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/ltc/gm200.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_qp_tables.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/sdma_v4_4.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_quirks.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/ltc/gp100.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_snps_phy.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/sdma_v4_4_2.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_tc.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/sdma_v5_0.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/ltc/gp102.o
  HDRTEST drivers/gpu/drm/i915/display/intel_lvds_regs.h
  HDRTEST drivers/gpu/drm/i915/display/intel_gmbus_regs.h
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_vblank.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/ltc/gp10b.o
  HDRTEST drivers/gpu/drm/i915/display/intel_dsi_dcs_backlight.h
  HDRTEST drivers/gpu/drm/i915/display/intel_dvo.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/ltc/ga102.o
  HDRTEST drivers/gpu/drm/i915/display/intel_sdvo.h
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_vdsc.o
  HDRTEST drivers/gpu/drm/i915/display/intel_dp_aux.h
  HDRTEST drivers/gpu/drm/i915/display/intel_vdsc_regs.h
  HDRTEST drivers/gpu/drm/i915/display/intel_combo_phy.h
  HDRTEST drivers/gpu/drm/i915/display/intel_dvo_regs.h
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_vga.o
  HDRTEST drivers/gpu/drm/i915/display/intel_gmbus.h
  HDRTEST drivers/gpu/drm/i915/display/intel_hdcp_gsc.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mc/base.o
  HDRTEST drivers/gpu/drm/i915/display/intel_dsi.h
  HDRTEST drivers/gpu/drm/i915/display/intel_dmc_regs.h
  HDRTEST drivers/gpu/drm/i915/display/intel_ddi.h
  HDRTEST drivers/gpu/drm/i915/display/intel_hotplug_irq.h
  HDRTEST drivers/gpu/drm/i915/display/intel_tv_regs.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mc/nv04.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/sdma_v5_2.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_vrr.o
  HDRTEST drivers/gpu/drm/i915/display/intel_dsb.h
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_wm.o
  HDRTEST drivers/gpu/drm/i915/display/intel_bios.h
  HDRTEST drivers/gpu/drm/i915/display/intel_pch_display.h
  HDRTEST drivers/gpu/drm/i915/display/intel_display_types.h
  HDRTEST drivers/gpu/drm/i915/display/intel_backlight.h
  HDRTEST drivers/gpu/drm/i915/display/intel_vblank.h
  CC [M]  drivers/gpu/drm/xe/i915-display/skl_scaler.o
  CC [M]  drivers/gpu/drm/xe/i915-display/skl_universal_plane.o
  HDRTEST drivers/gpu/drm/i915/display/intel_dp.h
  CC [M]  drivers/gpu/drm/xe/i915-display/skl_watermark.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mc/nv11.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_acpi.o
  HDRTEST drivers/gpu/drm/i915/display/intel_backlight_regs.h
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_opregion.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mc/nv17.o
  HDRTEST drivers/gpu/drm/i915/display/intel_combo_phy_regs.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/sdma_v6_0.o
  HDRTEST drivers/gpu/drm/i915/display/intel_display_reset.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_mes.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mc/nv44.o
  HDRTEST drivers/gpu/drm/i915/display/intel_display_power_map.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/mes_v10_1.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mc/nv50.o
  HDRTEST drivers/gpu/drm/i915/display/intel_ddi_buf_trans.h
  HDRTEST drivers/gpu/drm/i915/display/icl_dsi.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mc/g84.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mc/g98.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mc/gt215.o
  HDRTEST drivers/gpu/drm/i915/display/intel_lspcon.h
  HDRTEST drivers/gpu/drm/i915/display/intel_dpio_phy.h
  HDRTEST drivers/gpu/drm/i915/display/intel_dp_hdcp.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mc/gf100.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/mes_v11_0.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.o
  HDRTEST drivers/gpu/drm/i915/display/intel_fb_pin.h
  HDRTEST drivers/gpu/drm/i915/display/intel_pps.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/uvd_v5_0.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/uvd_v6_0.o
  HDRTEST drivers/gpu/drm/i915/display/intel_sprite_uapi.h
  HDRTEST drivers/gpu/drm/i915/gem/i915_gem_ttm.h
  HDRTEST drivers/gpu/drm/i915/gem/i915_gem_region.h
  HDRTEST drivers/gpu/drm/i915/gem/i915_gem_context_types.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mc/gk104.o
  CC [M]  drivers/gpu/drm/xe/i915-display/intel_fbdev.o
  HDRTEST drivers/gpu/drm/xe/abi/guc_klvs_abi.h
../drivers/gpu/drm/i915/gem/i915_gem_region.h:25: warning: Incorrect use of kernel-doc format:          * process_obj - Process the current object
../drivers/gpu/drm/i915/gem/i915_gem_region.h:35: warning: Function parameter or member 'process_obj' not described in 'i915_gem_apply_to_region_ops'
  HDRTEST drivers/gpu/drm/i915/gem/i915_gem_lmem.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/uvd_v7_0.o
  HDRTEST drivers/gpu/drm/i915/gem/i915_gem_mman.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mc/gk20a.o
  HDRTEST drivers/gpu/drm/i915/gem/i915_gem_object_types.h
  HDRTEST drivers/gpu/drm/i915/gem/i915_gem_context.h
  HDRTEST drivers/gpu/drm/i915/gem/i915_gem_clflush.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_vce.o
  HDRTEST drivers/gpu/drm/xe/abi/guc_errors_abi.h
  HDRTEST drivers/gpu/drm/xe/abi/guc_actions_slpc_abi.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mc/gp100.o
  HDRTEST drivers/gpu/drm/i915/gem/i915_gem_tiling.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/vce_v3_0.o
  HDRTEST drivers/gpu/drm/xe/abi/guc_communication_mmio_abi.h
  HDRTEST drivers/gpu/drm/i915/gem/i915_gem_stolen.h
  HDRTEST drivers/gpu/drm/xe/abi/guc_actions_abi.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mc/gp10b.o
  HDRTEST drivers/gpu/drm/xe/abi/guc_communication_ctb_abi.h
  HDRTEST drivers/gpu/drm/i915/gem/i915_gem_ttm_pm.h
  HDRTEST drivers/gpu/drm/xe/abi/guc_messages_abi.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mc/ga100.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/base.o
  HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_vma_types.h
  HDRTEST drivers/gpu/drm/i915/gem/i915_gem_create.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/nv04.o
  HDRTEST drivers/gpu/drm/i915/gem/i915_gem_ttm_move.h
  HDRTEST drivers/gpu/drm/xe/compat-i915-headers/vlv_sideband_reg.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/nv41.o
  HDRTEST drivers/gpu/drm/i915/gem/i915_gem_ioctls.h
  HDRTEST drivers/gpu/drm/xe/compat-i915-headers/intel_wakeref.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/vce_v4_0.o
  HDRTEST drivers/gpu/drm/xe/compat-i915-headers/intel_pcode.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/nv44.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.o
  HDRTEST drivers/gpu/drm/i915/gem/i915_gem_domain.h
  HDRTEST drivers/gpu/drm/i915/gem/i915_gem_internal.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/vcn_sw_ring.o
  HDRTEST drivers/gpu/drm/i915/gem/i915_gem_dmabuf.h
  HDRTEST drivers/gpu/drm/i915/gem/selftests/mock_context.h
  HDRTEST drivers/gpu/drm/i915/gem/selftests/huge_gem_object.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/vcn_v1_0.o
  HDRTEST drivers/gpu/drm/i915/gem/selftests/mock_gem_object.h
  HDRTEST drivers/gpu/drm/i915/gem/selftests/mock_dmabuf.h
../drivers/gpu/drm/i915/gem/i915_gem_ttm.h:50: warning: Function parameter or member 'bo' not described in 'i915_ttm_to_gem'
  CC [M]  drivers/gpu/drm/amd/amdgpu/vcn_v2_0.o
  HDRTEST drivers/gpu/drm/i915/gem/selftests/igt_gem_utils.h
  HDRTEST drivers/gpu/drm/i915/gem/i915_gem_userptr.h
  HDRTEST drivers/gpu/drm/i915/gem/i915_gem_pm.h
  HDRTEST drivers/gpu/drm/i915/gem/i915_gem_shrinker.h
  HDRTEST drivers/gpu/drm/i915/gem/i915_gemfs.h
  HDRTEST drivers/gpu/drm/i915/gem/i915_gem_object.h
  HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_drv.h
  HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_reg_defs.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_timeline_types.h
  HDRTEST drivers/gpu/drm/i915/gt/selftest_engine.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/nv50.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/vcn_v2_5.o
  HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_trace.h
  HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_reg.h
  HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_active_types.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_breadcrumbs.h
  HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_utils.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_engine_heartbeat.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_context_types.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/vcn_v3_0.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/vcn_v4_0.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_jpeg.o
  HDRTEST drivers/gpu/drm/i915/gt/intel_execlists_submission.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/g84.o
  HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_config.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/mcp77.o
  HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_vma.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_gt_pm.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/jpeg_v1_0.o
  HDRTEST drivers/gpu/drm/xe/compat-i915-headers/vlv_sideband.h
  HDRTEST drivers/gpu/drm/i915/gt/selftest_rc6.h
  HDRTEST drivers/gpu/drm/xe/compat-i915-headers/intel_mchbar_regs.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gf100.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gk104.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/jpeg_v2_0.o
  HDRTEST drivers/gpu/drm/i915/gt/intel_llc_types.h
  HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_debugfs.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gk20a.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gm200.o
  HDRTEST drivers/gpu/drm/i915/gt/intel_gt.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gm20b.o
  HDRTEST drivers/gpu/drm/i915/gt/intel_region_lmem.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_gt_requests.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gp100.o
  HDRTEST drivers/gpu/drm/i915/gt/intel_ggtt_gmch.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_gt_print.h
  HDRTEST drivers/gpu/drm/i915/gt/gen8_ppgtt.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_gt_mcr.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_timeline.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gp10b.o
  HDRTEST drivers/gpu/drm/xe/compat-i915-headers/soc/intel_gmch.h
  HDRTEST drivers/gpu/drm/i915/gt/gen6_engine_cs.h
  HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_vgpu.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gv100.o
  HDRTEST drivers/gpu/drm/i915/gt/intel_gt_pm_debugfs.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/jpeg_v2_5.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/jpeg_v3_0.o
  HDRTEST drivers/gpu/drm/i915/gt/intel_workarounds_types.h
../drivers/gpu/drm/i915/gem/i915_gem_object.h:93: warning: Function parameter or member 'file' not described in 'i915_gem_object_lookup_rcu'
../drivers/gpu/drm/i915/gem/i915_gem_object.h:93: warning: Excess function parameter 'filp' description in 'i915_gem_object_lookup_rcu'
  HDRTEST drivers/gpu/drm/i915/gt/selftest_rps.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/jpeg_v4_0.o
  HDRTEST drivers/gpu/drm/i915/gt/intel_sa_media.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_gt_debugfs.h
  HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_fixed.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_gt_clock_utils.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/tu102.o
  HDRTEST drivers/gpu/drm/xe/compat-i915-headers/intel_runtime_pm.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_rps_types.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/athub_v1_0.o
  HDRTEST drivers/gpu/drm/xe/compat-i915-headers/intel_pm_types.h
  HDRTEST drivers/gpu/drm/i915/gt/selftest_engine_heartbeat.h
  HDRTEST drivers/gpu/drm/i915/gt/sysfs_engines.h
  HDRTEST drivers/gpu/drm/xe/compat-i915-headers/intel_uncore.h
  HDRTEST drivers/gpu/drm/i915/gt/gen7_renderclear.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_context.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_wopcm.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_mocs.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_engine_pm.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_gt_sysfs.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_rc6.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_ring_types.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_workarounds.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/athub_v2_0.o
  HDRTEST drivers/gpu/drm/i915/gt/intel_engine_regs.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_gt_pm_irq.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/mem.o
  HDRTEST drivers/gpu/drm/i915/gt/shmem_utils.h
  HDRTEST drivers/gpu/drm/xe/compat-i915-headers/intel_pci_config.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/memnv04.o
  HDRTEST drivers/gpu/drm/xe/compat-i915-headers/intel_clock_gating.h
  HDRTEST drivers/gpu/drm/xe/display/ext/i915_irq.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_engine.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/memnv50.o
  HDRTEST drivers/gpu/drm/xe/display/ext/intel_pch.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_reset_types.h
  HDRTEST drivers/gpu/drm/xe/display/ext/intel_dram.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_gt_regs.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/memgf100.o
  HDRTEST drivers/gpu/drm/xe/display/ext/intel_device_info.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_reset.h
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_gsc_fw.h
  HDRTEST drivers/gpu/drm/i915/gt/uc/guc_capture_fwif.h
  HDRTEST drivers/gpu/drm/xe/regs/xe_reg_defs.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/athub_v2_1.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmm.o
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_uc.h
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_uc_fw_abi.h
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_guc_print.h
  HDRTEST drivers/gpu/drm/xe/regs/xe_guc_regs.h
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_guc_fw.h
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_guc_debugfs.h
  HDRTEST drivers/gpu/drm/i915/gt/uc/abi/guc_klvs_abi.h
  HDRTEST drivers/gpu/drm/i915/gt/uc/abi/guc_errors_abi.h
  HDRTEST drivers/gpu/drm/xe/regs/xe_gt_regs.h
  HDRTEST drivers/gpu/drm/xe/regs/xe_regs.h
  HDRTEST drivers/gpu/drm/i915/gt/uc/abi/guc_actions_slpc_abi.h
  HDRTEST drivers/gpu/drm/xe/regs/xe_gpu_commands.h
  HDRTEST drivers/gpu/drm/i915/gt/uc/abi/guc_communication_mmio_abi.h
  HDRTEST drivers/gpu/drm/i915/gt/uc/abi/guc_actions_abi.h
  HDRTEST drivers/gpu/drm/i915/gt/uc/abi/guc_communication_ctb_abi.h
  HDRTEST drivers/gpu/drm/i915/gt/uc/abi/guc_messages_abi.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/athub_v3_0.o
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_gsc_uc_heci_cmd_submit.h
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_guc_reg.h
  HDRTEST drivers/gpu/drm/xe/regs/xe_lrc_layout.h
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_gsc_uc.h
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_huc.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmnv04.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmnv41.o
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_guc.h
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_huc_fw.h
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_guc_fwif.h
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_guc_capture.h
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_guc_log_debugfs.h
  HDRTEST drivers/gpu/drm/xe/regs/xe_engine_regs.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmnv44.o
  HDRTEST drivers/gpu/drm/xe/tests/xe_test.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/smuio_v9_0.o
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_guc_submission.h
  HDRTEST drivers/gpu/drm/xe/tests/xe_pci_test.h
  HDRTEST drivers/gpu/drm/xe/tests/xe_migrate_test.h
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_guc_slpc_types.h
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_guc_log.h
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_guc_ct.h
  HDRTEST drivers/gpu/drm/xe/tests/xe_dma_buf_test.h
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.h
  HDRTEST drivers/gpu/drm/xe/tests/xe_bo_test.h
  HDRTEST drivers/gpu/drm/xe/xe_bb.h
  HDRTEST drivers/gpu/drm/xe/xe_bb_types.h
  HDRTEST drivers/gpu/drm/xe/xe_bo.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/smuio_v11_0.o
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_uc_fw.h
  HDRTEST drivers/gpu/drm/xe/xe_bo_doc.h
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_guc_ads.h
  HDRTEST drivers/gpu/drm/xe/xe_bo_evict.h
../drivers/gpu/drm/i915/gt/intel_context.h:108: warning: Function parameter or member 'ce' not described in 'intel_context_lock_pinned'
../drivers/gpu/drm/i915/gt/intel_context.h:123: warning: Function parameter or member 'ce' not described in 'intel_context_is_pinned'
../drivers/gpu/drm/i915/gt/intel_context.h:142: warning: Function parameter or member 'ce' not described in 'intel_context_unlock_pinned'
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_uc_debugfs.h
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_guc_rc.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/smuio_v11_0_6.o
  HDRTEST drivers/gpu/drm/i915/gt/uc/intel_huc_debugfs.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/smuio_v13_0.o
  HDRTEST drivers/gpu/drm/xe/xe_bo_types.h
  HDRTEST drivers/gpu/drm/xe/xe_debugfs.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_hwconfig.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_llc.h
  HDRTEST drivers/gpu/drm/i915/gt/gen8_engine_cs.h
  HDRTEST drivers/gpu/drm/xe/xe_device.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_sseu_debugfs.h
../drivers/gpu/drm/i915/gt/uc/guc_capture_fwif.h:27: warning: Function parameter or member 'size' not described in '__guc_capture_bufstate'
../drivers/gpu/drm/i915/gt/uc/guc_capture_fwif.h:27: warning: Function parameter or member 'data' not described in '__guc_capture_bufstate'
../drivers/gpu/drm/i915/gt/uc/guc_capture_fwif.h:27: warning: Function parameter or member 'rd' not described in '__guc_capture_bufstate'
../drivers/gpu/drm/i915/gt/uc/guc_capture_fwif.h:27: warning: Function parameter or member 'wr' not described in '__guc_capture_bufstate'
../drivers/gpu/drm/i915/gt/uc/guc_capture_fwif.h:59: warning: Function parameter or member 'link' not described in '__guc_capture_parsed_output'
../drivers/gpu/drm/i915/gt/uc/guc_capture_fwif.h:59: warning: Function parameter or member 'is_partial' not described in '__guc_capture_parsed_output'
../drivers/gpu/drm/i915/gt/uc/guc_capture_fwif.h:59: warning: Function parameter or member 'eng_class' not described in '__guc_capture_parsed_output'
../drivers/gpu/drm/i915/gt/uc/guc_capture_fwif.h:59: warning: Function parameter or member 'eng_inst' not described in '__guc_capture_parsed_output'
../drivers/gpu/drm/i915/gt/uc/guc_capture_fwif.h:59: warning: Function parameter or member 'guc_id' not described in '__guc_capture_parsed_output'
../drivers/gpu/drm/i915/gt/uc/guc_capture_fwif.h:59: warning: Function parameter or member 'lrca' not described in '__guc_capture_parsed_output'
../drivers/gpu/drm/i915/gt/uc/guc_capture_fwif.h:59: warning: Function parameter or member 'reginfo' not described in '__guc_capture_parsed_output'
../drivers/gpu/drm/i915/gt/uc/guc_capture_fwif.h:62: warning: wrong kernel-doc identifier on line:
 * struct guc_debug_capture_list_header / struct guc_debug_capture_list
../drivers/gpu/drm/i915/gt/uc/guc_capture_fwif.h:80: warning: wrong kernel-doc identifier on line:
 * struct __guc_mmio_reg_descr / struct __guc_mmio_reg_descr_group
../drivers/gpu/drm/i915/gt/uc/guc_capture_fwif.h:105: warning: wrong kernel-doc identifier on line:
 * struct guc_state_capture_header_t / struct guc_state_capture_t /
../drivers/gpu/drm/i915/gt/uc/guc_capture_fwif.h:163: warning: Function parameter or member 'is_valid' not described in '__guc_capture_ads_cache'
../drivers/gpu/drm/i915/gt/uc/guc_capture_fwif.h:163: warning: Function parameter or member 'ptr' not described in '__guc_capture_ads_cache'
../drivers/gpu/drm/i915/gt/uc/guc_capture_fwif.h:163: warning: Function parameter or member 'size' not described in '__guc_capture_ads_cache'
../drivers/gpu/drm/i915/gt/uc/guc_capture_fwif.h:163: warning: Function parameter or member 'status' not described in '__guc_capture_ads_cache'
../drivers/gpu/drm/i915/gt/uc/guc_capture_fwif.h:216: warning: Function parameter or member 'ads_null_cache' not described in 'intel_guc_state_capture'
../drivers/gpu/drm/i915/gt/uc/guc_capture_fwif.h:216: warning: Function parameter or member 'max_mmio_per_node' not described in 'intel_guc_state_capture'
  HDRTEST drivers/gpu/drm/xe/xe_device_types.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_rc6_types.h
  HDRTEST drivers/gpu/drm/xe/xe_display.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/smuio_v13_0_6.o
  HDRTEST drivers/gpu/drm/i915/gt/intel_context_param.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmnv50.o
  HDRTEST drivers/gpu/drm/i915/gt/intel_gpu_commands.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmmcp77.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_reset.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgf100.o
  HDRTEST drivers/gpu/drm/xe/xe_dma_buf.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgk104.o
  HDRTEST drivers/gpu/drm/i915/gt/intel_engine_user.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/mca_v3_0.o
  HDRTEST drivers/gpu/drm/i915/gt/intel_gt_irq.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_gsc.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_rps.h
  HDRTEST drivers/gpu/drm/i915/gt/selftest_llc.h
  HDRTEST drivers/gpu/drm/i915/gt/gen6_ppgtt.h
  HDRTEST drivers/gpu/drm/xe/xe_drv.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_ggtt_fencing.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_migrate_types.h
../drivers/gpu/drm/i915/gt/uc/intel_guc_fwif.h:491: warning: Function parameter or member 'marker' not described in 'guc_log_buffer_state'
../drivers/gpu/drm/i915/gt/uc/intel_guc_fwif.h:491: warning: Function parameter or member 'read_ptr' not described in 'guc_log_buffer_state'
../drivers/gpu/drm/i915/gt/uc/intel_guc_fwif.h:491: warning: Function parameter or member 'write_ptr' not described in 'guc_log_buffer_state'
../drivers/gpu/drm/i915/gt/uc/intel_guc_fwif.h:491: warning: Function parameter or member 'size' not described in 'guc_log_buffer_state'
../drivers/gpu/drm/i915/gt/uc/intel_guc_fwif.h:491: warning: Function parameter or member 'sampled_write_ptr' not described in 'guc_log_buffer_state'
../drivers/gpu/drm/i915/gt/uc/intel_guc_fwif.h:491: warning: Function parameter or member 'wrap_offset' not described in 'guc_log_buffer_state'
../drivers/gpu/drm/i915/gt/uc/intel_guc_fwif.h:491: warning: Function parameter or member 'flush_to_file' not described in 'guc_log_buffer_state'
../drivers/gpu/drm/i915/gt/uc/intel_guc_fwif.h:491: warning: Function parameter or member 'buffer_full_cnt' not described in 'guc_log_buffer_state'
../drivers/gpu/drm/i915/gt/uc/intel_guc_fwif.h:491: warning: Function parameter or member 'reserved' not described in 'guc_log_buffer_state'
../drivers/gpu/drm/i915/gt/uc/intel_guc_fwif.h:491: warning: Function parameter or member 'flags' not described in 'guc_log_buffer_state'
../drivers/gpu/drm/i915/gt/uc/intel_guc_fwif.h:491: warning: Function parameter or member 'version' not described in 'guc_log_buffer_state'
  HDRTEST drivers/gpu/drm/i915/gt/selftests/mock_timeline.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_lrc.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_lrc_reg.h
../drivers/gpu/drm/i915/gt/uc/intel_guc.h:274: warning: Function parameter or member 'dbgfs_node' not described in 'intel_guc'
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgk20a.o
  HDRTEST drivers/gpu/drm/i915/gt/intel_migrate.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_breadcrumbs_types.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_gt_buffer_pool.h
  HDRTEST drivers/gpu/drm/i915/gt/mock_engine.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.o
  HDRTEST drivers/gpu/drm/i915/gt/intel_engine_stats.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgm200.o
  HDRTEST drivers/gpu/drm/i915/gt/intel_gtt.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_module.o
  HDRTEST drivers/gpu/drm/i915/gt/intel_gt_buffer_pool_types.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_ring.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgm20b.o
  HDRTEST drivers/gpu/drm/i915/gt/intel_gt_types.h
  HDRTEST drivers/gpu/drm/xe/xe_engine.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_device.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgp100.o
  HDRTEST drivers/gpu/drm/i915/gt/intel_renderstate.h
  HDRTEST drivers/gpu/drm/xe/xe_engine_types.h
  HDRTEST drivers/gpu/drm/xe/xe_exec.h
  HDRTEST drivers/gpu/drm/xe/xe_execlist.h
  HDRTEST drivers/gpu/drm/xe/xe_execlist_types.h
  HDRTEST drivers/gpu/drm/xe/xe_force_wake.h
  HDRTEST drivers/gpu/drm/xe/xe_force_wake_types.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_sseu.h
  HDRTEST drivers/gpu/drm/i915/gt/intel_engine_types.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_chardev.o
  HDRTEST drivers/gpu/drm/i915/gt/intel_gt_engines_debugfs.h
  HDRTEST drivers/gpu/drm/i915/gt/gen2_engine_cs.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgp10b.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_topology.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_pasid.o
  HDRTEST drivers/gpu/drm/i915/gvt/gvt.h
  HDRTEST drivers/gpu/drm/i915/gvt/trace.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_doorbell.o
  HDRTEST drivers/gpu/drm/i915/gvt/debug.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_flat_memory.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_process.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgv100.o
  HDRTEST drivers/gpu/drm/xe/xe_ggtt.h
  HDRTEST drivers/gpu/drm/xe/xe_ggtt_types.h
  HDRTEST drivers/gpu/drm/i915/gvt/edid.h
  HDRTEST drivers/gpu/drm/i915/gvt/page_track.h
  HDRTEST drivers/gpu/drm/i915/gvt/mmio.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_queue.o
  HDRTEST drivers/gpu/drm/xe/xe_gt.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_mqd_manager.o
  HDRTEST drivers/gpu/drm/i915/gvt/sched_policy.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmtu102.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/umem.o
  HDRTEST drivers/gpu/drm/i915/gvt/fb_decoder.h
  HDRTEST drivers/gpu/drm/i915/gvt/cmd_parser.h
  HDRTEST drivers/gpu/drm/i915/gvt/dmabuf.h
  HDRTEST drivers/gpu/drm/i915/gvt/mmio_context.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_mqd_manager_cik.o
  HDRTEST drivers/gpu/drm/i915/gvt/display.h
  HDRTEST drivers/gpu/drm/xe/xe_gt_clock.h
  HDRTEST drivers/gpu/drm/xe/xe_gt_debugfs.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/ummu.o
  HDRTEST drivers/gpu/drm/xe/xe_gt_mcr.h
  HDRTEST drivers/gpu/drm/i915/gvt/gtt.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_mqd_manager_vi.o
  HDRTEST drivers/gpu/drm/xe/xe_gt_pagefault.h
  HDRTEST drivers/gpu/drm/i915/gvt/scheduler.h
../drivers/gpu/drm/i915/gt/intel_gtt.h:515: warning: Function parameter or member 'vm' not described in 'i915_vm_resv_put'
../drivers/gpu/drm/i915/gt/intel_gtt.h:515: warning: Excess function parameter 'resv' description in 'i915_vm_resv_put'
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mmu/uvmm.o
  HDRTEST drivers/gpu/drm/i915/gvt/reg.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_mqd_manager_v9.o
  HDRTEST drivers/gpu/drm/xe/xe_gt_sysfs.h
  HDRTEST drivers/gpu/drm/xe/xe_gt_sysfs_types.h
  HDRTEST drivers/gpu/drm/i915/gvt/execlist.h
  HDRTEST drivers/gpu/drm/i915/gvt/interrupt.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_mqd_manager_v10.o
  HDRTEST drivers/gpu/drm/i915/i915_active.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_mqd_manager_v11.o
  HDRTEST drivers/gpu/drm/i915/i915_active_types.h
  HDRTEST drivers/gpu/drm/i915/i915_cmd_parser.h
  HDRTEST drivers/gpu/drm/i915/i915_config.h
  HDRTEST drivers/gpu/drm/i915/i915_debugfs.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_kernel_queue.o
  HDRTEST drivers/gpu/drm/i915/i915_debugfs_params.h
  HDRTEST drivers/gpu/drm/i915/i915_deps.h
  HDRTEST drivers/gpu/drm/i915/i915_driver.h
  HDRTEST drivers/gpu/drm/i915/i915_drm_client.h
  HDRTEST drivers/gpu/drm/xe/xe_gt_tlb_invalidation.h
  HDRTEST drivers/gpu/drm/i915/i915_drv.h
  HDRTEST drivers/gpu/drm/i915/i915_file_private.h
  HDRTEST drivers/gpu/drm/i915/i915_fixed.h
  HDRTEST drivers/gpu/drm/xe/xe_gt_tlb_invalidation_types.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_packet_manager.o
../drivers/gpu/drm/i915/gt/intel_engine_types.h:293: warning: Function parameter or member 'preempt_hang' not described in 'intel_engine_execlists'
  HDRTEST drivers/gpu/drm/i915/i915_gem.h
  HDRTEST drivers/gpu/drm/i915/i915_gem_evict.h
  HDRTEST drivers/gpu/drm/i915/i915_gem_gtt.h
  HDRTEST drivers/gpu/drm/xe/xe_gt_topology.h
  HDRTEST drivers/gpu/drm/xe/xe_gt_types.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mxm/base.o
  HDRTEST drivers/gpu/drm/i915/i915_gem_ww.h
  HDRTEST drivers/gpu/drm/i915/i915_getparam.h
  HDRTEST drivers/gpu/drm/i915/i915_gpu_error.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_packet_manager_vi.o
  HDRTEST drivers/gpu/drm/xe/xe_guc.h
  HDRTEST drivers/gpu/drm/xe/xe_guc_ads.h
  HDRTEST drivers/gpu/drm/xe/xe_guc_ads_types.h
  HDRTEST drivers/gpu/drm/i915/i915_hwmon.h
  HDRTEST drivers/gpu/drm/xe/xe_guc_ct.h
  HDRTEST drivers/gpu/drm/i915/i915_ioc32.h
  HDRTEST drivers/gpu/drm/xe/xe_guc_ct_types.h
  HDRTEST drivers/gpu/drm/i915/i915_ioctl.h
  HDRTEST drivers/gpu/drm/xe/xe_guc_debugfs.h
  HDRTEST drivers/gpu/drm/i915/i915_iosf_mbi.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mxm/mxms.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/mxm/nv50.o
  HDRTEST drivers/gpu/drm/i915/i915_irq.h
  HDRTEST drivers/gpu/drm/i915/i915_memcpy.h
  HDRTEST drivers/gpu/drm/i915/i915_mitigations.h
  HDRTEST drivers/gpu/drm/i915/i915_mm.h
  HDRTEST drivers/gpu/drm/i915/i915_params.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pci/agp.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_packet_manager_v9.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_process_queue_manager.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pci/base.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pci/pcie.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_device_queue_manager.o
  HDRTEST drivers/gpu/drm/xe/xe_guc_engine_types.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pci/nv04.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pci/nv40.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pci/nv46.o
  HDRTEST drivers/gpu/drm/xe/xe_guc_fwif.h
  HDRTEST drivers/gpu/drm/i915/i915_pci.h
  HDRTEST drivers/gpu/drm/xe/xe_guc_hwconfig.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_device_queue_manager_cik.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pci/nv4c.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_device_queue_manager_vi.o
  HDRTEST drivers/gpu/drm/i915/i915_perf.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_device_queue_manager_v9.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pci/g84.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_device_queue_manager_v10.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pci/g92.o
../drivers/gpu/drm/i915/i915_active.h:66: warning: Function parameter or member 'active' not described in '__i915_active_fence_init'
../drivers/gpu/drm/i915/i915_active.h:66: warning: Function parameter or member 'fence' not described in '__i915_active_fence_init'
../drivers/gpu/drm/i915/i915_active.h:66: warning: Function parameter or member 'fn' not described in '__i915_active_fence_init'
../drivers/gpu/drm/i915/i915_active.h:89: warning: Function parameter or member 'active' not described in 'i915_active_fence_set'
../drivers/gpu/drm/i915/i915_active.h:89: warning: Function parameter or member 'rq' not described in 'i915_active_fence_set'
../drivers/gpu/drm/i915/i915_active.h:102: warning: Function parameter or member 'active' not described in 'i915_active_fence_get'
../drivers/gpu/drm/i915/i915_active.h:122: warning: Function parameter or member 'active' not described in 'i915_active_fence_isset'
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pci/g94.o
  HDRTEST drivers/gpu/drm/i915/i915_perf_oa_regs.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_device_queue_manager_v11.o
  HDRTEST drivers/gpu/drm/xe/xe_guc_log.h
  HDRTEST drivers/gpu/drm/xe/xe_guc_log_types.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_interrupt.o
  HDRTEST drivers/gpu/drm/xe/xe_guc_pc.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_events.o
  HDRTEST drivers/gpu/drm/xe/xe_guc_pc_types.h
  HDRTEST drivers/gpu/drm/i915/i915_perf_types.h
  HDRTEST drivers/gpu/drm/xe/xe_guc_submit.h
  HDRTEST drivers/gpu/drm/xe/xe_guc_types.h
  HDRTEST drivers/gpu/drm/xe/xe_huc.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pci/gf100.o
  HDRTEST drivers/gpu/drm/i915/i915_pmu.h
  HDRTEST drivers/gpu/drm/xe/xe_huc_debugfs.h
  HDRTEST drivers/gpu/drm/xe/xe_huc_types.h
  HDRTEST drivers/gpu/drm/xe/xe_hw_engine.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pci/gf106.o
  HDRTEST drivers/gpu/drm/xe/xe_hw_engine_types.h
  HDRTEST drivers/gpu/drm/xe/xe_hw_fence.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pci/gk104.o
  HDRTEST drivers/gpu/drm/xe/xe_hw_fence_types.h
  HDRTEST drivers/gpu/drm/i915/i915_priolist_types.h
  HDRTEST drivers/gpu/drm/i915/i915_pvinfo.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/cik_event_interrupt.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_int_process_v9.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_int_process_v11.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_smi_events.o
  HDRTEST drivers/gpu/drm/xe/xe_irq.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_crat.o
  HDRTEST drivers/gpu/drm/i915/i915_query.h
  HDRTEST drivers/gpu/drm/xe/xe_lrc.h
  HDRTEST drivers/gpu/drm/xe/xe_lrc_types.h
  HDRTEST drivers/gpu/drm/i915/i915_reg.h
  HDRTEST drivers/gpu/drm/xe/xe_macros.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pci/gp100.o
  HDRTEST drivers/gpu/drm/xe/xe_map.h
  HDRTEST drivers/gpu/drm/i915/i915_reg_defs.h
  HDRTEST drivers/gpu/drm/i915/i915_request.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_debugfs.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_svm.o
  HDRTEST drivers/gpu/drm/i915/i915_scatterlist.h
  HDRTEST drivers/gpu/drm/xe/xe_migrate.h
  HDRTEST drivers/gpu/drm/i915/i915_scheduler.h
  HDRTEST drivers/gpu/drm/i915/i915_scheduler_types.h
  HDRTEST drivers/gpu/drm/i915/i915_selftest.h
  HDRTEST drivers/gpu/drm/i915/i915_suspend.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_migrate.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pmu/base.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pmu/memx.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pmu/gt215.o
  HDRTEST drivers/gpu/drm/xe/xe_migrate_doc.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pmu/gf100.o
  HDRTEST drivers/gpu/drm/i915/i915_sw_fence.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pmu/gf119.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_fence.o
  HDRTEST drivers/gpu/drm/i915/i915_sw_fence_work.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.o
  HDRTEST drivers/gpu/drm/i915/i915_switcheroo.h
  HDRTEST drivers/gpu/drm/xe/xe_mmio.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pmu/gk104.o
  HDRTEST drivers/gpu/drm/i915/i915_syncmap.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pmu/gk110.o
  HDRTEST drivers/gpu/drm/i915/i915_sysfs.h
../drivers/gpu/drm/i915/i915_pmu.h:21: warning: cannot understand function prototype: 'enum i915_pmu_tracked_events '
../drivers/gpu/drm/i915/i915_pmu.h:32: warning: cannot understand function prototype: 'enum '
../drivers/gpu/drm/i915/i915_pmu.h:41: warning: This comment starts with '/**', but isn't a kernel-doc comment. Refer Documentation/doc-guide/kernel-doc.rst
 * How many different events we track in the global PMU mask.
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v8.o
  HDRTEST drivers/gpu/drm/i915/i915_tasklet.h
  HDRTEST drivers/gpu/drm/i915/i915_trace.h
  HDRTEST drivers/gpu/drm/i915/i915_ttm_buddy_manager.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pmu/gk208.o
  HDRTEST drivers/gpu/drm/i915/i915_user_extensions.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v9.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pmu/gk20a.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pmu/gm107.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_arcturus.o
  HDRTEST drivers/gpu/drm/i915/i915_utils.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pmu/gm200.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_aldebaran.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pmu/gm20b.o
  HDRTEST drivers/gpu/drm/i915/i915_vgpu.h
  HDRTEST drivers/gpu/drm/xe/xe_mocs.h
  HDRTEST drivers/gpu/drm/xe/xe_module.h
  HDRTEST drivers/gpu/drm/xe/xe_pat.h
  HDRTEST drivers/gpu/drm/i915/i915_vma.h
  HDRTEST drivers/gpu/drm/xe/xe_pci.h
  HDRTEST drivers/gpu/drm/i915/i915_vma_resource.h
  HDRTEST drivers/gpu/drm/xe/xe_pci_types.h
  HDRTEST drivers/gpu/drm/xe/xe_pcode.h
  HDRTEST drivers/gpu/drm/i915/i915_vma_types.h
  HDRTEST drivers/gpu/drm/i915/intel_clock_gating.h
  HDRTEST drivers/gpu/drm/xe/xe_pcode_api.h
  HDRTEST drivers/gpu/drm/i915/intel_device_info.h
  HDRTEST drivers/gpu/drm/xe/xe_platform_types.h
  HDRTEST drivers/gpu/drm/xe/xe_pm.h
  HDRTEST drivers/gpu/drm/i915/intel_gvt.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v10.o
  HDRTEST drivers/gpu/drm/xe/xe_preempt_fence.h
  HDRTEST drivers/gpu/drm/i915/intel_mchbar_regs.h
../drivers/gpu/drm/i915/i915_scatterlist.h:160: warning: Incorrect use of kernel-doc format:          * release() - Free the memory of the struct i915_refct_sgt
../drivers/gpu/drm/i915/i915_scatterlist.h:164: warning: Function parameter or member 'release' not described in 'i915_refct_sgt_ops'
../drivers/gpu/drm/i915/i915_scatterlist.h:187: warning: Function parameter or member 'rsgt' not described in 'i915_refct_sgt_put'
../drivers/gpu/drm/i915/i915_scatterlist.h:198: warning: Function parameter or member 'rsgt' not described in 'i915_refct_sgt_get'
../drivers/gpu/drm/i915/i915_scatterlist.h:214: warning: Function parameter or member 'rsgt' not described in '__i915_refct_sgt_init'
  HDRTEST drivers/gpu/drm/i915/intel_memory_region.h
  HDRTEST drivers/gpu/drm/i915/intel_pci_config.h
  HDRTEST drivers/gpu/drm/i915/intel_pcode.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pmu/gp102.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v10_3.o
  HDRTEST drivers/gpu/drm/xe/xe_preempt_fence_types.h
../drivers/gpu/drm/i915/i915_request.h:176: warning: This comment starts with '/**', but isn't a kernel-doc comment. Refer Documentation/doc-guide/kernel-doc.rst
 * Request queue structure.
../drivers/gpu/drm/i915/i915_request.h:477: warning: This comment starts with '/**', but isn't a kernel-doc comment. Refer Documentation/doc-guide/kernel-doc.rst
 * Returns true if seq1 is later than seq2.
  HDRTEST drivers/gpu/drm/i915/intel_region_ttm.h
  HDRTEST drivers/gpu/drm/i915/intel_runtime_pm.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v11.o
../drivers/gpu/drm/i915/i915_utils.h:284: warning: Function parameter or member 'OP' not described in '__wait_for'
../drivers/gpu/drm/i915/i915_utils.h:284: warning: Function parameter or member 'COND' not described in '__wait_for'
../drivers/gpu/drm/i915/i915_utils.h:284: warning: Function parameter or member 'US' not described in '__wait_for'
../drivers/gpu/drm/i915/i915_utils.h:284: warning: Function parameter or member 'Wmin' not described in '__wait_for'
../drivers/gpu/drm/i915/i915_utils.h:284: warning: Function parameter or member 'Wmax' not described in '__wait_for'
  HDRTEST drivers/gpu/drm/i915/intel_sbi.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v7.o
  HDRTEST drivers/gpu/drm/i915/intel_step.h
  HDRTEST drivers/gpu/drm/i915/intel_uncore.h
  HDRTEST drivers/gpu/drm/i915/intel_wakeref.h
  HDRTEST drivers/gpu/drm/i915/pxp/intel_pxp_tee.h
  HDRTEST drivers/gpu/drm/i915/pxp/intel_pxp_irq.h
  HDRTEST drivers/gpu/drm/xe/xe_pt.h
  HDRTEST drivers/gpu/drm/i915/pxp/intel_pxp_session.h
  HDRTEST drivers/gpu/drm/i915/pxp/intel_pxp_cmd_interface_43.h
  HDRTEST drivers/gpu/drm/i915/pxp/intel_pxp_cmd.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.o
  HDRTEST drivers/gpu/drm/i915/pxp/intel_pxp.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/pmu/gp10b.o
  HDRTEST drivers/gpu/drm/i915/pxp/intel_pxp_types.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/privring/gf100.o
  HDRTEST drivers/gpu/drm/i915/pxp/intel_pxp_debugfs.h
  HDRTEST drivers/gpu/drm/xe/xe_pt_types.h
  HDRTEST drivers/gpu/drm/xe/xe_pt_walk.h
  HDRTEST drivers/gpu/drm/i915/pxp/intel_pxp_cmd_interface_cmn.h
  HDRTEST drivers/gpu/drm/i915/pxp/intel_pxp_huc.h
  HDRTEST drivers/gpu/drm/xe/xe_query.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_job.o
  HDRTEST drivers/gpu/drm/i915/pxp/intel_pxp_pm.h
  HDRTEST drivers/gpu/drm/i915/pxp/intel_pxp_cmd_interface_42.h
  HDRTEST drivers/gpu/drm/xe/xe_reg_sr.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/privring/gf117.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_acp.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../acp/acp_hw.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_ioc32.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/privring/gk104.o
  HDRTEST drivers/gpu/drm/i915/selftests/igt_live_test.h
  HDRTEST drivers/gpu/drm/i915/selftests/igt_atomic.h
  HDRTEST drivers/gpu/drm/i915/selftests/mock_gem_device.h
  HDRTEST drivers/gpu/drm/i915/selftests/mock_drm.h
  HDRTEST drivers/gpu/drm/xe/xe_reg_sr_types.h
  HDRTEST drivers/gpu/drm/i915/selftests/igt_reset.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_acpi.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/privring/gk20a.o
  HDRTEST drivers/gpu/drm/i915/selftests/intel_scheduler_helpers.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/privring/gm200.o
  HDRTEST drivers/gpu/drm/i915/selftests/lib_sw_fence.h
../drivers/gpu/drm/i915/pxp/intel_pxp_types.h:96: warning: Function parameter or member 'dev_link' not described in 'intel_pxp'
  HDRTEST drivers/gpu/drm/i915/selftests/i915_perf_selftests.h
  HDRTEST drivers/gpu/drm/i915/selftests/mock_uncore.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/privring/gp10b.o
  HDRTEST drivers/gpu/drm/xe/xe_reg_whitelist.h
  HDRTEST drivers/gpu/drm/i915/selftests/mock_gtt.h
  HDRTEST drivers/gpu/drm/i915/selftests/i915_mock_selftests.h
../drivers/gpu/drm/i915/i915_vma_resource.h:91: warning: Incorrect use of kernel-doc format:          * struct i915_vma_bindinfo - Information needed for async bind
  HDRTEST drivers/gpu/drm/xe/xe_res_cursor.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/therm/base.o
../drivers/gpu/drm/i915/i915_vma_resource.h:129: warning: Function parameter or member 'wakeref' not described in 'i915_vma_resource'
../drivers/gpu/drm/i915/i915_vma_resource.h:129: warning: Function parameter or member 'bi' not described in 'i915_vma_resource'
  HDRTEST drivers/gpu/drm/i915/selftests/mock_request.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/amdgpu_hmm.o
  HDRTEST drivers/gpu/drm/i915/selftests/i915_random.h
  HDRTEST drivers/gpu/drm/i915/selftests/igt_spinner.h
  HDRTEST drivers/gpu/drm/i915/selftests/librapl.h
  HDRTEST drivers/gpu/drm/i915/selftests/mock_region.h
  HDRTEST drivers/gpu/drm/xe/xe_ring_ops.h
  HDRTEST drivers/gpu/drm/i915/selftests/i915_live_selftests.h
../drivers/gpu/drm/i915/i915_vma.h:145: warning: expecting prototype for i915_vma_offset(). Prototype was for i915_vma_size() instead
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu11/arcturus_ppt.o
  HDRTEST drivers/gpu/drm/i915/selftests/igt_mmap.h
  HDRTEST drivers/gpu/drm/i915/selftests/igt_flush_test.h
  HDRTEST drivers/gpu/drm/i915/soc/intel_pch.h
  HDRTEST drivers/gpu/drm/xe/xe_ring_ops_types.h
  HDRTEST drivers/gpu/drm/xe/xe_rtp.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.o
  HDRTEST drivers/gpu/drm/xe/xe_rtp_types.h
  HDRTEST drivers/gpu/drm/xe/xe_sa.h
  HDRTEST drivers/gpu/drm/i915/soc/intel_dram.h
  HDRTEST drivers/gpu/drm/i915/soc/intel_gmch.h
  HDRTEST drivers/gpu/drm/xe/xe_sa_types.h
  HDRTEST drivers/gpu/drm/i915/vlv_sideband.h
  HDRTEST drivers/gpu/drm/xe/xe_sched_job.h
  HDRTEST drivers/gpu/drm/xe/xe_sched_job_types.h
  HDRTEST drivers/gpu/drm/i915/vlv_sideband_reg.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu11/navi10_ppt.o
  HDRTEST drivers/gpu/drm/i915/vlv_suspend.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/therm/fannil.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/therm/fanpwm.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu11/sienna_cichlid_ppt.o
  LD [M]  drivers/gpu/drm/i915/i915.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu11/vangogh_ppt.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu11/cyan_skillfish_ppt.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/therm/fantog.o
  HDRTEST drivers/gpu/drm/xe/xe_step.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/therm/ic.o
  HDRTEST drivers/gpu/drm/xe/xe_step_types.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu11/smu_v11_0.o
  HDRTEST drivers/gpu/drm/xe/xe_sync.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/therm/temp.o
  HDRTEST drivers/gpu/drm/xe/xe_sync_types.h
  HDRTEST drivers/gpu/drm/xe/xe_trace.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu12/renoir_ppt.o
  HDRTEST drivers/gpu/drm/xe/xe_ttm_stolen_mgr.h
  HDRTEST drivers/gpu/drm/xe/xe_ttm_sys_mgr.h
  HDRTEST drivers/gpu/drm/xe/xe_ttm_vram_mgr.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu12/smu_v12_0.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/therm/nv40.o
  HDRTEST drivers/gpu/drm/xe/xe_ttm_vram_mgr_types.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu13/smu_v13_0.o
  HDRTEST drivers/gpu/drm/xe/xe_tuning.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/therm/nv50.o
  HDRTEST drivers/gpu/drm/xe/xe_uc.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/therm/g84.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/therm/gt215.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu13/aldebaran_ppt.o
  HDRTEST drivers/gpu/drm/xe/xe_uc_debugfs.h
  HDRTEST drivers/gpu/drm/xe/xe_uc_fw.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/therm/gf100.o
  HDRTEST drivers/gpu/drm/xe/xe_uc_fw_abi.h
  HDRTEST drivers/gpu/drm/xe/xe_uc_fw_types.h
  HDRTEST drivers/gpu/drm/xe/xe_uc_types.h
  HDRTEST drivers/gpu/drm/xe/xe_vm.h
  HDRTEST drivers/gpu/drm/xe/xe_vm_doc.h
  HDRTEST drivers/gpu/drm/xe/xe_vm_madvise.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu13/yellow_carp_ppt.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu13/smu_v13_0_0_ppt.o
  HDRTEST drivers/gpu/drm/xe/xe_vm_types.h
  HDRTEST drivers/gpu/drm/xe/xe_wa.h
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/therm/gf119.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu13/smu_v13_0_4_ppt.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/therm/gk104.o
  HDRTEST drivers/gpu/drm/xe/xe_wait_user_fence.h
  HDRTEST drivers/gpu/drm/xe/xe_wopcm.h
  HDRTEST drivers/gpu/drm/xe/xe_wopcm_types.h
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu13/smu_v13_0_5_ppt.o
  LD [M]  drivers/gpu/drm/xe/xe.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu13/smu_v13_0_7_ppt.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu13/smu_v13_0_6_ppt.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/swsmu/amdgpu_smu.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu_cmn.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/smumgr/smumgr.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/smumgr/smu8_smumgr.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/smumgr/tonga_smumgr.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/smumgr/fiji_smumgr.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/therm/gm107.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/therm/gm200.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/therm/gp100.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/smumgr/polaris10_smumgr.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/smumgr/iceland_smumgr.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/timer/base.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/timer/nv04.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/timer/nv40.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/smumgr/smu7_smumgr.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/timer/nv41.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/smumgr/vega10_smumgr.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/smumgr/smu10_smumgr.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/smumgr/ci_smumgr.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/timer/gk20a.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/top/base.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/top/gk104.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/top/ga100.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/vfn/base.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/vfn/uvfn.o
drivers/gpu/drm/xe/xe.o: warning: objtool: intel_set_cpu_fifo_underrun_reporting+0x2b7: unreachable instruction
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/smumgr/vega12_smumgr.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/vfn/gv100.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/vfn/tu102.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/smumgr/vegam_smumgr.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/vfn/ga100.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/volt/base.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/volt/gpio.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/volt/nv40.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/volt/gf100.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/smumgr/smu9_smumgr.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/volt/gf117.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/volt/gk104.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/volt/gk20a.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/smumgr/vega20_smumgr.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/hwmgr.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/subdev/volt/gm20b.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/falcon.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/processpptables.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/hardwaremanager.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/smu8_hwmgr.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/pppcielanes.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/process_pptables_v1_0.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/ppatomctrl.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/ppatomfwctrl.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/smu7_hwmgr.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/smu7_powertune.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/xtensa.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/smu7_thermal.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/bsp/g84.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/ce/gt215.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/smu7_clockpowergating.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/ce/gf100.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/ce/gk104.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/ce/gm107.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega10_processpptables.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega10_hwmgr.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/ce/gm200.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/ce/gp100.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega10_powertune.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega10_thermal.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/smu10_hwmgr.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/pp_psm.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/ce/gp102.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega12_processpptables.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega12_hwmgr.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega12_thermal.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/pp_overdriver.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/ce/gv100.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/smu_helper.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/ce/tu102.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega20_processpptables.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/ce/ga100.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/ce/ga102.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega20_hwmgr.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega20_powertune.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/cipher/g84.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/device/acpi.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega20_thermal.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/common_baco.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/device/base.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega10_baco.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/device/ctrl.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/device/pci.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega20_baco.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega12_baco.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/smu9_baco.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/tonga_baco.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/device/tegra.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/polaris_baco.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/fiji_baco.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/ci_baco.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/device/user.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/smu7_baco.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/base.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/chan.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/powerplay/amd_powerplay.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/legacy-dpm/legacy_dpm.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/conn.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/legacy-dpm/kv_dpm.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/dp.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/hdmi.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/legacy-dpm/kv_smc.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/head.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/legacy-dpm/si_dpm.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/legacy-dpm/si_smc.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/amdgpu_dpm.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/amdgpu_pm.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../pm/amdgpu_dpm_internal.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/ior.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/outp.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_plane.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_crtc.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_irq.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/vga.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_mst_types.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/nv04.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_color.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/dc_fpu.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_services.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_helpers.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_pp_smu.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_psr.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_hdcp.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_crc.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_debugfs.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/basics/conversion.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/basics/fixpt31_32.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/basics/vector.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/nv50.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/basics/dc_common.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/g84.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/g94.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser_interface.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser_helper.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/gt200.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/mcp77.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table_helper.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser_common.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/gt215.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/mcp89.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table_helper2.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/gf119.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/gk104.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser2.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/bios/dce60/command_table_helper_dce60.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/bios/dce80/command_table_helper_dce80.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/bios/dce110/command_table_helper_dce110.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/gk110.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/bios/dce112/command_table_helper_dce112.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/bios/dce112/command_table_helper2_dce112.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/calcs/dce_calcs.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/calcs/custom_float.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/calcs/bw_fixed.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/display_mode_lib.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/display_rq_dlg_helpers.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dml1_display_rq_dlg_calc.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn10/dcn10_fpu.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/gm107.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn20/dcn20_fpu.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/gm200.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/gp100.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/display_mode_vba.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/gp102.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn20/display_rq_dlg_calc_20.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn20/display_mode_vba_20.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn20/display_rq_dlg_calc_20v2.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/gv100.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn20/display_mode_vba_20v2.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn21/display_rq_dlg_calc_21.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn21/display_mode_vba_21.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/tu102.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn30/dcn30_fpu.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/ga102.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn30/display_mode_vba_30.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn30/display_rq_dlg_calc_30.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn31/display_mode_vba_31.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/udisp.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn31/display_rq_dlg_calc_31.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/uconn.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn314/display_mode_vba_314.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/uoutp.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn314/display_rq_dlg_calc_314.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/disp/uhead.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn32/display_mode_vba_32.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn32/display_rq_dlg_calc_32.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn32/display_mode_vba_util_32.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn31/dcn31_fpu.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/dma/base.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn32/dcn32_fpu.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/dma/nv04.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/dma/nv50.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/dma/gf100.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/dma/gf119.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/dma/gv100.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn321/dcn321_fpu.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/dma/user.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/dma/usernv04.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn301/dcn301_fpu.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn302/dcn302_fpu.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn303/dcn303_fpu.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/dma/usernv50.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/dma/usergf100.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/dma/usergf119.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn314/dcn314_fpu.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dsc/rc_calc_fpu.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/dma/usergv100.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/fifo/base.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/fifo/cgrp.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/fifo/chan.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/calcs/dcn_calcs.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/fifo/chid.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/fifo/runl.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/calcs/dcn_calc_math.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/dml/calcs/dcn_calc_auto.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/fifo/runq.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/fifo/nv04.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/clk_mgr.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/fifo/nv10.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/fifo/nv17.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dce60/dce60_clk_mgr.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dce100/dce_clk_mgr.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dce110/dce110_clk_mgr.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dce112/dce112_clk_mgr.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dce120/dce120_clk_mgr.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn10/rv1_clk_mgr.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/fifo/nv40.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/fifo/nv50.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn10/rv1_clk_mgr_vbios_smu.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/fifo/g84.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn10/rv2_clk_mgr.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn20/dcn20_clk_mgr.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn201/dcn201_clk_mgr.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn21/rn_clk_mgr.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn21/rn_clk_mgr_vbios_smu.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn30/dcn30_clk_mgr.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn30/dcn30_clk_mgr_smu_msg.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn301/vg_clk_mgr.o
  CC [M]  drivers/gpu/drm/nouveau/nvkm/engine/fifo/g98.o
  CC [M]  drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn301/dcn301_smu.o
  CC [M]  drivers/gpu/drm/amd/amd



^ permalink raw reply	[flat|nested] 16+ messages in thread

* [Intel-xe] ○ CI.BAT: info for drm/xe: use hotplug irq code from i915
  2023-05-16 13:32 [Intel-xe] [PATCH 0/4] drm/xe: use hotplug irq code from i915 Jani Nikula
                   ` (6 preceding siblings ...)
  2023-05-16 13:41 ` [Intel-xe] ✓ CI.Build: " Patchwork
@ 2023-05-16 14:06 ` Patchwork
  7 siblings, 0 replies; 16+ messages in thread
From: Patchwork @ 2023-05-16 14:06 UTC (permalink / raw)
  To: Jani Nikula; +Cc: intel-xe

[-- Attachment #1: Type: text/plain, Size: 334 bytes --]

== Series Details ==

Series: drm/xe: use hotplug irq code from i915
URL   : https://patchwork.freedesktop.org/series/117818/
State : info

== Summary ==

Participating hosts:
bat-atsm-2
bat-dg2-oem2
bat-adlp-7
Missing hosts results[0]:
Results: [xe-pw-117818v1](https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-117818v1/index.html)



[-- Attachment #2: Type: text/html, Size: 844 bytes --]

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [Intel-xe] [PATCH 4/4] fixup! drm/xe/display: Implement display support
  2023-05-16 13:32 ` [Intel-xe] [PATCH 4/4] fixup! drm/xe/display: Implement display support Jani Nikula
@ 2023-05-16 20:58   ` Rodrigo Vivi
  2023-05-17  8:04     ` Jani Nikula
  0 siblings, 1 reply; 16+ messages in thread
From: Rodrigo Vivi @ 2023-05-16 20:58 UTC (permalink / raw)
  To: Jani Nikula; +Cc: intel-xe

On Tue, May 16, 2023 at 04:32:34PM +0300, Jani Nikula wrote:
> Use hotplug irq code from i915 display/intel_hotplug_irq.c instead of
> copy-paste.
> 
> For now, need to add ilk_update_display_irq() and bdw_update_port_irq()
> to xe display/ext/i915_irq.c.

will we able to get rid of them?
anyway good clean-up already:

Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>


> 
> Signed-off-by: Jani Nikula <jani.nikula@intel.com>


> ---
>  drivers/gpu/drm/xe/Makefile                   |   1 +
>  .../gpu/drm/xe/compat-i915-headers/i915_drv.h |   1 +
>  drivers/gpu/drm/xe/display/ext/i915_irq.c     | 579 ++----------------
>  drivers/gpu/drm/xe/display/ext/i915_irq.h     |  11 +-
>  drivers/gpu/drm/xe/xe_device_types.h          |   6 +-
>  5 files changed, 58 insertions(+), 540 deletions(-)
> 
> diff --git a/drivers/gpu/drm/xe/Makefile b/drivers/gpu/drm/xe/Makefile
> index b6c41cd7dbe3..5418281b4f89 100644
> --- a/drivers/gpu/drm/xe/Makefile
> +++ b/drivers/gpu/drm/xe/Makefile
> @@ -178,6 +178,7 @@ xe-$(CONFIG_DRM_XE_DISPLAY) += \
>  	i915-display/intel_hdcp.o \
>  	i915-display/intel_hdmi.o \
>  	i915-display/intel_hotplug.o \
> +	i915-display/intel_hotplug_irq.o \
>  	i915-display/intel_hti.o \
>  	i915-display/intel_lspcon.o \
>  	i915-display/intel_modeset_setup.o \
> diff --git a/drivers/gpu/drm/xe/compat-i915-headers/i915_drv.h b/drivers/gpu/drm/xe/compat-i915-headers/i915_drv.h
> index ddc0ad39b154..74e6f063f741 100644
> --- a/drivers/gpu/drm/xe/compat-i915-headers/i915_drv.h
> +++ b/drivers/gpu/drm/xe/compat-i915-headers/i915_drv.h
> @@ -101,6 +101,7 @@ static inline struct drm_i915_private *kdev_to_i915(struct device *kdev)
>  #define HAS_DSC(xe) ((xe)->info.display.has_dsc)
>  #define HAS_CUR_FBC(xe) (xe || 1)
>  #define HAS_DOUBLE_BUFFERED_M_N(xe) ((xe) || 1)
> +#define I915_HAS_HOTPLUG(xe) (true)
>  #define HAS_D12_PLANE_MINIMIZATION(dev_priv) (IS_ROCKETLAKE(dev_priv) || \
>  					      IS_ALDERLAKE_S(dev_priv))
>  #define DISPLAY_VER(xe) ((xe)->info.display.ver)
> diff --git a/drivers/gpu/drm/xe/display/ext/i915_irq.c b/drivers/gpu/drm/xe/display/ext/i915_irq.c
> index afde97b6faa6..a0f22bd52549 100644
> --- a/drivers/gpu/drm/xe/display/ext/i915_irq.c
> +++ b/drivers/gpu/drm/xe/display/ext/i915_irq.c
> @@ -34,17 +34,18 @@
>  
>  #include <drm/drm_drv.h>
>  
> +#include "i915_drv.h"
> +#include "i915_reg.h"
>  #include "icl_dsi_regs.h"
>  #include "intel_display_trace.h"
>  #include "intel_display_types.h"
> +#include "intel_dp_aux.h"
>  #include "intel_fifo_underrun.h"
>  #include "intel_hotplug.h"
> +#include "intel_hotplug_irq.h"
>  #include "intel_lpe_audio.h"
>  #include "intel_psr.h"
>  #include "intel_psr_regs.h"
> -
> -#include "i915_drv.h"
> -#include "i915_reg.h"
>  #include "intel_uncore.h"
>  
>  static u32 raw_reg_read(void __iomem *base, i915_reg_t reg)
> @@ -149,55 +150,6 @@ static inline void pmu_irq_stats(struct drm_i915_private *i915,
>  {
>  }
>  
> -typedef bool (*long_pulse_detect_func)(enum hpd_pin pin, u32 val);
> -typedef u32 (*hotplug_enables_func)(struct intel_encoder *encoder);
> -typedef u32 (*hotplug_mask_func)(enum hpd_pin pin);
> -
> -static const u32 hpd_gen11[HPD_NUM_PINS] = {
> -	[HPD_PORT_TC1] = GEN11_TC_HOTPLUG(HPD_PORT_TC1) | GEN11_TBT_HOTPLUG(HPD_PORT_TC1),
> -	[HPD_PORT_TC2] = GEN11_TC_HOTPLUG(HPD_PORT_TC2) | GEN11_TBT_HOTPLUG(HPD_PORT_TC2),
> -	[HPD_PORT_TC3] = GEN11_TC_HOTPLUG(HPD_PORT_TC3) | GEN11_TBT_HOTPLUG(HPD_PORT_TC3),
> -	[HPD_PORT_TC4] = GEN11_TC_HOTPLUG(HPD_PORT_TC4) | GEN11_TBT_HOTPLUG(HPD_PORT_TC4),
> -	[HPD_PORT_TC5] = GEN11_TC_HOTPLUG(HPD_PORT_TC5) | GEN11_TBT_HOTPLUG(HPD_PORT_TC5),
> -	[HPD_PORT_TC6] = GEN11_TC_HOTPLUG(HPD_PORT_TC6) | GEN11_TBT_HOTPLUG(HPD_PORT_TC6),
> -};
> -
> -static const u32 hpd_icp[HPD_NUM_PINS] = {
> -	[HPD_PORT_A] = SDE_DDI_HOTPLUG_ICP(HPD_PORT_A),
> -	[HPD_PORT_B] = SDE_DDI_HOTPLUG_ICP(HPD_PORT_B),
> -	[HPD_PORT_C] = SDE_DDI_HOTPLUG_ICP(HPD_PORT_C),
> -	[HPD_PORT_TC1] = SDE_TC_HOTPLUG_ICP(HPD_PORT_TC1),
> -	[HPD_PORT_TC2] = SDE_TC_HOTPLUG_ICP(HPD_PORT_TC2),
> -	[HPD_PORT_TC3] = SDE_TC_HOTPLUG_ICP(HPD_PORT_TC3),
> -	[HPD_PORT_TC4] = SDE_TC_HOTPLUG_ICP(HPD_PORT_TC4),
> -	[HPD_PORT_TC5] = SDE_TC_HOTPLUG_ICP(HPD_PORT_TC5),
> -	[HPD_PORT_TC6] = SDE_TC_HOTPLUG_ICP(HPD_PORT_TC6),
> -};
> -
> -static const u32 hpd_sde_dg1[HPD_NUM_PINS] = {
> -	[HPD_PORT_A] = SDE_DDI_HOTPLUG_ICP(HPD_PORT_A),
> -	[HPD_PORT_B] = SDE_DDI_HOTPLUG_ICP(HPD_PORT_B),
> -	[HPD_PORT_C] = SDE_DDI_HOTPLUG_ICP(HPD_PORT_C),
> -	[HPD_PORT_D] = SDE_DDI_HOTPLUG_ICP(HPD_PORT_D),
> -	[HPD_PORT_TC1] = SDE_TC_HOTPLUG_DG2(HPD_PORT_TC1),
> -};
> -
> -static void intel_hpd_init_pins(struct drm_i915_private *dev_priv)
> -{
> -	struct intel_hotplug *hpd = &dev_priv->display.hotplug;
> -
> -	hpd->hpd = hpd_gen11;
> -
> -	if ((INTEL_PCH_TYPE(dev_priv) < PCH_DG1) &&
> -	    (!HAS_PCH_SPLIT(dev_priv) || HAS_PCH_NOP(dev_priv)))
> -		return;
> -
> -	if (INTEL_PCH_TYPE(dev_priv) >= PCH_DG1)
> -		hpd->pch_hpd = hpd_sde_dg1;
> -	else
> -		hpd->pch_hpd = hpd_icp;
> -}
> -
>  static void
>  intel_handle_vblank(struct drm_i915_private *dev_priv, enum pipe pipe)
>  {
> @@ -206,42 +158,49 @@ intel_handle_vblank(struct drm_i915_private *dev_priv, enum pipe pipe)
>  	drm_crtc_handle_vblank(&crtc->base);
>  }
>  
> -/* For display hotplug interrupt */
> -static inline void
> -i915_hotplug_interrupt_update_locked(struct drm_i915_private *dev_priv,
> -				     u32 mask,
> -				     u32 bits)
> +void ilk_update_display_irq(struct drm_i915_private *dev_priv,
> +			    u32 interrupt_mask, u32 enabled_irq_mask)
>  {
> -	u32 val;
> +	u32 new_val;
>  
>  	lockdep_assert_held(&dev_priv->irq_lock);
> -	drm_WARN_ON(&dev_priv->drm, bits & ~mask);
> +	drm_WARN_ON(&dev_priv->drm, enabled_irq_mask & ~interrupt_mask);
> +
> +	new_val = dev_priv->irq_mask;
> +	new_val &= ~interrupt_mask;
> +	new_val |= (~enabled_irq_mask & interrupt_mask);
>  
> -	val = intel_uncore_read(&dev_priv->uncore, PORT_HOTPLUG_EN);
> -	val &= ~mask;
> -	val |= bits;
> -	intel_uncore_write(&dev_priv->uncore, PORT_HOTPLUG_EN, val);
> +	if (new_val != dev_priv->irq_mask &&
> +	    !drm_WARN_ON(&dev_priv->drm, !intel_irqs_enabled(dev_priv))) {
> +		dev_priv->irq_mask = new_val;
> +		intel_uncore_write(&dev_priv->uncore, DEIMR, dev_priv->irq_mask);
> +		intel_uncore_posting_read(&dev_priv->uncore, DEIMR);
> +	}
>  }
>  
> -/**
> - * i915_hotplug_interrupt_update - update hotplug interrupt enable
> - * @dev_priv: driver private
> - * @mask: bits to update
> - * @bits: bits to enable
> - * NOTE: the HPD enable bits are modified both inside and outside
> - * of an interrupt context. To avoid that read-modify-write cycles
> - * interfer, these bits are protected by a spinlock. Since this
> - * function is usually not called from a context where the lock is
> - * held already, this function acquires the lock itself. A non-locking
> - * version is also available.
> - */
> -void i915_hotplug_interrupt_update(struct drm_i915_private *dev_priv,
> -				   u32 mask,
> -				   u32 bits)
> +void bdw_update_port_irq(struct drm_i915_private *dev_priv,
> +			 u32 interrupt_mask, u32 enabled_irq_mask)
>  {
> -	spin_lock_irq(&dev_priv->irq_lock);
> -	i915_hotplug_interrupt_update_locked(dev_priv, mask, bits);
> -	spin_unlock_irq(&dev_priv->irq_lock);
> +	u32 new_val;
> +	u32 old_val;
> +
> +	lockdep_assert_held(&dev_priv->irq_lock);
> +
> +	drm_WARN_ON(&dev_priv->drm, enabled_irq_mask & ~interrupt_mask);
> +
> +	if (drm_WARN_ON(&dev_priv->drm, !intel_irqs_enabled(dev_priv)))
> +		return;
> +
> +	old_val = intel_uncore_read(&dev_priv->uncore, GEN8_DE_PORT_IMR);
> +
> +	new_val = old_val;
> +	new_val &= ~interrupt_mask;
> +	new_val |= (~enabled_irq_mask & interrupt_mask);
> +
> +	if (new_val != old_val) {
> +		intel_uncore_write(&dev_priv->uncore, GEN8_DE_PORT_IMR, new_val);
> +		intel_uncore_posting_read(&dev_priv->uncore, GEN8_DE_PORT_IMR);
> +	}
>  }
>  
>  /**
> @@ -287,11 +246,12 @@ void bdw_disable_pipe_irq(struct drm_i915_private *i915,
>  	bdw_update_pipe_irq(i915, pipe, bits, 0);
>  }
>  
> -static void ibx_display_interrupt_update(struct drm_i915_private *dev_priv,
> -					 u32 interrupt_mask,
> -					 u32 enabled_irq_mask)
> +void ibx_display_interrupt_update(struct drm_i915_private *dev_priv,
> +				  u32 interrupt_mask,
> +				  u32 enabled_irq_mask)
>  {
>  	u32 sdeimr = intel_uncore_read(&dev_priv->uncore, SDEIMR);
> +
>  	sdeimr &= ~interrupt_mask;
>  	sdeimr |= (~enabled_irq_mask & interrupt_mask);
>  
> @@ -343,142 +303,6 @@ u32 i915_pipestat_enable_mask(struct drm_i915_private *dev_priv,
>  	BUG_ON(1); /* Not to be called */
>  }
>  
> -
> -static bool gen11_port_hotplug_long_detect(enum hpd_pin pin, u32 val)
> -{
> -	switch (pin) {
> -	case HPD_PORT_TC1:
> -	case HPD_PORT_TC2:
> -	case HPD_PORT_TC3:
> -	case HPD_PORT_TC4:
> -	case HPD_PORT_TC5:
> -	case HPD_PORT_TC6:
> -		return val & GEN11_HOTPLUG_CTL_LONG_DETECT(pin);
> -	default:
> -		return false;
> -	}
> -}
> -
> -static bool icp_ddi_port_hotplug_long_detect(enum hpd_pin pin, u32 val)
> -{
> -	switch (pin) {
> -	case HPD_PORT_A:
> -	case HPD_PORT_B:
> -	case HPD_PORT_C:
> -	case HPD_PORT_D:
> -		return val & SHOTPLUG_CTL_DDI_HPD_LONG_DETECT(pin);
> -	default:
> -		return false;
> -	}
> -}
> -
> -static bool icp_tc_port_hotplug_long_detect(enum hpd_pin pin, u32 val)
> -{
> -	switch (pin) {
> -	case HPD_PORT_TC1:
> -	case HPD_PORT_TC2:
> -	case HPD_PORT_TC3:
> -	case HPD_PORT_TC4:
> -	case HPD_PORT_TC5:
> -	case HPD_PORT_TC6:
> -		return val & ICP_TC_HPD_LONG_DETECT(pin);
> -	default:
> -		return false;
> -	}
> -}
> -
> -/*
> - * Get a bit mask of pins that have triggered, and which ones may be long.
> - * This can be called multiple times with the same masks to accumulate
> - * hotplug detection results from several registers.
> - *
> - * Note that the caller is expected to zero out the masks initially.
> - */
> -static void intel_get_hpd_pins(struct drm_i915_private *dev_priv,
> -			       u32 *pin_mask, u32 *long_mask,
> -			       u32 hotplug_trigger, u32 dig_hotplug_reg,
> -			       const u32 hpd[HPD_NUM_PINS],
> -			       bool long_pulse_detect(enum hpd_pin pin, u32 val))
> -{
> -	enum hpd_pin pin;
> -
> -	BUILD_BUG_ON(BITS_PER_TYPE(*pin_mask) < HPD_NUM_PINS);
> -
> -	for_each_hpd_pin(pin) {
> -		if ((hpd[pin] & hotplug_trigger) == 0)
> -			continue;
> -
> -		*pin_mask |= BIT(pin);
> -
> -		if (long_pulse_detect(pin, dig_hotplug_reg))
> -			*long_mask |= BIT(pin);
> -	}
> -
> -	drm_dbg(&dev_priv->drm,
> -		"hotplug event received, stat 0x%08x, dig 0x%08x, pins 0x%08x, long 0x%08x\n",
> -		hotplug_trigger, dig_hotplug_reg, *pin_mask, *long_mask);
> -
> -}
> -
> -static u32 intel_hpd_enabled_irqs(struct drm_i915_private *dev_priv,
> -				  const u32 hpd[HPD_NUM_PINS])
> -{
> -	struct intel_encoder *encoder;
> -	u32 enabled_irqs = 0;
> -
> -	for_each_intel_encoder(&dev_priv->drm, encoder)
> -		if (dev_priv->display.hotplug.stats[encoder->hpd_pin].state == HPD_ENABLED)
> -			enabled_irqs |= hpd[encoder->hpd_pin];
> -
> -	return enabled_irqs;
> -}
> -
> -static u32 intel_hpd_hotplug_irqs(struct drm_i915_private *dev_priv,
> -				  const u32 hpd[HPD_NUM_PINS])
> -{
> -	struct intel_encoder *encoder;
> -	u32 hotplug_irqs = 0;
> -
> -	for_each_intel_encoder(&dev_priv->drm, encoder)
> -		hotplug_irqs |= hpd[encoder->hpd_pin];
> -
> -	return hotplug_irqs;
> -}
> -
> -static u32 intel_hpd_hotplug_mask(struct drm_i915_private *i915,
> -				  hotplug_mask_func hotplug_mask)
> -{
> -	enum hpd_pin pin;
> -	u32 hotplug = 0;
> -
> -	for_each_hpd_pin(pin)
> -		hotplug |= hotplug_mask(pin);
> -
> -	return hotplug;
> -}
> -
> -static u32 intel_hpd_hotplug_enables(struct drm_i915_private *i915,
> -				     hotplug_enables_func hotplug_enables)
> -{
> -	struct intel_encoder *encoder;
> -	u32 hotplug = 0;
> -
> -	for_each_intel_encoder(&i915->drm, encoder)
> -		hotplug |= hotplug_enables(encoder);
> -
> -	return hotplug;
> -}
> -
> -static void gmbus_irq_handler(struct drm_i915_private *dev_priv)
> -{
> -	wake_up_all(&dev_priv->display.gmbus.wait_queue);
> -}
> -
> -static void dp_aux_irq_handler(struct drm_i915_private *dev_priv)
> -{
> -	wake_up_all(&dev_priv->display.gmbus.wait_queue);
> -}
> -
>  #if defined(CONFIG_DEBUG_FS)
>  static void display_pipe_crc_irq_handler(struct drm_i915_private *dev_priv,
>  					 enum pipe pipe,
> @@ -548,80 +372,6 @@ static void hsw_pipe_crc_irq_handler(struct drm_i915_private *dev_priv,
>  				     0, 0, 0, 0);
>  }
>  
> -static void icp_irq_handler(struct drm_i915_private *dev_priv, u32 pch_iir)
> -{
> -	u32 ddi_hotplug_trigger = pch_iir & SDE_DDI_HOTPLUG_MASK_ICP;
> -	u32 tc_hotplug_trigger = pch_iir & SDE_TC_HOTPLUG_MASK_ICP;
> -	u32 pin_mask = 0, long_mask = 0;
> -
> -	if (ddi_hotplug_trigger) {
> -		u32 dig_hotplug_reg;
> -
> -		dig_hotplug_reg = intel_uncore_read(&dev_priv->uncore, SHOTPLUG_CTL_DDI);
> -		intel_uncore_write(&dev_priv->uncore, SHOTPLUG_CTL_DDI, dig_hotplug_reg);
> -
> -		intel_get_hpd_pins(dev_priv, &pin_mask, &long_mask,
> -				   ddi_hotplug_trigger, dig_hotplug_reg,
> -				   dev_priv->display.hotplug.pch_hpd,
> -				   icp_ddi_port_hotplug_long_detect);
> -	}
> -
> -	if (tc_hotplug_trigger) {
> -		u32 dig_hotplug_reg;
> -
> -		dig_hotplug_reg = intel_uncore_read(&dev_priv->uncore, SHOTPLUG_CTL_TC);
> -		intel_uncore_write(&dev_priv->uncore, SHOTPLUG_CTL_TC, dig_hotplug_reg);
> -
> -		intel_get_hpd_pins(dev_priv, &pin_mask, &long_mask,
> -				   tc_hotplug_trigger, dig_hotplug_reg,
> -				   dev_priv->display.hotplug.pch_hpd,
> -				   icp_tc_port_hotplug_long_detect);
> -	}
> -
> -	if (pin_mask)
> -		intel_hpd_irq_handler(dev_priv, pin_mask, long_mask);
> -
> -	if (pch_iir & SDE_GMBUS_ICP)
> -		gmbus_irq_handler(dev_priv);
> -}
> -
> -static void gen11_hpd_irq_handler(struct drm_i915_private *dev_priv, u32 iir)
> -{
> -	u32 pin_mask = 0, long_mask = 0;
> -	u32 trigger_tc = iir & GEN11_DE_TC_HOTPLUG_MASK;
> -	u32 trigger_tbt = iir & GEN11_DE_TBT_HOTPLUG_MASK;
> -
> -	if (trigger_tc) {
> -		u32 dig_hotplug_reg;
> -
> -		dig_hotplug_reg = intel_uncore_read(&dev_priv->uncore, GEN11_TC_HOTPLUG_CTL);
> -		intel_uncore_write(&dev_priv->uncore, GEN11_TC_HOTPLUG_CTL, dig_hotplug_reg);
> -
> -		intel_get_hpd_pins(dev_priv, &pin_mask, &long_mask,
> -				   trigger_tc, dig_hotplug_reg,
> -				   dev_priv->display.hotplug.hpd,
> -				   gen11_port_hotplug_long_detect);
> -	}
> -
> -	if (trigger_tbt) {
> -		u32 dig_hotplug_reg;
> -
> -		dig_hotplug_reg = intel_uncore_read(&dev_priv->uncore, GEN11_TBT_HOTPLUG_CTL);
> -		intel_uncore_write(&dev_priv->uncore, GEN11_TBT_HOTPLUG_CTL, dig_hotplug_reg);
> -
> -		intel_get_hpd_pins(dev_priv, &pin_mask, &long_mask,
> -				   trigger_tbt, dig_hotplug_reg,
> -				   dev_priv->display.hotplug.hpd,
> -				   gen11_port_hotplug_long_detect);
> -	}
> -
> -	if (pin_mask)
> -		intel_hpd_irq_handler(dev_priv, pin_mask, long_mask);
> -	else
> -		drm_err(&dev_priv->drm,
> -			"Unexpected DE HPD interrupt 0x%08x\n", iir);
> -}
> -
>  static u32 gen8_de_port_aux_mask(struct drm_i915_private *dev_priv)
>  {
>  	u32 mask;
> @@ -833,7 +583,7 @@ gen8_de_irq_handler(struct drm_i915_private *dev_priv, u32 master_ctl)
>  			ret = IRQ_HANDLED;
>  
>  			if (iir & gen8_de_port_aux_mask(dev_priv)) {
> -				dp_aux_irq_handler(dev_priv);
> +				intel_dp_aux_irq_handler(dev_priv);
>  				found = true;
>  			}
>  
> @@ -1074,202 +824,6 @@ void gen8_irq_power_well_pre_disable(struct drm_i915_private *dev_priv,
>  	intel_synchronize_irq(dev_priv);
>  }
>  
> -static u32 icp_ddi_hotplug_mask(enum hpd_pin hpd_pin)
> -{
> -	switch (hpd_pin) {
> -	case HPD_PORT_A:
> -	case HPD_PORT_B:
> -	case HPD_PORT_C:
> -	case HPD_PORT_D:
> -		return SHOTPLUG_CTL_DDI_HPD_ENABLE(hpd_pin);
> -	default:
> -		return 0;
> -	}
> -}
> -
> -static u32 icp_ddi_hotplug_enables(struct intel_encoder *encoder)
> -{
> -	return icp_ddi_hotplug_mask(encoder->hpd_pin);
> -}
> -
> -static u32 icp_tc_hotplug_mask(enum hpd_pin hpd_pin)
> -{
> -	switch (hpd_pin) {
> -	case HPD_PORT_TC1:
> -	case HPD_PORT_TC2:
> -	case HPD_PORT_TC3:
> -	case HPD_PORT_TC4:
> -	case HPD_PORT_TC5:
> -	case HPD_PORT_TC6:
> -		return ICP_TC_HPD_ENABLE(hpd_pin);
> -	default:
> -		return 0;
> -	}
> -}
> -
> -static u32 icp_tc_hotplug_enables(struct intel_encoder *encoder)
> -{
> -	return icp_tc_hotplug_mask(encoder->hpd_pin);
> -}
> -
> -static void icp_ddi_hpd_detection_setup(struct drm_i915_private *dev_priv)
> -{
> -	intel_uncore_rmw(&dev_priv->uncore, SHOTPLUG_CTL_DDI,
> -			 intel_hpd_hotplug_mask(dev_priv, icp_ddi_hotplug_mask),
> -			 intel_hpd_hotplug_enables(dev_priv, icp_ddi_hotplug_enables));
> -}
> -
> -static void icp_ddi_hpd_enable_detection(struct intel_encoder *encoder)
> -{
> -	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
> -
> -	intel_uncore_rmw(&dev_priv->uncore, SHOTPLUG_CTL_DDI,
> -			 icp_ddi_hotplug_mask(encoder->hpd_pin),
> -			 icp_ddi_hotplug_enables(encoder));
> -}
> -
> -static void icp_tc_hpd_detection_setup(struct drm_i915_private *dev_priv)
> -{
> -	intel_uncore_rmw(&dev_priv->uncore, SHOTPLUG_CTL_TC,
> -			 intel_hpd_hotplug_mask(dev_priv, icp_tc_hotplug_mask),
> -			 intel_hpd_hotplug_enables(dev_priv, icp_tc_hotplug_enables));
> -}
> -
> -static void icp_tc_hpd_enable_detection(struct intel_encoder *encoder)
> -{
> -	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
> -
> -	intel_uncore_rmw(&dev_priv->uncore, SHOTPLUG_CTL_TC,
> -			 icp_tc_hotplug_mask(encoder->hpd_pin),
> -			 icp_tc_hotplug_enables(encoder));
> -}
> -
> -static void icp_hpd_enable_detection(struct intel_encoder *encoder)
> -{
> -	icp_ddi_hpd_enable_detection(encoder);
> -	icp_tc_hpd_enable_detection(encoder);
> -}
> -
> -static void icp_hpd_irq_setup(struct drm_i915_private *dev_priv)
> -{
> -	u32 hotplug_irqs, enabled_irqs;
> -
> -	enabled_irqs = intel_hpd_enabled_irqs(dev_priv, dev_priv->display.hotplug.pch_hpd);
> -	hotplug_irqs = intel_hpd_hotplug_irqs(dev_priv, dev_priv->display.hotplug.pch_hpd);
> -
> -	if (INTEL_PCH_TYPE(dev_priv) <= PCH_TGP)
> -		intel_uncore_write(&dev_priv->uncore, SHPD_FILTER_CNT, SHPD_FILTER_CNT_500_ADJ);
> -
> -	ibx_display_interrupt_update(dev_priv, hotplug_irqs, enabled_irqs);
> -
> -	icp_ddi_hpd_detection_setup(dev_priv);
> -	icp_tc_hpd_detection_setup(dev_priv);
> -}
> -
> -static u32 gen11_hotplug_mask(enum hpd_pin hpd_pin)
> -{
> -	switch (hpd_pin) {
> -	case HPD_PORT_TC1:
> -	case HPD_PORT_TC2:
> -	case HPD_PORT_TC3:
> -	case HPD_PORT_TC4:
> -	case HPD_PORT_TC5:
> -	case HPD_PORT_TC6:
> -		return GEN11_HOTPLUG_CTL_ENABLE(hpd_pin);
> -	default:
> -		return 0;
> -	}
> -}
> -
> -static u32 gen11_hotplug_enables(struct intel_encoder *encoder)
> -{
> -	return gen11_hotplug_mask(encoder->hpd_pin);
> -}
> -
> -static void dg1_hpd_invert(struct drm_i915_private *dev_priv)
> -{
> -	u32 val = (INVERT_DDIA_HPD |
> -		   INVERT_DDIB_HPD |
> -		   INVERT_DDIC_HPD |
> -		   INVERT_DDID_HPD);
> -	intel_uncore_rmw(&dev_priv->uncore, SOUTH_CHICKEN1, 0, val);
> -}
> -
> -static void dg1_hpd_enable_detection(struct intel_encoder *encoder)
> -{
> -	struct drm_i915_private *i915 = to_i915(encoder->base.dev);
> -
> -	dg1_hpd_invert(i915);
> -	icp_hpd_enable_detection(encoder);
> -}
> -
> -static void dg1_hpd_irq_setup(struct drm_i915_private *dev_priv)
> -{
> -	dg1_hpd_invert(dev_priv);
> -	icp_hpd_irq_setup(dev_priv);
> -}
> -
> -static void gen11_tc_hpd_detection_setup(struct drm_i915_private *dev_priv)
> -{
> -	intel_uncore_rmw(&dev_priv->uncore, GEN11_TC_HOTPLUG_CTL,
> -			 intel_hpd_hotplug_mask(dev_priv, gen11_hotplug_mask),
> -			 intel_hpd_hotplug_enables(dev_priv, gen11_hotplug_enables));
> -}
> -
> -static void gen11_tc_hpd_enable_detection(struct intel_encoder *encoder)
> -{
> -	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
> -
> -	intel_uncore_rmw(&dev_priv->uncore, GEN11_TC_HOTPLUG_CTL,
> -			 gen11_hotplug_mask(encoder->hpd_pin),
> -			 gen11_hotplug_enables(encoder));
> -}
> -
> -static void gen11_tbt_hpd_detection_setup(struct drm_i915_private *dev_priv)
> -{
> -	intel_uncore_rmw(&dev_priv->uncore, GEN11_TBT_HOTPLUG_CTL,
> -			 intel_hpd_hotplug_mask(dev_priv, gen11_hotplug_mask),
> -			 intel_hpd_hotplug_enables(dev_priv, gen11_hotplug_enables));
> -}
> -
> -static void gen11_tbt_hpd_enable_detection(struct intel_encoder *encoder)
> -{
> -	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
> -
> -	intel_uncore_rmw(&dev_priv->uncore, GEN11_TBT_HOTPLUG_CTL,
> -			 gen11_hotplug_mask(encoder->hpd_pin),
> -			 gen11_hotplug_enables(encoder));
> -}
> -
> -static void gen11_hpd_enable_detection(struct intel_encoder *encoder)
> -{
> -	struct drm_i915_private *i915 = to_i915(encoder->base.dev);
> -
> -	gen11_tc_hpd_enable_detection(encoder);
> -	gen11_tbt_hpd_enable_detection(encoder);
> -
> -	if (INTEL_PCH_TYPE(i915) >= PCH_ICP)
> -		icp_hpd_enable_detection(encoder);
> -}
> -
> -static void gen11_hpd_irq_setup(struct drm_i915_private *dev_priv)
> -{
> -	u32 hotplug_irqs, enabled_irqs;
> -
> -	enabled_irqs = intel_hpd_enabled_irqs(dev_priv, dev_priv->display.hotplug.hpd);
> -	hotplug_irqs = intel_hpd_hotplug_irqs(dev_priv, dev_priv->display.hotplug.hpd);
> -
> -	intel_uncore_rmw(&dev_priv->uncore, GEN11_DE_HPD_IMR, hotplug_irqs,
> -			 ~enabled_irqs & hotplug_irqs);
> -	intel_uncore_posting_read(&dev_priv->uncore, GEN11_DE_HPD_IMR);
> -
> -	gen11_tc_hpd_detection_setup(dev_priv);
> -	gen11_tbt_hpd_detection_setup(dev_priv);
> -
> -	if (INTEL_PCH_TYPE(dev_priv) >= PCH_ICP)
> -		icp_hpd_irq_setup(dev_priv);
> -}
> -
>  static void gen8_de_irq_postinstall(struct drm_i915_private *dev_priv)
>  {
>  	u32 de_pipe_masked = gen8_de_pipe_fault_mask(dev_priv) |
> @@ -1363,38 +917,6 @@ void gen11_display_irq_postinstall(struct drm_i915_private *dev_priv)
>  	gen11_de_irq_postinstall(dev_priv);
>  }
>  
> -struct intel_hotplug_funcs {
> -	/* Enable HPD sense and interrupts for all present encoders */
> -	void (*hpd_irq_setup)(struct drm_i915_private *i915);
> -	/* Enable HPD sense for a single encoder */
> -	void (*hpd_enable_detection)(struct intel_encoder *encoder);
> -};
> -
> -#define HPD_FUNCS(platform)					 \
> -static const struct intel_hotplug_funcs platform##_hpd_funcs = { \
> -	.hpd_irq_setup = platform##_hpd_irq_setup,		 \
> -	.hpd_enable_detection = platform##_hpd_enable_detection, \
> -}
> -
> -HPD_FUNCS(dg1);
> -HPD_FUNCS(gen11);
> -HPD_FUNCS(icp);
> -#undef HPD_FUNCS
> -
> -void intel_hpd_enable_detection(struct intel_encoder *encoder)
> -{
> -	struct drm_i915_private *i915 = to_i915(encoder->base.dev);
> -
> -	if (i915->display.funcs.hotplug)
> -		i915->display.funcs.hotplug->hpd_enable_detection(encoder);
> -}
> -
> -void intel_hpd_irq_setup(struct drm_i915_private *i915)
> -{
> -	if (i915->display_irqs_enabled && i915->display.funcs.hotplug)
> -		i915->display.funcs.hotplug->hpd_irq_setup(i915);
> -}
> -
>  void intel_display_irq_init(struct drm_i915_private *dev_priv)
>  {
>  	struct drm_device *dev = &dev_priv->drm;
> @@ -1402,10 +924,6 @@ void intel_display_irq_init(struct drm_i915_private *dev_priv)
>  	if (!HAS_DISPLAY(dev_priv))
>  		return;
>  
> -	intel_hpd_init_pins(dev_priv);
> -
> -	intel_hpd_init_early(dev_priv);
> -
>  	dev->vblank_disable_immediate = true;
>  
>  	/* Most platforms treat the display irq block as an always-on
> @@ -1418,12 +936,7 @@ void intel_display_irq_init(struct drm_i915_private *dev_priv)
>  	if (IS_VALLEYVIEW(dev_priv) || IS_CHERRYVIEW(dev_priv))
>  		dev_priv->display_irqs_enabled = false;
>  
> -	if (HAS_PCH_DG2(dev_priv))
> -		dev_priv->display.funcs.hotplug = &icp_hpd_funcs;
> -	else if (HAS_PCH_DG1(dev_priv))
> -		dev_priv->display.funcs.hotplug = &dg1_hpd_funcs;
> -	else if (DISPLAY_VER(dev_priv) >= 11)
> -		dev_priv->display.funcs.hotplug = &gen11_hpd_funcs;
> +	intel_hotplug_irq_init(dev_priv);
>  }
>  
>  void intel_display_irq_uninstall(struct drm_i915_private *dev_priv)
> diff --git a/drivers/gpu/drm/xe/display/ext/i915_irq.h b/drivers/gpu/drm/xe/display/ext/i915_irq.h
> index c64926a5a919..829b3dd55096 100644
> --- a/drivers/gpu/drm/xe/display/ext/i915_irq.h
> +++ b/drivers/gpu/drm/xe/display/ext/i915_irq.h
> @@ -40,18 +40,17 @@ static inline void valleyview_disable_display_irqs(struct drm_i915_private *dev_
>  {
>  }
>  
> -void intel_hpd_enable_detection(struct intel_encoder *encoder);
> -void intel_hpd_irq_setup(struct drm_i915_private *i915);
> -void i915_hotplug_interrupt_update(struct drm_i915_private *dev_priv,
> -				   u32 mask,
> -				   u32 bits);
> -
> +void ilk_update_display_irq(struct drm_i915_private *dev_priv,
> +			    u32 interrupt_mask, u32 enabled_irq_mask);
>  void ilk_enable_display_irq(struct drm_i915_private *i915, u32 bits);
>  void ilk_disable_display_irq(struct drm_i915_private *i915, u32 bits);
>  
> +void bdw_update_port_irq(struct drm_i915_private *i915, u32 interrupt_mask, u32 enabled_irq_mask);
>  void bdw_enable_pipe_irq(struct drm_i915_private *i915, enum pipe pipe, u32 bits);
>  void bdw_disable_pipe_irq(struct drm_i915_private *i915, enum pipe pipe, u32 bits);
>  
> +void ibx_display_interrupt_update(struct drm_i915_private *i915,
> +				  u32 interrupt_mask, u32 enabled_irq_mask);
>  void ibx_enable_display_interrupt(struct drm_i915_private *i915, u32 bits);
>  void ibx_disable_display_interrupt(struct drm_i915_private *i915, u32 bits);
>  
> diff --git a/drivers/gpu/drm/xe/xe_device_types.h b/drivers/gpu/drm/xe/xe_device_types.h
> index 6490a04614ce..cbd18b839236 100644
> --- a/drivers/gpu/drm/xe/xe_device_types.h
> +++ b/drivers/gpu/drm/xe/xe_device_types.h
> @@ -307,7 +307,11 @@ struct xe_device {
>  	struct drm_atomic_state *modeset_restore_state;
>  	struct list_head global_obj_list;
>  
> -	u32 de_irq_mask[I915_MAX_PIPES];
> +	union {
> +		/* only to allow build, not used functionally */
> +		u32 irq_mask;
> +		u32 de_irq_mask[I915_MAX_PIPES];
> +	};
>  	bool display_irqs_enabled;
>  	u32 enabled_irq_mask;
>  
> -- 
> 2.39.2
> 

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [Intel-xe] [PATCH 4/4] fixup! drm/xe/display: Implement display support
  2023-05-16 20:58   ` Rodrigo Vivi
@ 2023-05-17  8:04     ` Jani Nikula
  0 siblings, 0 replies; 16+ messages in thread
From: Jani Nikula @ 2023-05-17  8:04 UTC (permalink / raw)
  To: Rodrigo Vivi; +Cc: intel-xe

On Tue, 16 May 2023, Rodrigo Vivi <rodrigo.vivi@kernel.org> wrote:
> On Tue, May 16, 2023 at 04:32:34PM +0300, Jani Nikula wrote:
>> Use hotplug irq code from i915 display/intel_hotplug_irq.c instead of
>> copy-paste.
>> 
>> For now, need to add ilk_update_display_irq() and bdw_update_port_irq()
>> to xe display/ext/i915_irq.c.
>
> will we able to get rid of them?

Those are part of intel_display_irq.c, but there were some hiccups in
getting that to build, so I left it for later.

> anyway good clean-up already:
>
> Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>

Thanks, pushed.

BR,
Jani.

>
>
>> 
>> Signed-off-by: Jani Nikula <jani.nikula@intel.com>
>
>
>> ---
>>  drivers/gpu/drm/xe/Makefile                   |   1 +
>>  .../gpu/drm/xe/compat-i915-headers/i915_drv.h |   1 +
>>  drivers/gpu/drm/xe/display/ext/i915_irq.c     | 579 ++----------------
>>  drivers/gpu/drm/xe/display/ext/i915_irq.h     |  11 +-
>>  drivers/gpu/drm/xe/xe_device_types.h          |   6 +-
>>  5 files changed, 58 insertions(+), 540 deletions(-)
>> 
>> diff --git a/drivers/gpu/drm/xe/Makefile b/drivers/gpu/drm/xe/Makefile
>> index b6c41cd7dbe3..5418281b4f89 100644
>> --- a/drivers/gpu/drm/xe/Makefile
>> +++ b/drivers/gpu/drm/xe/Makefile
>> @@ -178,6 +178,7 @@ xe-$(CONFIG_DRM_XE_DISPLAY) += \
>>  	i915-display/intel_hdcp.o \
>>  	i915-display/intel_hdmi.o \
>>  	i915-display/intel_hotplug.o \
>> +	i915-display/intel_hotplug_irq.o \
>>  	i915-display/intel_hti.o \
>>  	i915-display/intel_lspcon.o \
>>  	i915-display/intel_modeset_setup.o \
>> diff --git a/drivers/gpu/drm/xe/compat-i915-headers/i915_drv.h b/drivers/gpu/drm/xe/compat-i915-headers/i915_drv.h
>> index ddc0ad39b154..74e6f063f741 100644
>> --- a/drivers/gpu/drm/xe/compat-i915-headers/i915_drv.h
>> +++ b/drivers/gpu/drm/xe/compat-i915-headers/i915_drv.h
>> @@ -101,6 +101,7 @@ static inline struct drm_i915_private *kdev_to_i915(struct device *kdev)
>>  #define HAS_DSC(xe) ((xe)->info.display.has_dsc)
>>  #define HAS_CUR_FBC(xe) (xe || 1)
>>  #define HAS_DOUBLE_BUFFERED_M_N(xe) ((xe) || 1)
>> +#define I915_HAS_HOTPLUG(xe) (true)
>>  #define HAS_D12_PLANE_MINIMIZATION(dev_priv) (IS_ROCKETLAKE(dev_priv) || \
>>  					      IS_ALDERLAKE_S(dev_priv))
>>  #define DISPLAY_VER(xe) ((xe)->info.display.ver)
>> diff --git a/drivers/gpu/drm/xe/display/ext/i915_irq.c b/drivers/gpu/drm/xe/display/ext/i915_irq.c
>> index afde97b6faa6..a0f22bd52549 100644
>> --- a/drivers/gpu/drm/xe/display/ext/i915_irq.c
>> +++ b/drivers/gpu/drm/xe/display/ext/i915_irq.c
>> @@ -34,17 +34,18 @@
>>  
>>  #include <drm/drm_drv.h>
>>  
>> +#include "i915_drv.h"
>> +#include "i915_reg.h"
>>  #include "icl_dsi_regs.h"
>>  #include "intel_display_trace.h"
>>  #include "intel_display_types.h"
>> +#include "intel_dp_aux.h"
>>  #include "intel_fifo_underrun.h"
>>  #include "intel_hotplug.h"
>> +#include "intel_hotplug_irq.h"
>>  #include "intel_lpe_audio.h"
>>  #include "intel_psr.h"
>>  #include "intel_psr_regs.h"
>> -
>> -#include "i915_drv.h"
>> -#include "i915_reg.h"
>>  #include "intel_uncore.h"
>>  
>>  static u32 raw_reg_read(void __iomem *base, i915_reg_t reg)
>> @@ -149,55 +150,6 @@ static inline void pmu_irq_stats(struct drm_i915_private *i915,
>>  {
>>  }
>>  
>> -typedef bool (*long_pulse_detect_func)(enum hpd_pin pin, u32 val);
>> -typedef u32 (*hotplug_enables_func)(struct intel_encoder *encoder);
>> -typedef u32 (*hotplug_mask_func)(enum hpd_pin pin);
>> -
>> -static const u32 hpd_gen11[HPD_NUM_PINS] = {
>> -	[HPD_PORT_TC1] = GEN11_TC_HOTPLUG(HPD_PORT_TC1) | GEN11_TBT_HOTPLUG(HPD_PORT_TC1),
>> -	[HPD_PORT_TC2] = GEN11_TC_HOTPLUG(HPD_PORT_TC2) | GEN11_TBT_HOTPLUG(HPD_PORT_TC2),
>> -	[HPD_PORT_TC3] = GEN11_TC_HOTPLUG(HPD_PORT_TC3) | GEN11_TBT_HOTPLUG(HPD_PORT_TC3),
>> -	[HPD_PORT_TC4] = GEN11_TC_HOTPLUG(HPD_PORT_TC4) | GEN11_TBT_HOTPLUG(HPD_PORT_TC4),
>> -	[HPD_PORT_TC5] = GEN11_TC_HOTPLUG(HPD_PORT_TC5) | GEN11_TBT_HOTPLUG(HPD_PORT_TC5),
>> -	[HPD_PORT_TC6] = GEN11_TC_HOTPLUG(HPD_PORT_TC6) | GEN11_TBT_HOTPLUG(HPD_PORT_TC6),
>> -};
>> -
>> -static const u32 hpd_icp[HPD_NUM_PINS] = {
>> -	[HPD_PORT_A] = SDE_DDI_HOTPLUG_ICP(HPD_PORT_A),
>> -	[HPD_PORT_B] = SDE_DDI_HOTPLUG_ICP(HPD_PORT_B),
>> -	[HPD_PORT_C] = SDE_DDI_HOTPLUG_ICP(HPD_PORT_C),
>> -	[HPD_PORT_TC1] = SDE_TC_HOTPLUG_ICP(HPD_PORT_TC1),
>> -	[HPD_PORT_TC2] = SDE_TC_HOTPLUG_ICP(HPD_PORT_TC2),
>> -	[HPD_PORT_TC3] = SDE_TC_HOTPLUG_ICP(HPD_PORT_TC3),
>> -	[HPD_PORT_TC4] = SDE_TC_HOTPLUG_ICP(HPD_PORT_TC4),
>> -	[HPD_PORT_TC5] = SDE_TC_HOTPLUG_ICP(HPD_PORT_TC5),
>> -	[HPD_PORT_TC6] = SDE_TC_HOTPLUG_ICP(HPD_PORT_TC6),
>> -};
>> -
>> -static const u32 hpd_sde_dg1[HPD_NUM_PINS] = {
>> -	[HPD_PORT_A] = SDE_DDI_HOTPLUG_ICP(HPD_PORT_A),
>> -	[HPD_PORT_B] = SDE_DDI_HOTPLUG_ICP(HPD_PORT_B),
>> -	[HPD_PORT_C] = SDE_DDI_HOTPLUG_ICP(HPD_PORT_C),
>> -	[HPD_PORT_D] = SDE_DDI_HOTPLUG_ICP(HPD_PORT_D),
>> -	[HPD_PORT_TC1] = SDE_TC_HOTPLUG_DG2(HPD_PORT_TC1),
>> -};
>> -
>> -static void intel_hpd_init_pins(struct drm_i915_private *dev_priv)
>> -{
>> -	struct intel_hotplug *hpd = &dev_priv->display.hotplug;
>> -
>> -	hpd->hpd = hpd_gen11;
>> -
>> -	if ((INTEL_PCH_TYPE(dev_priv) < PCH_DG1) &&
>> -	    (!HAS_PCH_SPLIT(dev_priv) || HAS_PCH_NOP(dev_priv)))
>> -		return;
>> -
>> -	if (INTEL_PCH_TYPE(dev_priv) >= PCH_DG1)
>> -		hpd->pch_hpd = hpd_sde_dg1;
>> -	else
>> -		hpd->pch_hpd = hpd_icp;
>> -}
>> -
>>  static void
>>  intel_handle_vblank(struct drm_i915_private *dev_priv, enum pipe pipe)
>>  {
>> @@ -206,42 +158,49 @@ intel_handle_vblank(struct drm_i915_private *dev_priv, enum pipe pipe)
>>  	drm_crtc_handle_vblank(&crtc->base);
>>  }
>>  
>> -/* For display hotplug interrupt */
>> -static inline void
>> -i915_hotplug_interrupt_update_locked(struct drm_i915_private *dev_priv,
>> -				     u32 mask,
>> -				     u32 bits)
>> +void ilk_update_display_irq(struct drm_i915_private *dev_priv,
>> +			    u32 interrupt_mask, u32 enabled_irq_mask)
>>  {
>> -	u32 val;
>> +	u32 new_val;
>>  
>>  	lockdep_assert_held(&dev_priv->irq_lock);
>> -	drm_WARN_ON(&dev_priv->drm, bits & ~mask);
>> +	drm_WARN_ON(&dev_priv->drm, enabled_irq_mask & ~interrupt_mask);
>> +
>> +	new_val = dev_priv->irq_mask;
>> +	new_val &= ~interrupt_mask;
>> +	new_val |= (~enabled_irq_mask & interrupt_mask);
>>  
>> -	val = intel_uncore_read(&dev_priv->uncore, PORT_HOTPLUG_EN);
>> -	val &= ~mask;
>> -	val |= bits;
>> -	intel_uncore_write(&dev_priv->uncore, PORT_HOTPLUG_EN, val);
>> +	if (new_val != dev_priv->irq_mask &&
>> +	    !drm_WARN_ON(&dev_priv->drm, !intel_irqs_enabled(dev_priv))) {
>> +		dev_priv->irq_mask = new_val;
>> +		intel_uncore_write(&dev_priv->uncore, DEIMR, dev_priv->irq_mask);
>> +		intel_uncore_posting_read(&dev_priv->uncore, DEIMR);
>> +	}
>>  }
>>  
>> -/**
>> - * i915_hotplug_interrupt_update - update hotplug interrupt enable
>> - * @dev_priv: driver private
>> - * @mask: bits to update
>> - * @bits: bits to enable
>> - * NOTE: the HPD enable bits are modified both inside and outside
>> - * of an interrupt context. To avoid that read-modify-write cycles
>> - * interfer, these bits are protected by a spinlock. Since this
>> - * function is usually not called from a context where the lock is
>> - * held already, this function acquires the lock itself. A non-locking
>> - * version is also available.
>> - */
>> -void i915_hotplug_interrupt_update(struct drm_i915_private *dev_priv,
>> -				   u32 mask,
>> -				   u32 bits)
>> +void bdw_update_port_irq(struct drm_i915_private *dev_priv,
>> +			 u32 interrupt_mask, u32 enabled_irq_mask)
>>  {
>> -	spin_lock_irq(&dev_priv->irq_lock);
>> -	i915_hotplug_interrupt_update_locked(dev_priv, mask, bits);
>> -	spin_unlock_irq(&dev_priv->irq_lock);
>> +	u32 new_val;
>> +	u32 old_val;
>> +
>> +	lockdep_assert_held(&dev_priv->irq_lock);
>> +
>> +	drm_WARN_ON(&dev_priv->drm, enabled_irq_mask & ~interrupt_mask);
>> +
>> +	if (drm_WARN_ON(&dev_priv->drm, !intel_irqs_enabled(dev_priv)))
>> +		return;
>> +
>> +	old_val = intel_uncore_read(&dev_priv->uncore, GEN8_DE_PORT_IMR);
>> +
>> +	new_val = old_val;
>> +	new_val &= ~interrupt_mask;
>> +	new_val |= (~enabled_irq_mask & interrupt_mask);
>> +
>> +	if (new_val != old_val) {
>> +		intel_uncore_write(&dev_priv->uncore, GEN8_DE_PORT_IMR, new_val);
>> +		intel_uncore_posting_read(&dev_priv->uncore, GEN8_DE_PORT_IMR);
>> +	}
>>  }
>>  
>>  /**
>> @@ -287,11 +246,12 @@ void bdw_disable_pipe_irq(struct drm_i915_private *i915,
>>  	bdw_update_pipe_irq(i915, pipe, bits, 0);
>>  }
>>  
>> -static void ibx_display_interrupt_update(struct drm_i915_private *dev_priv,
>> -					 u32 interrupt_mask,
>> -					 u32 enabled_irq_mask)
>> +void ibx_display_interrupt_update(struct drm_i915_private *dev_priv,
>> +				  u32 interrupt_mask,
>> +				  u32 enabled_irq_mask)
>>  {
>>  	u32 sdeimr = intel_uncore_read(&dev_priv->uncore, SDEIMR);
>> +
>>  	sdeimr &= ~interrupt_mask;
>>  	sdeimr |= (~enabled_irq_mask & interrupt_mask);
>>  
>> @@ -343,142 +303,6 @@ u32 i915_pipestat_enable_mask(struct drm_i915_private *dev_priv,
>>  	BUG_ON(1); /* Not to be called */
>>  }
>>  
>> -
>> -static bool gen11_port_hotplug_long_detect(enum hpd_pin pin, u32 val)
>> -{
>> -	switch (pin) {
>> -	case HPD_PORT_TC1:
>> -	case HPD_PORT_TC2:
>> -	case HPD_PORT_TC3:
>> -	case HPD_PORT_TC4:
>> -	case HPD_PORT_TC5:
>> -	case HPD_PORT_TC6:
>> -		return val & GEN11_HOTPLUG_CTL_LONG_DETECT(pin);
>> -	default:
>> -		return false;
>> -	}
>> -}
>> -
>> -static bool icp_ddi_port_hotplug_long_detect(enum hpd_pin pin, u32 val)
>> -{
>> -	switch (pin) {
>> -	case HPD_PORT_A:
>> -	case HPD_PORT_B:
>> -	case HPD_PORT_C:
>> -	case HPD_PORT_D:
>> -		return val & SHOTPLUG_CTL_DDI_HPD_LONG_DETECT(pin);
>> -	default:
>> -		return false;
>> -	}
>> -}
>> -
>> -static bool icp_tc_port_hotplug_long_detect(enum hpd_pin pin, u32 val)
>> -{
>> -	switch (pin) {
>> -	case HPD_PORT_TC1:
>> -	case HPD_PORT_TC2:
>> -	case HPD_PORT_TC3:
>> -	case HPD_PORT_TC4:
>> -	case HPD_PORT_TC5:
>> -	case HPD_PORT_TC6:
>> -		return val & ICP_TC_HPD_LONG_DETECT(pin);
>> -	default:
>> -		return false;
>> -	}
>> -}
>> -
>> -/*
>> - * Get a bit mask of pins that have triggered, and which ones may be long.
>> - * This can be called multiple times with the same masks to accumulate
>> - * hotplug detection results from several registers.
>> - *
>> - * Note that the caller is expected to zero out the masks initially.
>> - */
>> -static void intel_get_hpd_pins(struct drm_i915_private *dev_priv,
>> -			       u32 *pin_mask, u32 *long_mask,
>> -			       u32 hotplug_trigger, u32 dig_hotplug_reg,
>> -			       const u32 hpd[HPD_NUM_PINS],
>> -			       bool long_pulse_detect(enum hpd_pin pin, u32 val))
>> -{
>> -	enum hpd_pin pin;
>> -
>> -	BUILD_BUG_ON(BITS_PER_TYPE(*pin_mask) < HPD_NUM_PINS);
>> -
>> -	for_each_hpd_pin(pin) {
>> -		if ((hpd[pin] & hotplug_trigger) == 0)
>> -			continue;
>> -
>> -		*pin_mask |= BIT(pin);
>> -
>> -		if (long_pulse_detect(pin, dig_hotplug_reg))
>> -			*long_mask |= BIT(pin);
>> -	}
>> -
>> -	drm_dbg(&dev_priv->drm,
>> -		"hotplug event received, stat 0x%08x, dig 0x%08x, pins 0x%08x, long 0x%08x\n",
>> -		hotplug_trigger, dig_hotplug_reg, *pin_mask, *long_mask);
>> -
>> -}
>> -
>> -static u32 intel_hpd_enabled_irqs(struct drm_i915_private *dev_priv,
>> -				  const u32 hpd[HPD_NUM_PINS])
>> -{
>> -	struct intel_encoder *encoder;
>> -	u32 enabled_irqs = 0;
>> -
>> -	for_each_intel_encoder(&dev_priv->drm, encoder)
>> -		if (dev_priv->display.hotplug.stats[encoder->hpd_pin].state == HPD_ENABLED)
>> -			enabled_irqs |= hpd[encoder->hpd_pin];
>> -
>> -	return enabled_irqs;
>> -}
>> -
>> -static u32 intel_hpd_hotplug_irqs(struct drm_i915_private *dev_priv,
>> -				  const u32 hpd[HPD_NUM_PINS])
>> -{
>> -	struct intel_encoder *encoder;
>> -	u32 hotplug_irqs = 0;
>> -
>> -	for_each_intel_encoder(&dev_priv->drm, encoder)
>> -		hotplug_irqs |= hpd[encoder->hpd_pin];
>> -
>> -	return hotplug_irqs;
>> -}
>> -
>> -static u32 intel_hpd_hotplug_mask(struct drm_i915_private *i915,
>> -				  hotplug_mask_func hotplug_mask)
>> -{
>> -	enum hpd_pin pin;
>> -	u32 hotplug = 0;
>> -
>> -	for_each_hpd_pin(pin)
>> -		hotplug |= hotplug_mask(pin);
>> -
>> -	return hotplug;
>> -}
>> -
>> -static u32 intel_hpd_hotplug_enables(struct drm_i915_private *i915,
>> -				     hotplug_enables_func hotplug_enables)
>> -{
>> -	struct intel_encoder *encoder;
>> -	u32 hotplug = 0;
>> -
>> -	for_each_intel_encoder(&i915->drm, encoder)
>> -		hotplug |= hotplug_enables(encoder);
>> -
>> -	return hotplug;
>> -}
>> -
>> -static void gmbus_irq_handler(struct drm_i915_private *dev_priv)
>> -{
>> -	wake_up_all(&dev_priv->display.gmbus.wait_queue);
>> -}
>> -
>> -static void dp_aux_irq_handler(struct drm_i915_private *dev_priv)
>> -{
>> -	wake_up_all(&dev_priv->display.gmbus.wait_queue);
>> -}
>> -
>>  #if defined(CONFIG_DEBUG_FS)
>>  static void display_pipe_crc_irq_handler(struct drm_i915_private *dev_priv,
>>  					 enum pipe pipe,
>> @@ -548,80 +372,6 @@ static void hsw_pipe_crc_irq_handler(struct drm_i915_private *dev_priv,
>>  				     0, 0, 0, 0);
>>  }
>>  
>> -static void icp_irq_handler(struct drm_i915_private *dev_priv, u32 pch_iir)
>> -{
>> -	u32 ddi_hotplug_trigger = pch_iir & SDE_DDI_HOTPLUG_MASK_ICP;
>> -	u32 tc_hotplug_trigger = pch_iir & SDE_TC_HOTPLUG_MASK_ICP;
>> -	u32 pin_mask = 0, long_mask = 0;
>> -
>> -	if (ddi_hotplug_trigger) {
>> -		u32 dig_hotplug_reg;
>> -
>> -		dig_hotplug_reg = intel_uncore_read(&dev_priv->uncore, SHOTPLUG_CTL_DDI);
>> -		intel_uncore_write(&dev_priv->uncore, SHOTPLUG_CTL_DDI, dig_hotplug_reg);
>> -
>> -		intel_get_hpd_pins(dev_priv, &pin_mask, &long_mask,
>> -				   ddi_hotplug_trigger, dig_hotplug_reg,
>> -				   dev_priv->display.hotplug.pch_hpd,
>> -				   icp_ddi_port_hotplug_long_detect);
>> -	}
>> -
>> -	if (tc_hotplug_trigger) {
>> -		u32 dig_hotplug_reg;
>> -
>> -		dig_hotplug_reg = intel_uncore_read(&dev_priv->uncore, SHOTPLUG_CTL_TC);
>> -		intel_uncore_write(&dev_priv->uncore, SHOTPLUG_CTL_TC, dig_hotplug_reg);
>> -
>> -		intel_get_hpd_pins(dev_priv, &pin_mask, &long_mask,
>> -				   tc_hotplug_trigger, dig_hotplug_reg,
>> -				   dev_priv->display.hotplug.pch_hpd,
>> -				   icp_tc_port_hotplug_long_detect);
>> -	}
>> -
>> -	if (pin_mask)
>> -		intel_hpd_irq_handler(dev_priv, pin_mask, long_mask);
>> -
>> -	if (pch_iir & SDE_GMBUS_ICP)
>> -		gmbus_irq_handler(dev_priv);
>> -}
>> -
>> -static void gen11_hpd_irq_handler(struct drm_i915_private *dev_priv, u32 iir)
>> -{
>> -	u32 pin_mask = 0, long_mask = 0;
>> -	u32 trigger_tc = iir & GEN11_DE_TC_HOTPLUG_MASK;
>> -	u32 trigger_tbt = iir & GEN11_DE_TBT_HOTPLUG_MASK;
>> -
>> -	if (trigger_tc) {
>> -		u32 dig_hotplug_reg;
>> -
>> -		dig_hotplug_reg = intel_uncore_read(&dev_priv->uncore, GEN11_TC_HOTPLUG_CTL);
>> -		intel_uncore_write(&dev_priv->uncore, GEN11_TC_HOTPLUG_CTL, dig_hotplug_reg);
>> -
>> -		intel_get_hpd_pins(dev_priv, &pin_mask, &long_mask,
>> -				   trigger_tc, dig_hotplug_reg,
>> -				   dev_priv->display.hotplug.hpd,
>> -				   gen11_port_hotplug_long_detect);
>> -	}
>> -
>> -	if (trigger_tbt) {
>> -		u32 dig_hotplug_reg;
>> -
>> -		dig_hotplug_reg = intel_uncore_read(&dev_priv->uncore, GEN11_TBT_HOTPLUG_CTL);
>> -		intel_uncore_write(&dev_priv->uncore, GEN11_TBT_HOTPLUG_CTL, dig_hotplug_reg);
>> -
>> -		intel_get_hpd_pins(dev_priv, &pin_mask, &long_mask,
>> -				   trigger_tbt, dig_hotplug_reg,
>> -				   dev_priv->display.hotplug.hpd,
>> -				   gen11_port_hotplug_long_detect);
>> -	}
>> -
>> -	if (pin_mask)
>> -		intel_hpd_irq_handler(dev_priv, pin_mask, long_mask);
>> -	else
>> -		drm_err(&dev_priv->drm,
>> -			"Unexpected DE HPD interrupt 0x%08x\n", iir);
>> -}
>> -
>>  static u32 gen8_de_port_aux_mask(struct drm_i915_private *dev_priv)
>>  {
>>  	u32 mask;
>> @@ -833,7 +583,7 @@ gen8_de_irq_handler(struct drm_i915_private *dev_priv, u32 master_ctl)
>>  			ret = IRQ_HANDLED;
>>  
>>  			if (iir & gen8_de_port_aux_mask(dev_priv)) {
>> -				dp_aux_irq_handler(dev_priv);
>> +				intel_dp_aux_irq_handler(dev_priv);
>>  				found = true;
>>  			}
>>  
>> @@ -1074,202 +824,6 @@ void gen8_irq_power_well_pre_disable(struct drm_i915_private *dev_priv,
>>  	intel_synchronize_irq(dev_priv);
>>  }
>>  
>> -static u32 icp_ddi_hotplug_mask(enum hpd_pin hpd_pin)
>> -{
>> -	switch (hpd_pin) {
>> -	case HPD_PORT_A:
>> -	case HPD_PORT_B:
>> -	case HPD_PORT_C:
>> -	case HPD_PORT_D:
>> -		return SHOTPLUG_CTL_DDI_HPD_ENABLE(hpd_pin);
>> -	default:
>> -		return 0;
>> -	}
>> -}
>> -
>> -static u32 icp_ddi_hotplug_enables(struct intel_encoder *encoder)
>> -{
>> -	return icp_ddi_hotplug_mask(encoder->hpd_pin);
>> -}
>> -
>> -static u32 icp_tc_hotplug_mask(enum hpd_pin hpd_pin)
>> -{
>> -	switch (hpd_pin) {
>> -	case HPD_PORT_TC1:
>> -	case HPD_PORT_TC2:
>> -	case HPD_PORT_TC3:
>> -	case HPD_PORT_TC4:
>> -	case HPD_PORT_TC5:
>> -	case HPD_PORT_TC6:
>> -		return ICP_TC_HPD_ENABLE(hpd_pin);
>> -	default:
>> -		return 0;
>> -	}
>> -}
>> -
>> -static u32 icp_tc_hotplug_enables(struct intel_encoder *encoder)
>> -{
>> -	return icp_tc_hotplug_mask(encoder->hpd_pin);
>> -}
>> -
>> -static void icp_ddi_hpd_detection_setup(struct drm_i915_private *dev_priv)
>> -{
>> -	intel_uncore_rmw(&dev_priv->uncore, SHOTPLUG_CTL_DDI,
>> -			 intel_hpd_hotplug_mask(dev_priv, icp_ddi_hotplug_mask),
>> -			 intel_hpd_hotplug_enables(dev_priv, icp_ddi_hotplug_enables));
>> -}
>> -
>> -static void icp_ddi_hpd_enable_detection(struct intel_encoder *encoder)
>> -{
>> -	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
>> -
>> -	intel_uncore_rmw(&dev_priv->uncore, SHOTPLUG_CTL_DDI,
>> -			 icp_ddi_hotplug_mask(encoder->hpd_pin),
>> -			 icp_ddi_hotplug_enables(encoder));
>> -}
>> -
>> -static void icp_tc_hpd_detection_setup(struct drm_i915_private *dev_priv)
>> -{
>> -	intel_uncore_rmw(&dev_priv->uncore, SHOTPLUG_CTL_TC,
>> -			 intel_hpd_hotplug_mask(dev_priv, icp_tc_hotplug_mask),
>> -			 intel_hpd_hotplug_enables(dev_priv, icp_tc_hotplug_enables));
>> -}
>> -
>> -static void icp_tc_hpd_enable_detection(struct intel_encoder *encoder)
>> -{
>> -	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
>> -
>> -	intel_uncore_rmw(&dev_priv->uncore, SHOTPLUG_CTL_TC,
>> -			 icp_tc_hotplug_mask(encoder->hpd_pin),
>> -			 icp_tc_hotplug_enables(encoder));
>> -}
>> -
>> -static void icp_hpd_enable_detection(struct intel_encoder *encoder)
>> -{
>> -	icp_ddi_hpd_enable_detection(encoder);
>> -	icp_tc_hpd_enable_detection(encoder);
>> -}
>> -
>> -static void icp_hpd_irq_setup(struct drm_i915_private *dev_priv)
>> -{
>> -	u32 hotplug_irqs, enabled_irqs;
>> -
>> -	enabled_irqs = intel_hpd_enabled_irqs(dev_priv, dev_priv->display.hotplug.pch_hpd);
>> -	hotplug_irqs = intel_hpd_hotplug_irqs(dev_priv, dev_priv->display.hotplug.pch_hpd);
>> -
>> -	if (INTEL_PCH_TYPE(dev_priv) <= PCH_TGP)
>> -		intel_uncore_write(&dev_priv->uncore, SHPD_FILTER_CNT, SHPD_FILTER_CNT_500_ADJ);
>> -
>> -	ibx_display_interrupt_update(dev_priv, hotplug_irqs, enabled_irqs);
>> -
>> -	icp_ddi_hpd_detection_setup(dev_priv);
>> -	icp_tc_hpd_detection_setup(dev_priv);
>> -}
>> -
>> -static u32 gen11_hotplug_mask(enum hpd_pin hpd_pin)
>> -{
>> -	switch (hpd_pin) {
>> -	case HPD_PORT_TC1:
>> -	case HPD_PORT_TC2:
>> -	case HPD_PORT_TC3:
>> -	case HPD_PORT_TC4:
>> -	case HPD_PORT_TC5:
>> -	case HPD_PORT_TC6:
>> -		return GEN11_HOTPLUG_CTL_ENABLE(hpd_pin);
>> -	default:
>> -		return 0;
>> -	}
>> -}
>> -
>> -static u32 gen11_hotplug_enables(struct intel_encoder *encoder)
>> -{
>> -	return gen11_hotplug_mask(encoder->hpd_pin);
>> -}
>> -
>> -static void dg1_hpd_invert(struct drm_i915_private *dev_priv)
>> -{
>> -	u32 val = (INVERT_DDIA_HPD |
>> -		   INVERT_DDIB_HPD |
>> -		   INVERT_DDIC_HPD |
>> -		   INVERT_DDID_HPD);
>> -	intel_uncore_rmw(&dev_priv->uncore, SOUTH_CHICKEN1, 0, val);
>> -}
>> -
>> -static void dg1_hpd_enable_detection(struct intel_encoder *encoder)
>> -{
>> -	struct drm_i915_private *i915 = to_i915(encoder->base.dev);
>> -
>> -	dg1_hpd_invert(i915);
>> -	icp_hpd_enable_detection(encoder);
>> -}
>> -
>> -static void dg1_hpd_irq_setup(struct drm_i915_private *dev_priv)
>> -{
>> -	dg1_hpd_invert(dev_priv);
>> -	icp_hpd_irq_setup(dev_priv);
>> -}
>> -
>> -static void gen11_tc_hpd_detection_setup(struct drm_i915_private *dev_priv)
>> -{
>> -	intel_uncore_rmw(&dev_priv->uncore, GEN11_TC_HOTPLUG_CTL,
>> -			 intel_hpd_hotplug_mask(dev_priv, gen11_hotplug_mask),
>> -			 intel_hpd_hotplug_enables(dev_priv, gen11_hotplug_enables));
>> -}
>> -
>> -static void gen11_tc_hpd_enable_detection(struct intel_encoder *encoder)
>> -{
>> -	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
>> -
>> -	intel_uncore_rmw(&dev_priv->uncore, GEN11_TC_HOTPLUG_CTL,
>> -			 gen11_hotplug_mask(encoder->hpd_pin),
>> -			 gen11_hotplug_enables(encoder));
>> -}
>> -
>> -static void gen11_tbt_hpd_detection_setup(struct drm_i915_private *dev_priv)
>> -{
>> -	intel_uncore_rmw(&dev_priv->uncore, GEN11_TBT_HOTPLUG_CTL,
>> -			 intel_hpd_hotplug_mask(dev_priv, gen11_hotplug_mask),
>> -			 intel_hpd_hotplug_enables(dev_priv, gen11_hotplug_enables));
>> -}
>> -
>> -static void gen11_tbt_hpd_enable_detection(struct intel_encoder *encoder)
>> -{
>> -	struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
>> -
>> -	intel_uncore_rmw(&dev_priv->uncore, GEN11_TBT_HOTPLUG_CTL,
>> -			 gen11_hotplug_mask(encoder->hpd_pin),
>> -			 gen11_hotplug_enables(encoder));
>> -}
>> -
>> -static void gen11_hpd_enable_detection(struct intel_encoder *encoder)
>> -{
>> -	struct drm_i915_private *i915 = to_i915(encoder->base.dev);
>> -
>> -	gen11_tc_hpd_enable_detection(encoder);
>> -	gen11_tbt_hpd_enable_detection(encoder);
>> -
>> -	if (INTEL_PCH_TYPE(i915) >= PCH_ICP)
>> -		icp_hpd_enable_detection(encoder);
>> -}
>> -
>> -static void gen11_hpd_irq_setup(struct drm_i915_private *dev_priv)
>> -{
>> -	u32 hotplug_irqs, enabled_irqs;
>> -
>> -	enabled_irqs = intel_hpd_enabled_irqs(dev_priv, dev_priv->display.hotplug.hpd);
>> -	hotplug_irqs = intel_hpd_hotplug_irqs(dev_priv, dev_priv->display.hotplug.hpd);
>> -
>> -	intel_uncore_rmw(&dev_priv->uncore, GEN11_DE_HPD_IMR, hotplug_irqs,
>> -			 ~enabled_irqs & hotplug_irqs);
>> -	intel_uncore_posting_read(&dev_priv->uncore, GEN11_DE_HPD_IMR);
>> -
>> -	gen11_tc_hpd_detection_setup(dev_priv);
>> -	gen11_tbt_hpd_detection_setup(dev_priv);
>> -
>> -	if (INTEL_PCH_TYPE(dev_priv) >= PCH_ICP)
>> -		icp_hpd_irq_setup(dev_priv);
>> -}
>> -
>>  static void gen8_de_irq_postinstall(struct drm_i915_private *dev_priv)
>>  {
>>  	u32 de_pipe_masked = gen8_de_pipe_fault_mask(dev_priv) |
>> @@ -1363,38 +917,6 @@ void gen11_display_irq_postinstall(struct drm_i915_private *dev_priv)
>>  	gen11_de_irq_postinstall(dev_priv);
>>  }
>>  
>> -struct intel_hotplug_funcs {
>> -	/* Enable HPD sense and interrupts for all present encoders */
>> -	void (*hpd_irq_setup)(struct drm_i915_private *i915);
>> -	/* Enable HPD sense for a single encoder */
>> -	void (*hpd_enable_detection)(struct intel_encoder *encoder);
>> -};
>> -
>> -#define HPD_FUNCS(platform)					 \
>> -static const struct intel_hotplug_funcs platform##_hpd_funcs = { \
>> -	.hpd_irq_setup = platform##_hpd_irq_setup,		 \
>> -	.hpd_enable_detection = platform##_hpd_enable_detection, \
>> -}
>> -
>> -HPD_FUNCS(dg1);
>> -HPD_FUNCS(gen11);
>> -HPD_FUNCS(icp);
>> -#undef HPD_FUNCS
>> -
>> -void intel_hpd_enable_detection(struct intel_encoder *encoder)
>> -{
>> -	struct drm_i915_private *i915 = to_i915(encoder->base.dev);
>> -
>> -	if (i915->display.funcs.hotplug)
>> -		i915->display.funcs.hotplug->hpd_enable_detection(encoder);
>> -}
>> -
>> -void intel_hpd_irq_setup(struct drm_i915_private *i915)
>> -{
>> -	if (i915->display_irqs_enabled && i915->display.funcs.hotplug)
>> -		i915->display.funcs.hotplug->hpd_irq_setup(i915);
>> -}
>> -
>>  void intel_display_irq_init(struct drm_i915_private *dev_priv)
>>  {
>>  	struct drm_device *dev = &dev_priv->drm;
>> @@ -1402,10 +924,6 @@ void intel_display_irq_init(struct drm_i915_private *dev_priv)
>>  	if (!HAS_DISPLAY(dev_priv))
>>  		return;
>>  
>> -	intel_hpd_init_pins(dev_priv);
>> -
>> -	intel_hpd_init_early(dev_priv);
>> -
>>  	dev->vblank_disable_immediate = true;
>>  
>>  	/* Most platforms treat the display irq block as an always-on
>> @@ -1418,12 +936,7 @@ void intel_display_irq_init(struct drm_i915_private *dev_priv)
>>  	if (IS_VALLEYVIEW(dev_priv) || IS_CHERRYVIEW(dev_priv))
>>  		dev_priv->display_irqs_enabled = false;
>>  
>> -	if (HAS_PCH_DG2(dev_priv))
>> -		dev_priv->display.funcs.hotplug = &icp_hpd_funcs;
>> -	else if (HAS_PCH_DG1(dev_priv))
>> -		dev_priv->display.funcs.hotplug = &dg1_hpd_funcs;
>> -	else if (DISPLAY_VER(dev_priv) >= 11)
>> -		dev_priv->display.funcs.hotplug = &gen11_hpd_funcs;
>> +	intel_hotplug_irq_init(dev_priv);
>>  }
>>  
>>  void intel_display_irq_uninstall(struct drm_i915_private *dev_priv)
>> diff --git a/drivers/gpu/drm/xe/display/ext/i915_irq.h b/drivers/gpu/drm/xe/display/ext/i915_irq.h
>> index c64926a5a919..829b3dd55096 100644
>> --- a/drivers/gpu/drm/xe/display/ext/i915_irq.h
>> +++ b/drivers/gpu/drm/xe/display/ext/i915_irq.h
>> @@ -40,18 +40,17 @@ static inline void valleyview_disable_display_irqs(struct drm_i915_private *dev_
>>  {
>>  }
>>  
>> -void intel_hpd_enable_detection(struct intel_encoder *encoder);
>> -void intel_hpd_irq_setup(struct drm_i915_private *i915);
>> -void i915_hotplug_interrupt_update(struct drm_i915_private *dev_priv,
>> -				   u32 mask,
>> -				   u32 bits);
>> -
>> +void ilk_update_display_irq(struct drm_i915_private *dev_priv,
>> +			    u32 interrupt_mask, u32 enabled_irq_mask);
>>  void ilk_enable_display_irq(struct drm_i915_private *i915, u32 bits);
>>  void ilk_disable_display_irq(struct drm_i915_private *i915, u32 bits);
>>  
>> +void bdw_update_port_irq(struct drm_i915_private *i915, u32 interrupt_mask, u32 enabled_irq_mask);
>>  void bdw_enable_pipe_irq(struct drm_i915_private *i915, enum pipe pipe, u32 bits);
>>  void bdw_disable_pipe_irq(struct drm_i915_private *i915, enum pipe pipe, u32 bits);
>>  
>> +void ibx_display_interrupt_update(struct drm_i915_private *i915,
>> +				  u32 interrupt_mask, u32 enabled_irq_mask);
>>  void ibx_enable_display_interrupt(struct drm_i915_private *i915, u32 bits);
>>  void ibx_disable_display_interrupt(struct drm_i915_private *i915, u32 bits);
>>  
>> diff --git a/drivers/gpu/drm/xe/xe_device_types.h b/drivers/gpu/drm/xe/xe_device_types.h
>> index 6490a04614ce..cbd18b839236 100644
>> --- a/drivers/gpu/drm/xe/xe_device_types.h
>> +++ b/drivers/gpu/drm/xe/xe_device_types.h
>> @@ -307,7 +307,11 @@ struct xe_device {
>>  	struct drm_atomic_state *modeset_restore_state;
>>  	struct list_head global_obj_list;
>>  
>> -	u32 de_irq_mask[I915_MAX_PIPES];
>> +	union {
>> +		/* only to allow build, not used functionally */
>> +		u32 irq_mask;
>> +		u32 de_irq_mask[I915_MAX_PIPES];
>> +	};
>>  	bool display_irqs_enabled;
>>  	u32 enabled_irq_mask;
>>  
>> -- 
>> 2.39.2
>> 

-- 
Jani Nikula, Intel Open Source Graphics Center

^ permalink raw reply	[flat|nested] 16+ messages in thread

* [Intel-xe] [PATCH 4/4] fixup! drm/xe/display: Implement display support
  2023-07-04 15:32 [Intel-xe] [PATCH 0/4] drm/xe/display: reuse soc/ code from i915 Jani Nikula
@ 2023-07-04 15:32 ` Jani Nikula
  0 siblings, 0 replies; 16+ messages in thread
From: Jani Nikula @ 2023-07-04 15:32 UTC (permalink / raw)
  To: intel-xe; +Cc: jani.nikula, lucas.demarchi

Use soc/intel_pch.[ch] from i915 instead of copy-paste.

Signed-off-by: Jani Nikula <jani.nikula@intel.com>
---
 drivers/gpu/drm/xe/Makefile                   |   6 +-
 .../gpu/drm/xe/compat-i915-headers/i915_drv.h |   2 +-
 .../xe/compat-i915-headers/soc/intel_pch.h    |   1 +
 drivers/gpu/drm/xe/display/ext/intel_pch.c    | 157 ------------------
 drivers/gpu/drm/xe/display/ext/intel_pch.h    |  91 ----------
 drivers/gpu/drm/xe/xe_device_types.h          |   2 +-
 6 files changed, 6 insertions(+), 253 deletions(-)
 create mode 100644 drivers/gpu/drm/xe/compat-i915-headers/soc/intel_pch.h
 delete mode 100644 drivers/gpu/drm/xe/display/ext/intel_pch.c
 delete mode 100644 drivers/gpu/drm/xe/display/ext/intel_pch.h

diff --git a/drivers/gpu/drm/xe/Makefile b/drivers/gpu/drm/xe/Makefile
index 054cfdbd30bd..336f0eb8f91e 100644
--- a/drivers/gpu/drm/xe/Makefile
+++ b/drivers/gpu/drm/xe/Makefile
@@ -145,12 +145,12 @@ xe-$(CONFIG_DRM_XE_DISPLAY) += \
 	display/xe_display_rps.o \
 	display/ext/i915_irq.o \
 	display/ext/intel_clock_gating.o \
-	display/ext/intel_device_info.o \
-	display/ext/intel_pch.o
+	display/ext/intel_device_info.o
 
 # SOC code shared with i915
 xe-$(CONFIG_DRM_XE_DISPLAY) += \
-	i915-soc/intel_dram.o
+	i915-soc/intel_dram.o \
+	i915-soc/intel_pch.o
 
 # Display code shared with i915
 xe-$(CONFIG_DRM_XE_DISPLAY) += \
diff --git a/drivers/gpu/drm/xe/compat-i915-headers/i915_drv.h b/drivers/gpu/drm/xe/compat-i915-headers/i915_drv.h
index 8428f15426eb..a51889af7c23 100644
--- a/drivers/gpu/drm/xe/compat-i915-headers/i915_drv.h
+++ b/drivers/gpu/drm/xe/compat-i915-headers/i915_drv.h
@@ -10,12 +10,12 @@
  * TODO: refactor i915 and xe so this can cease to exist
  */
 
+#include "soc/intel_pch.h"
 #include "xe_device.h"
 #include "xe_bo.h"
 #include "xe_pm.h"
 #include "xe_step.h"
 #include "i915_reg_defs.h"
-#include "intel_pch.h"
 #include "i915_utils.h"
 #include "intel_uncore.h"
 #include <linux/pm_runtime.h>
diff --git a/drivers/gpu/drm/xe/compat-i915-headers/soc/intel_pch.h b/drivers/gpu/drm/xe/compat-i915-headers/soc/intel_pch.h
new file mode 100644
index 000000000000..823803f7e853
--- /dev/null
+++ b/drivers/gpu/drm/xe/compat-i915-headers/soc/intel_pch.h
@@ -0,0 +1 @@
+#include "../../../i915/soc/intel_pch.h"
diff --git a/drivers/gpu/drm/xe/display/ext/intel_pch.c b/drivers/gpu/drm/xe/display/ext/intel_pch.c
deleted file mode 100644
index dc2b15b5c4be..000000000000
--- a/drivers/gpu/drm/xe/display/ext/intel_pch.c
+++ /dev/null
@@ -1,157 +0,0 @@
-// SPDX-License-Identifier: MIT
-/*
- * Copyright 2019 Intel Corporation.
- */
-
-#include "i915_drv.h"
-#include "i915_utils.h"
-#include "intel_pch.h"
-
-/* Map PCH device id to PCH type, or PCH_NONE if unknown. */
-static enum intel_pch
-intel_pch_type(const struct drm_i915_private *dev_priv, unsigned short id)
-{
-	switch (id) {
-	case INTEL_PCH_MCC_DEVICE_ID_TYPE:
-		drm_dbg_kms(&dev_priv->drm, "Found Mule Creek Canyon PCH\n");
-		drm_WARN_ON(&dev_priv->drm, !IS_JSL_EHL(dev_priv));
-		/* MCC is TGP compatible */
-		return PCH_TGP;
-	case INTEL_PCH_TGP_DEVICE_ID_TYPE:
-	case INTEL_PCH_TGP2_DEVICE_ID_TYPE:
-		drm_dbg_kms(&dev_priv->drm, "Found Tiger Lake LP PCH\n");
-		drm_WARN_ON(&dev_priv->drm, !IS_TIGERLAKE(dev_priv) &&
-			    !IS_ROCKETLAKE(dev_priv) &&
-			    !IS_GEN9_BC(dev_priv));
-		return PCH_TGP;
-	case INTEL_PCH_ADP_DEVICE_ID_TYPE:
-	case INTEL_PCH_ADP2_DEVICE_ID_TYPE:
-	case INTEL_PCH_ADP3_DEVICE_ID_TYPE:
-	case INTEL_PCH_ADP4_DEVICE_ID_TYPE:
-		drm_dbg_kms(&dev_priv->drm, "Found Alder Lake PCH\n");
-		drm_WARN_ON(&dev_priv->drm, !IS_ALDERLAKE_S(dev_priv) &&
-			    !IS_ALDERLAKE_P(dev_priv));
-		return PCH_ADP;
-	case INTEL_PCH_MTP_DEVICE_ID_TYPE:
-	case INTEL_PCH_MTP2_DEVICE_ID_TYPE:
-		drm_dbg_kms(&dev_priv->drm, "Found Meteor Lake PCH\n");
-		drm_WARN_ON(&dev_priv->drm, !IS_METEORLAKE(dev_priv));
-		return PCH_MTP;
-	default:
-		return PCH_NONE;
-	}
-}
-
-static bool intel_is_virt_pch(unsigned short id,
-			      unsigned short svendor, unsigned short sdevice)
-{
-	return (id == INTEL_PCH_P2X_DEVICE_ID_TYPE ||
-		id == INTEL_PCH_P3X_DEVICE_ID_TYPE ||
-		(id == INTEL_PCH_QEMU_DEVICE_ID_TYPE &&
-		 svendor == PCI_SUBVENDOR_ID_REDHAT_QUMRANET &&
-		 sdevice == PCI_SUBDEVICE_ID_QEMU));
-}
-
-static void
-intel_virt_detect_pch(const struct drm_i915_private *dev_priv,
-		      unsigned short *pch_id, enum intel_pch *pch_type)
-{
-	unsigned short id = 0;
-
-	/*
-	 * In a virtualized passthrough environment we can be in a
-	 * setup where the ISA bridge is not able to be passed through.
-	 * In this case, a south bridge can be emulated and we have to
-	 * make an educated guess as to which PCH is really there.
-	 */
-
-	if (IS_METEORLAKE(dev_priv))
-		id = INTEL_PCH_MTP_DEVICE_ID_TYPE;
-	else if (IS_ALDERLAKE_S(dev_priv) || IS_ALDERLAKE_P(dev_priv))
-		id = INTEL_PCH_ADP_DEVICE_ID_TYPE;
-	else if (IS_TIGERLAKE(dev_priv) || IS_ROCKETLAKE(dev_priv))
-		id = INTEL_PCH_TGP_DEVICE_ID_TYPE;
-	else BUG_ON(1);
-
-	if (id)
-		drm_dbg_kms(&dev_priv->drm, "Assuming PCH ID %04x\n", id);
-	else
-		drm_dbg_kms(&dev_priv->drm, "Assuming no PCH\n");
-
-	*pch_type = intel_pch_type(dev_priv, id);
-
-	/* Sanity check virtual PCH id */
-	if (drm_WARN_ON(&dev_priv->drm,
-			id && *pch_type == PCH_NONE))
-		id = 0;
-
-	*pch_id = id;
-}
-
-void intel_detect_pch(struct drm_i915_private *dev_priv)
-{
-	struct pci_dev *pch = NULL;
-	unsigned short id;
-	enum intel_pch pch_type;
-
-	/* DG1 has south engine display on the same PCI device */
-	if (IS_DG1(dev_priv)) {
-		dev_priv->pch_type = PCH_DG1;
-		return;
-	} else if (IS_DG2(dev_priv)) {
-		dev_priv->pch_type = PCH_DG2;
-		return;
-	}
-
-	/*
-	 * The reason to probe ISA bridge instead of Dev31:Fun0 is to
-	 * make graphics device passthrough work easy for VMM, that only
-	 * need to expose ISA bridge to let driver know the real hardware
-	 * underneath. This is a requirement from virtualization team.
-	 *
-	 * In some virtualized environments (e.g. XEN), there is irrelevant
-	 * ISA bridge in the system. To work reliably, we should scan trhough
-	 * all the ISA bridge devices and check for the first match, instead
-	 * of only checking the first one.
-	 */
-	while ((pch = pci_get_class(PCI_CLASS_BRIDGE_ISA << 8, pch))) {
-		if (pch->vendor != PCI_VENDOR_ID_INTEL)
-			continue;
-
-		id = pch->device & INTEL_PCH_DEVICE_ID_MASK;
-
-		pch_type = intel_pch_type(dev_priv, id);
-		if (pch_type != PCH_NONE) {
-			dev_priv->pch_type = pch_type;
-			dev_priv->pch_id = id;
-			break;
-		} else if (intel_is_virt_pch(id, pch->subsystem_vendor,
-					     pch->subsystem_device)) {
-			intel_virt_detect_pch(dev_priv, &id, &pch_type);
-			dev_priv->pch_type = pch_type;
-			dev_priv->pch_id = id;
-			break;
-		}
-	}
-
-	/*
-	 * Use PCH_NOP (PCH but no South Display) for PCH platforms without
-	 * display.
-	 */
-	if (pch && !HAS_DISPLAY(dev_priv)) {
-		drm_dbg_kms(&dev_priv->drm,
-			    "Display disabled, reverting to NOP PCH\n");
-		dev_priv->pch_type = PCH_NOP;
-		dev_priv->pch_id = 0;
-	} else if (!pch) {
-		if (i915_run_as_guest() && HAS_DISPLAY(dev_priv)) {
-			intel_virt_detect_pch(dev_priv, &id, &pch_type);
-			dev_priv->pch_type = pch_type;
-			dev_priv->pch_id = id;
-		} else {
-			drm_dbg_kms(&dev_priv->drm, "No PCH found.\n");
-		}
-	}
-
-	pci_dev_put(pch);
-}
diff --git a/drivers/gpu/drm/xe/display/ext/intel_pch.h b/drivers/gpu/drm/xe/display/ext/intel_pch.h
deleted file mode 100644
index 32aff5a70d04..000000000000
--- a/drivers/gpu/drm/xe/display/ext/intel_pch.h
+++ /dev/null
@@ -1,91 +0,0 @@
-/* SPDX-License-Identifier: MIT */
-/*
- * Copyright 2019 Intel Corporation.
- */
-
-#ifndef __INTEL_PCH__
-#define __INTEL_PCH__
-
-struct drm_i915_private;
-
-/*
- * Sorted by south display engine compatibility.
- * If the new PCH comes with a south display engine that is not
- * inherited from the latest item, please do not add it to the
- * end. Instead, add it right after its "parent" PCH.
- */
-enum intel_pch {
-	PCH_NOP = -1,	/* PCH without south display */
-	PCH_NONE = 0,	/* No PCH present */
-	PCH_IBX,	/* Ibexpeak PCH */
-	PCH_CPT,	/* Cougarpoint/Pantherpoint PCH */
-	PCH_LPT,	/* Lynxpoint/Wildcatpoint PCH */
-	PCH_SPT,        /* Sunrisepoint/Kaby Lake PCH */
-	PCH_CNP,        /* Cannon/Comet Lake PCH */
-	PCH_ICP,	/* Ice Lake/Jasper Lake PCH */
-	PCH_TGP,	/* Tiger Lake/Mule Creek Canyon PCH */
-	PCH_ADP,	/* Alder Lake PCH */
-	PCH_MTP,	/* Meteor Lake PCH */
-
-	/* Fake PCHs, functionality handled on the same PCI dev */
-	PCH_DG1 = 1024,
-	PCH_DG2,
-};
-
-#define INTEL_PCH_DEVICE_ID_MASK		0xff80
-#define INTEL_PCH_IBX_DEVICE_ID_TYPE		0x3b00
-#define INTEL_PCH_CPT_DEVICE_ID_TYPE		0x1c00
-#define INTEL_PCH_PPT_DEVICE_ID_TYPE		0x1e00
-#define INTEL_PCH_LPT_DEVICE_ID_TYPE		0x8c00
-#define INTEL_PCH_LPT_LP_DEVICE_ID_TYPE		0x9c00
-#define INTEL_PCH_WPT_DEVICE_ID_TYPE		0x8c80
-#define INTEL_PCH_WPT_LP_DEVICE_ID_TYPE		0x9c80
-#define INTEL_PCH_SPT_DEVICE_ID_TYPE		0xA100
-#define INTEL_PCH_SPT_LP_DEVICE_ID_TYPE		0x9D00
-#define INTEL_PCH_KBP_DEVICE_ID_TYPE		0xA280
-#define INTEL_PCH_CNP_DEVICE_ID_TYPE		0xA300
-#define INTEL_PCH_CNP_LP_DEVICE_ID_TYPE		0x9D80
-#define INTEL_PCH_CMP_DEVICE_ID_TYPE		0x0280
-#define INTEL_PCH_CMP2_DEVICE_ID_TYPE		0x0680
-#define INTEL_PCH_CMP_V_DEVICE_ID_TYPE		0xA380
-#define INTEL_PCH_ICP_DEVICE_ID_TYPE		0x3480
-#define INTEL_PCH_ICP2_DEVICE_ID_TYPE		0x3880
-#define INTEL_PCH_MCC_DEVICE_ID_TYPE		0x4B00
-#define INTEL_PCH_TGP_DEVICE_ID_TYPE		0xA080
-#define INTEL_PCH_TGP2_DEVICE_ID_TYPE		0x4380
-#define INTEL_PCH_JSP_DEVICE_ID_TYPE		0x4D80
-#define INTEL_PCH_ADP_DEVICE_ID_TYPE		0x7A80
-#define INTEL_PCH_ADP2_DEVICE_ID_TYPE		0x5180
-#define INTEL_PCH_ADP3_DEVICE_ID_TYPE		0x7A00
-#define INTEL_PCH_ADP4_DEVICE_ID_TYPE		0x5480
-#define INTEL_PCH_MTP_DEVICE_ID_TYPE		0x7E00
-#define INTEL_PCH_MTP2_DEVICE_ID_TYPE		0xAE00
-#define INTEL_PCH_P2X_DEVICE_ID_TYPE		0x7100
-#define INTEL_PCH_P3X_DEVICE_ID_TYPE		0x7000
-#define INTEL_PCH_QEMU_DEVICE_ID_TYPE		0x2900 /* qemu q35 has 2918 */
-
-#define INTEL_PCH_TYPE(dev_priv)		((dev_priv)->pch_type)
-#define INTEL_PCH_ID(dev_priv)			((dev_priv)->pch_id)
-#define HAS_PCH_MTP(dev_priv)			(INTEL_PCH_TYPE(dev_priv) == PCH_MTP)
-#define HAS_PCH_DG2(dev_priv)			(INTEL_PCH_TYPE(dev_priv) == PCH_DG2)
-#define HAS_PCH_ADP(dev_priv)			(INTEL_PCH_TYPE(dev_priv) == PCH_ADP)
-#define HAS_PCH_DG1(dev_priv)			(INTEL_PCH_TYPE(dev_priv) == PCH_DG1)
-#define HAS_PCH_TGP(dev_priv)			(INTEL_PCH_TYPE(dev_priv) == PCH_TGP)
-#define HAS_PCH_ICP(dev_priv)			(INTEL_PCH_TYPE(dev_priv) == PCH_ICP)
-#define HAS_PCH_CNP(dev_priv)			(INTEL_PCH_TYPE(dev_priv) == PCH_CNP)
-#define HAS_PCH_SPT(dev_priv)			(INTEL_PCH_TYPE(dev_priv) == PCH_SPT)
-#define HAS_PCH_LPT(dev_priv)			(INTEL_PCH_TYPE(dev_priv) == PCH_LPT)
-#define HAS_PCH_LPT_LP(dev_priv) \
-	(INTEL_PCH_ID(dev_priv) == INTEL_PCH_LPT_LP_DEVICE_ID_TYPE || \
-	 INTEL_PCH_ID(dev_priv) == INTEL_PCH_WPT_LP_DEVICE_ID_TYPE)
-#define HAS_PCH_LPT_H(dev_priv) \
-	(INTEL_PCH_ID(dev_priv) == INTEL_PCH_LPT_DEVICE_ID_TYPE || \
-	 INTEL_PCH_ID(dev_priv) == INTEL_PCH_WPT_DEVICE_ID_TYPE)
-#define HAS_PCH_CPT(dev_priv)			(INTEL_PCH_TYPE(dev_priv) == PCH_CPT)
-#define HAS_PCH_IBX(dev_priv)			(INTEL_PCH_TYPE(dev_priv) == PCH_IBX)
-#define HAS_PCH_NOP(dev_priv)			(INTEL_PCH_TYPE(dev_priv) == PCH_NOP)
-#define HAS_PCH_SPLIT(dev_priv)			(INTEL_PCH_TYPE(dev_priv) != PCH_NONE)
-
-void intel_detect_pch(struct drm_i915_private *dev_priv);
-
-#endif /* __INTEL_PCH__ */
diff --git a/drivers/gpu/drm/xe/xe_device_types.h b/drivers/gpu/drm/xe/xe_device_types.h
index 2fc24eac0775..26a8de77138a 100644
--- a/drivers/gpu/drm/xe/xe_device_types.h
+++ b/drivers/gpu/drm/xe/xe_device_types.h
@@ -19,7 +19,7 @@
 
 #if IS_ENABLED(CONFIG_DRM_XE_DISPLAY)
 #include "ext/intel_device_info.h"
-#include "ext/intel_pch.h"
+#include "soc/intel_pch.h"
 #include "intel_display_core.h"
 #include "intel_display_device.h"
 #endif
-- 
2.39.2


^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [Intel-xe] [PATCH 4/4] fixup! drm/xe/display: Implement display support
  2023-09-18  7:00 [Intel-xe] [PATCH 0/4] Xe runtime pm refactoring Jouni Högander
@ 2023-09-18  7:01 ` Jouni Högander
  2023-09-18 21:22   ` Govindapillai, Vinod
  0 siblings, 1 reply; 16+ messages in thread
From: Jouni Högander @ 2023-09-18  7:01 UTC (permalink / raw)
  To: intel-xe; +Cc: Jouni Högander

xe_runtime_pm changed to intel_runtime_pm.

Signed-off-by: Jouni Högander <jouni.hogander@intel.com>
---
 drivers/gpu/drm/xe/compat-i915-headers/i915_drv.h | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/drivers/gpu/drm/xe/compat-i915-headers/i915_drv.h b/drivers/gpu/drm/xe/compat-i915-headers/i915_drv.h
index 03ac39efba38..2d5d8be52f88 100644
--- a/drivers/gpu/drm/xe/compat-i915-headers/i915_drv.h
+++ b/drivers/gpu/drm/xe/compat-i915-headers/i915_drv.h
@@ -156,7 +156,7 @@ static inline struct drm_i915_private *kdev_to_i915(struct device *kdev)
 
 #include "intel_wakeref.h"
 
-static inline bool intel_runtime_pm_get(struct xe_runtime_pm *pm)
+static inline bool intel_runtime_pm_get(struct intel_runtime_pm *pm)
 {
 	struct xe_device *xe = container_of(pm, struct xe_device, runtime_pm);
 
@@ -167,21 +167,21 @@ static inline bool intel_runtime_pm_get(struct xe_runtime_pm *pm)
 	return true;
 }
 
-static inline bool intel_runtime_pm_get_if_in_use(struct xe_runtime_pm *pm)
+static inline bool intel_runtime_pm_get_if_in_use(struct intel_runtime_pm *pm)
 {
 	struct xe_device *xe = container_of(pm, struct xe_device, runtime_pm);
 
 	return xe_pm_runtime_get_if_active(xe);
 }
 
-static inline void intel_runtime_pm_put_unchecked(struct xe_runtime_pm *pm)
+static inline void intel_runtime_pm_put_unchecked(struct intel_runtime_pm *pm)
 {
 	struct xe_device *xe = container_of(pm, struct xe_device, runtime_pm);
 
 	xe_pm_runtime_put(xe);
 }
 
-static inline void intel_runtime_pm_put(struct xe_runtime_pm *pm, bool wakeref)
+static inline void intel_runtime_pm_put(struct intel_runtime_pm *pm, bool wakeref)
 {
 	if (wakeref)
 		intel_runtime_pm_put_unchecked(pm);
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 16+ messages in thread

* Re: [Intel-xe] [PATCH 4/4] fixup! drm/xe/display: Implement display support
  2023-09-18  7:01 ` [Intel-xe] [PATCH 4/4] fixup! drm/xe/display: Implement display support Jouni Högander
@ 2023-09-18 21:22   ` Govindapillai, Vinod
  0 siblings, 0 replies; 16+ messages in thread
From: Govindapillai, Vinod @ 2023-09-18 21:22 UTC (permalink / raw)
  To: intel-xe@lists.freedesktop.org, Hogander, Jouni

On Mon, 2023-09-18 at 10:01 +0300, Jouni Högander wrote:
> xe_runtime_pm changed to intel_runtime_pm.
> 
> Signed-off-by: Jouni Högander <jouni.hogander@intel.com>
> ---
>  drivers/gpu/drm/xe/compat-i915-headers/i915_drv.h | 8 ++++----
>  1 file changed, 4 insertions(+), 4 deletions(-)

Reviewed-by: Vinod Govindapillai <vinod.govindapillai@intel.com>

> 
> diff --git a/drivers/gpu/drm/xe/compat-i915-headers/i915_drv.h b/drivers/gpu/drm/xe/compat-i915-
> headers/i915_drv.h
> index 03ac39efba38..2d5d8be52f88 100644
> --- a/drivers/gpu/drm/xe/compat-i915-headers/i915_drv.h
> +++ b/drivers/gpu/drm/xe/compat-i915-headers/i915_drv.h
> @@ -156,7 +156,7 @@ static inline struct drm_i915_private *kdev_to_i915(struct device *kdev)
>  
>  #include "intel_wakeref.h"
>  
> -static inline bool intel_runtime_pm_get(struct xe_runtime_pm *pm)
> +static inline bool intel_runtime_pm_get(struct intel_runtime_pm *pm)
>  {
>         struct xe_device *xe = container_of(pm, struct xe_device, runtime_pm);
>  
> @@ -167,21 +167,21 @@ static inline bool intel_runtime_pm_get(struct xe_runtime_pm *pm)
>         return true;
>  }
>  
> -static inline bool intel_runtime_pm_get_if_in_use(struct xe_runtime_pm *pm)
> +static inline bool intel_runtime_pm_get_if_in_use(struct intel_runtime_pm *pm)
>  {
>         struct xe_device *xe = container_of(pm, struct xe_device, runtime_pm);
>  
>         return xe_pm_runtime_get_if_active(xe);
>  }
>  
> -static inline void intel_runtime_pm_put_unchecked(struct xe_runtime_pm *pm)
> +static inline void intel_runtime_pm_put_unchecked(struct intel_runtime_pm *pm)
>  {
>         struct xe_device *xe = container_of(pm, struct xe_device, runtime_pm);
>  
>         xe_pm_runtime_put(xe);
>  }
>  
> -static inline void intel_runtime_pm_put(struct xe_runtime_pm *pm, bool wakeref)
> +static inline void intel_runtime_pm_put(struct intel_runtime_pm *pm, bool wakeref)
>  {
>         if (wakeref)
>                 intel_runtime_pm_put_unchecked(pm);


^ permalink raw reply	[flat|nested] 16+ messages in thread

* [Intel-xe] [PATCH 4/4] fixup! drm/xe/display: Implement display support
  2023-11-09 16:17 [Intel-xe] [PATCH 0/4] xe&i915 display pxp cleanup Jani Nikula
@ 2023-11-09 16:17 ` Jani Nikula
  0 siblings, 0 replies; 16+ messages in thread
From: Jani Nikula @ 2023-11-09 16:17 UTC (permalink / raw)
  To: intel-xe; +Cc: jani.nikula

Wrappers for pxp.

Signed-off-by: Jani Nikula <jani.nikula@intel.com>
---
 .../xe/compat-i915-headers/pxp/intel_pxp.h    | 28 +++++++++++++++++++
 drivers/gpu/drm/xe/xe_device_types.h          |  2 ++
 2 files changed, 30 insertions(+)
 create mode 100644 drivers/gpu/drm/xe/compat-i915-headers/pxp/intel_pxp.h

diff --git a/drivers/gpu/drm/xe/compat-i915-headers/pxp/intel_pxp.h b/drivers/gpu/drm/xe/compat-i915-headers/pxp/intel_pxp.h
new file mode 100644
index 000000000000..c2c30ece8f77
--- /dev/null
+++ b/drivers/gpu/drm/xe/compat-i915-headers/pxp/intel_pxp.h
@@ -0,0 +1,28 @@
+/* SPDX-License-Identifier: MIT */
+/*
+ * Copyright © 2023 Intel Corporation
+ */
+
+#ifndef __INTEL_PXP_H__
+#define __INTEL_PXP_H__
+
+#include <linux/errno.h>
+#include <linux/types.h>
+
+struct drm_i915_gem_object;
+struct intel_pxp;
+
+static inline int intel_pxp_key_check(struct intel_pxp *pxp,
+				      struct drm_i915_gem_object *obj,
+				      bool assign)
+{
+	return -ENODEV;
+}
+
+static inline bool
+i915_gem_object_is_protected(const struct drm_i915_gem_object *obj)
+{
+	return false;
+}
+
+#endif
diff --git a/drivers/gpu/drm/xe/xe_device_types.h b/drivers/gpu/drm/xe/xe_device_types.h
index 4119ef03fb7e..be11cadccbd4 100644
--- a/drivers/gpu/drm/xe/xe_device_types.h
+++ b/drivers/gpu/drm/xe/xe_device_types.h
@@ -480,6 +480,8 @@ struct xe_device {
 	struct {
 		const char *dmc_firmware_path;
 	} params;
+
+	void *pxp;
 #endif
 };
 
-- 
2.39.2


^ permalink raw reply related	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2023-11-09 16:18 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-05-16 13:32 [Intel-xe] [PATCH 0/4] drm/xe: use hotplug irq code from i915 Jani Nikula
2023-05-16 13:32 ` [Intel-xe] [PATCH 1/4] drm/i915/irq: relocate gmbus and dp aux irq handlers Jani Nikula
2023-05-16 13:32 ` [Intel-xe] [PATCH 2/4] drm/i915/irq: convert gen8_de_irq_handler() to void Jani Nikula
2023-05-16 13:32 ` [Intel-xe] [PATCH 3/4] drm/i915/irq: split out hotplug irq handling Jani Nikula
2023-05-16 13:32 ` [Intel-xe] [PATCH 4/4] fixup! drm/xe/display: Implement display support Jani Nikula
2023-05-16 20:58   ` Rodrigo Vivi
2023-05-17  8:04     ` Jani Nikula
2023-05-16 13:35 ` [Intel-xe] ✓ CI.Patch_applied: success for drm/xe: use hotplug irq code from i915 Patchwork
2023-05-16 13:37 ` [Intel-xe] ✓ CI.KUnit: " Patchwork
2023-05-16 13:41 ` [Intel-xe] ✓ CI.Build: " Patchwork
2023-05-16 14:06 ` [Intel-xe] ○ CI.BAT: info " Patchwork
  -- strict thread matches above, loose matches on Subject: below --
2023-11-09 16:17 [Intel-xe] [PATCH 0/4] xe&i915 display pxp cleanup Jani Nikula
2023-11-09 16:17 ` [Intel-xe] [PATCH 4/4] fixup! drm/xe/display: Implement display support Jani Nikula
2023-09-18  7:00 [Intel-xe] [PATCH 0/4] Xe runtime pm refactoring Jouni Högander
2023-09-18  7:01 ` [Intel-xe] [PATCH 4/4] fixup! drm/xe/display: Implement display support Jouni Högander
2023-09-18 21:22   ` Govindapillai, Vinod
2023-07-04 15:32 [Intel-xe] [PATCH 0/4] drm/xe/display: reuse soc/ code from i915 Jani Nikula
2023-07-04 15:32 ` [Intel-xe] [PATCH 4/4] fixup! drm/xe/display: Implement display support Jani Nikula
2023-05-15  9:46 [Intel-xe] [PATCH 0/4] Revert frontbuffer tracking removal Jouni Högander
2023-05-15  9:46 ` [Intel-xe] [PATCH 4/4] fixup! drm/xe/display: Implement display support Jouni Högander

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox