gic: Remove deprecated driver and interfaces

Change-Id: I567a406edb090ae9d109382f6874846a79dd7473
Co-authored-by: Roberto Vargas <roberto.vargas@arm.com>
Signed-off-by: Antonio Nino Diaz <antonio.ninodiaz@arm.com>
diff --git a/drivers/arm/gic/v3/gicv3_helpers.c b/drivers/arm/gic/v3/gicv3_helpers.c
index 1953a37..c12a4b6 100644
--- a/drivers/arm/gic/v3/gicv3_helpers.c
+++ b/drivers/arm/gic/v3/gicv3_helpers.c
@@ -377,56 +377,6 @@
 		gicd_write_icfgr(gicd_base, index, 0U);
 }
 
-#if !ERROR_DEPRECATED
-/*******************************************************************************
- * Helper function to configure secure G0 and G1S SPIs.
- ******************************************************************************/
-void gicv3_secure_spis_config(uintptr_t gicd_base,
-				     unsigned int num_ints,
-				     const unsigned int *sec_intr_list,
-				     unsigned int int_grp)
-{
-	unsigned int index, irq_num;
-	unsigned long long gic_affinity_val;
-
-	assert((int_grp == INTR_GROUP1S) || (int_grp == INTR_GROUP0));
-	/* If `num_ints` is not 0, ensure that `sec_intr_list` is not NULL */
-	if (num_ints != 0U)
-		assert(sec_intr_list != NULL);
-
-	for (index = 0U; index < num_ints; index++) {
-		irq_num = sec_intr_list[index];
-		if (irq_num >= MIN_SPI_ID) {
-
-			/* Configure this interrupt as a secure interrupt */
-			gicd_clr_igroupr(gicd_base, irq_num);
-
-			/* Configure this interrupt as G0 or a G1S interrupt */
-			if (int_grp == INTR_GROUP1S)
-				gicd_set_igrpmodr(gicd_base, irq_num);
-			else
-				gicd_clr_igrpmodr(gicd_base, irq_num);
-
-			/* Set the priority of this interrupt */
-			gicd_set_ipriorityr(gicd_base,
-					      irq_num,
-					      GIC_HIGHEST_SEC_PRIORITY);
-
-			/* Target SPIs to the primary CPU */
-			gic_affinity_val =
-				gicd_irouter_val_from_mpidr(read_mpidr(), 0U);
-			gicd_write_irouter(gicd_base,
-					   irq_num,
-					   gic_affinity_val);
-
-			/* Enable this interrupt */
-			gicd_set_isenabler(gicd_base, irq_num);
-		}
-	}
-
-}
-#endif
-
 /*******************************************************************************
  * Helper function to configure properties of secure SPIs
  ******************************************************************************/
@@ -511,47 +461,6 @@
 	/* Configure all PPIs as level triggered by default */
 	gicr_write_icfgr1(gicr_base, 0U);
 }
-
-#if !ERROR_DEPRECATED
-/*******************************************************************************
- * Helper function to configure secure G0 and G1S SPIs.
- ******************************************************************************/
-void gicv3_secure_ppi_sgi_config(uintptr_t gicr_base,
-					unsigned int num_ints,
-					const unsigned int *sec_intr_list,
-					unsigned int int_grp)
-{
-	unsigned int index, irq_num;
-
-	assert((int_grp == INTR_GROUP1S) || (int_grp == INTR_GROUP0));
-	/* If `num_ints` is not 0, ensure that `sec_intr_list` is not NULL */
-	if (num_ints != 0U)
-		assert(sec_intr_list != NULL);
-
-	for (index = 0; index < num_ints; index++) {
-		irq_num = sec_intr_list[index];
-		if (irq_num < MIN_SPI_ID) {
-
-			/* Configure this interrupt as a secure interrupt */
-			gicr_clr_igroupr0(gicr_base, irq_num);
-
-			/* Configure this interrupt as G0 or a G1S interrupt */
-			if (int_grp == INTR_GROUP1S)
-				gicr_set_igrpmodr0(gicr_base, irq_num);
-			else
-				gicr_clr_igrpmodr0(gicr_base, irq_num);
-
-			/* Set the priority of this interrupt */
-			gicr_set_ipriorityr(gicr_base,
-					    irq_num,
-					    GIC_HIGHEST_SEC_PRIORITY);
-
-			/* Enable this interrupt */
-			gicr_set_isenabler0(gicr_base, irq_num);
-		}
-	}
-}
-#endif
 
 /*******************************************************************************
  * Helper function to configure properties of secure G0 and G1S PPIs and SGIs.
diff --git a/drivers/arm/gic/v3/gicv3_main.c b/drivers/arm/gic/v3/gicv3_main.c
index 8da4512..5af7e40 100644
--- a/drivers/arm/gic/v3/gicv3_main.c
+++ b/drivers/arm/gic/v3/gicv3_main.c
@@ -67,45 +67,8 @@
 
 	assert(IS_IN_EL3());
 
-#if !ERROR_DEPRECATED
-	if (plat_driver_data->interrupt_props == NULL) {
-		/* Interrupt properties array size must be 0 */
-		assert(plat_driver_data->interrupt_props_num == 0);
-
-		/*
-		 * Suppress deprecated declaration warnings in compatibility
-		 * function
-		 */
-#pragma GCC diagnostic push
-#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
-
-		/*
-		 * The platform should provide a list of at least one type of
-		 * interrupt.
-		 */
-		assert(plat_driver_data->g0_interrupt_array ||
-				plat_driver_data->g1s_interrupt_array);
-
-		/*
-		 * If there are no interrupts of a particular type, then the
-		 * number of interrupts of that type should be 0 and vice-versa.
-		 */
-		assert(plat_driver_data->g0_interrupt_array ?
-				plat_driver_data->g0_interrupt_num :
-				plat_driver_data->g0_interrupt_num == 0);
-		assert(plat_driver_data->g1s_interrupt_array ?
-				plat_driver_data->g1s_interrupt_num :
-				plat_driver_data->g1s_interrupt_num == 0);
-#pragma GCC diagnostic pop
-
-		WARN("Using deprecated integer interrupt arrays in "
-		     "gicv3_driver_data_t\n");
-		WARN("Please migrate to using interrupt_prop_t arrays\n");
-	}
-#else
 	assert(plat_driver_data->interrupt_props_num > 0 ?
 	       plat_driver_data->interrupt_props != NULL : 1);
-#endif
 
 	/* Check for system register support */
 #ifdef AARCH32
@@ -193,45 +156,10 @@
 	/* Set the default attribute of all SPIs */
 	gicv3_spis_config_defaults(gicv3_driver_data->gicd_base);
 
-#if !ERROR_DEPRECATED
-	if (gicv3_driver_data->interrupt_props != NULL) {
-#endif
-		bitmap = gicv3_secure_spis_config_props(
-				gicv3_driver_data->gicd_base,
-				gicv3_driver_data->interrupt_props,
-				gicv3_driver_data->interrupt_props_num);
-#if !ERROR_DEPRECATED
-	} else {
-		/*
-		 * Suppress deprecated declaration warnings in compatibility
-		 * function
-		 */
-#pragma GCC diagnostic push
-#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
-
-		assert(gicv3_driver_data->g1s_interrupt_array ||
-				gicv3_driver_data->g0_interrupt_array);
-
-		/* Configure the G1S SPIs */
-		if (gicv3_driver_data->g1s_interrupt_array) {
-			gicv3_secure_spis_config(gicv3_driver_data->gicd_base,
-					gicv3_driver_data->g1s_interrupt_num,
-					gicv3_driver_data->g1s_interrupt_array,
-					INTR_GROUP1S);
-			bitmap |= CTLR_ENABLE_G1S_BIT;
-		}
-
-		/* Configure the G0 SPIs */
-		if (gicv3_driver_data->g0_interrupt_array) {
-			gicv3_secure_spis_config(gicv3_driver_data->gicd_base,
-					gicv3_driver_data->g0_interrupt_num,
-					gicv3_driver_data->g0_interrupt_array,
-					INTR_GROUP0);
-			bitmap |= CTLR_ENABLE_G0_BIT;
-		}
-#pragma GCC diagnostic pop
-	}
-#endif
+	bitmap = gicv3_secure_spis_config_props(
+			gicv3_driver_data->gicd_base,
+			gicv3_driver_data->interrupt_props,
+			gicv3_driver_data->interrupt_props_num);
 
 	/* Enable the secure SPIs now that they have been configured */
 	gicd_set_ctlr(gicv3_driver_data->gicd_base, bitmap, RWP_TRUE);
@@ -266,44 +194,9 @@
 	/* Set the default attribute of all SGIs and PPIs */
 	gicv3_ppi_sgi_config_defaults(gicr_base);
 
-#if !ERROR_DEPRECATED
-	if (gicv3_driver_data->interrupt_props != NULL) {
-#endif
-		bitmap = gicv3_secure_ppi_sgi_config_props(gicr_base,
-				gicv3_driver_data->interrupt_props,
-				gicv3_driver_data->interrupt_props_num);
-#if !ERROR_DEPRECATED
-	} else {
-		/*
-		 * Suppress deprecated declaration warnings in compatibility
-		 * function
-		 */
-#pragma GCC diagnostic push
-#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
-
-		assert(gicv3_driver_data->g1s_interrupt_array ||
-		       gicv3_driver_data->g0_interrupt_array);
-
-		/* Configure the G1S SGIs/PPIs */
-		if (gicv3_driver_data->g1s_interrupt_array) {
-			gicv3_secure_ppi_sgi_config(gicr_base,
-					gicv3_driver_data->g1s_interrupt_num,
-					gicv3_driver_data->g1s_interrupt_array,
-					INTR_GROUP1S);
-			bitmap |= CTLR_ENABLE_G1S_BIT;
-		}
-
-		/* Configure the G0 SGIs/PPIs */
-		if (gicv3_driver_data->g0_interrupt_array) {
-			gicv3_secure_ppi_sgi_config(gicr_base,
-					gicv3_driver_data->g0_interrupt_num,
-					gicv3_driver_data->g0_interrupt_array,
-					INTR_GROUP0);
-			bitmap |= CTLR_ENABLE_G0_BIT;
-		}
-#pragma GCC diagnostic pop
-	}
-#endif
+	bitmap = gicv3_secure_ppi_sgi_config_props(gicr_base,
+			gicv3_driver_data->interrupt_props,
+			gicv3_driver_data->interrupt_props_num);
 
 	/* Enable interrupt groups as required, if not already */
 	if ((ctlr & bitmap) != bitmap)
diff --git a/drivers/arm/gic/v3/gicv3_private.h b/drivers/arm/gic/v3/gicv3_private.h
index 36d4b3e..85231ad 100644
--- a/drivers/arm/gic/v3/gicv3_private.h
+++ b/drivers/arm/gic/v3/gicv3_private.h
@@ -95,16 +95,6 @@
  ******************************************************************************/
 void gicv3_spis_config_defaults(uintptr_t gicd_base);
 void gicv3_ppi_sgi_config_defaults(uintptr_t gicr_base);
-#if !ERROR_DEPRECATED
-void gicv3_secure_spis_config(uintptr_t gicd_base,
-				     unsigned int num_ints,
-				     const unsigned int *sec_intr_list,
-				     unsigned int int_grp);
-void gicv3_secure_ppi_sgi_config(uintptr_t gicr_base,
-					unsigned int num_ints,
-					const unsigned int *sec_intr_list,
-					unsigned int int_grp);
-#endif
 unsigned int gicv3_secure_ppi_sgi_config_props(uintptr_t gicr_base,
 		const interrupt_prop_t *interrupt_props,
 		unsigned int interrupt_props_num);