diff --git a/drivers/gpu/imx/dpu/dpu-common.c b/drivers/gpu/imx/dpu/dpu-common.c
index 84c7bee51eb2b7a3f18856328c4566aad90eda51..ff8dd52e062410490cf1167af22654ca3142fcea 100644
--- a/drivers/gpu/imx/dpu/dpu-common.c
+++ b/drivers/gpu/imx/dpu/dpu-common.c
@@ -1099,13 +1099,10 @@ static void dpu_intsteer_enable_line(struct dpu_soc *dpu, unsigned int line)
 			   BIT(shift), BIT(shift));
 }
 
-static int dpu_irq_init(struct dpu_soc *dpu)
+static void dpu_intsteer_enable_lines(struct dpu_soc *dpu)
 {
 	const struct dpu_devtype *devtype = dpu->devtype;
-	const struct cm_reg_ofs *ofs = devtype->cm_reg_ofs;
-	struct irq_chip_generic *gc;
-	struct irq_chip_type *ct;
-	int ret, i;
+	int i;
 
 	for (i = 0; i < devtype->intsteer_map_size; i++) {
 		if (devtype->intsteer_map[i] == NA)
@@ -1113,6 +1110,17 @@ static int dpu_irq_init(struct dpu_soc *dpu)
 
 		dpu_intsteer_enable_line(dpu, devtype->intsteer_map[i]);
 	}
+}
+
+static int dpu_irq_init(struct dpu_soc *dpu)
+{
+	const struct dpu_devtype *devtype = dpu->devtype;
+	const struct cm_reg_ofs *ofs = devtype->cm_reg_ofs;
+	struct irq_chip_generic *gc;
+	struct irq_chip_type *ct;
+	int ret, i;
+
+	dpu_intsteer_enable_lines(dpu);
 
 	dpu->domain = irq_domain_add_linear(dpu->dev->of_node,
 					    devtype->intsteer_map_size,