@@ -38,8 +38,6 @@
/* ICU definitions */
#define ICU_MAX_IRQS 207
-#define ICU_SATA0_ICU_ID 109
-#define ICU_SATA1_ICU_ID 107
struct mvebu_icu_subset_data {
unsigned int icu_group;
@@ -111,22 +109,6 @@ static void mvebu_icu_write_msg(struct msi_desc *desc, struct msi_msg *msg)
}
writel_relaxed(icu_int, icu->base + ICU_INT_CFG(d->hwirq));
-
- /*
- * The SATA unit has 2 ports, and a dedicated ICU entry per
- * port. The ahci sata driver supports only one irq interrupt
- * per SATA unit. To solve this conflict, we configure the 2
- * SATA wired interrupts in the south bridge into 1 GIC
- * interrupt in the north bridge. Even if only a single port
- * is enabled, if sata node is enabled, both interrupts are
- * configured (regardless of which port is actually in use).
- */
- if (d->hwirq == ICU_SATA0_ICU_ID || d->hwirq == ICU_SATA1_ICU_ID) {
- writel_relaxed(icu_int,
- icu->base + ICU_INT_CFG(ICU_SATA0_ICU_ID));
- writel_relaxed(icu_int,
- icu->base + ICU_INT_CFG(ICU_SATA1_ICU_ID));
- }
}
static struct irq_chip mvebu_icu_nsr_chip = {
When writing the driver, a hack was introduced to configure both SATA interrupts regardless of the port in use to overcome a limitation in the SATA core. Now that this limitation has been addressed and the hack moved in the (historically) responsible SATA driver, ahci_{platform,mvebu}.c, let's clean this driver section. Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com> --- drivers/irqchip/irq-mvebu-icu.c | 18 ------------------ 1 file changed, 18 deletions(-)