Commit 3b0cccef authored by Marc Zyngier's avatar Marc Zyngier
Browse files

mfd: Bulk conversion to generic_handle_domain_irq()



Wherever possible, replace constructs that match either
generic_handle_irq(irq_find_mapping()) or
generic_handle_irq(irq_linear_revmap()) to a single call to
generic_handle_domain_irq().

Acked-by: default avatarLee Jones <lee.jones@linaro.org>
Signed-off-by: default avatarMarc Zyngier <maz@kernel.org>
parent a9cb09b7
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -2364,7 +2364,7 @@ static bool read_mailbox_0(void)

		for (n = 0; n < NUM_PRCMU_WAKEUPS; n++) {
			if (ev & prcmu_irq_bit[n])
				generic_handle_irq(irq_find_mapping(db8500_irq_domain, n));
				generic_handle_domain_irq(db8500_irq_domain, n);
		}
		r = true;
		break;
+2 −2
Original line number Diff line number Diff line
@@ -35,10 +35,10 @@ static void mx25_tsadc_irq_handler(struct irq_desc *desc)
	regmap_read(tsadc->regs, MX25_TSC_TGSR, &status);

	if (status & MX25_TGSR_GCQ_INT)
		generic_handle_irq(irq_find_mapping(tsadc->domain, 1));
		generic_handle_domain_irq(tsadc->domain, 1);

	if (status & MX25_TGSR_TCQ_INT)
		generic_handle_irq(irq_find_mapping(tsadc->domain, 0));
		generic_handle_domain_irq(tsadc->domain, 0);

	chained_irq_exit(chip, desc);
}
+3 −7
Original line number Diff line number Diff line
@@ -105,20 +105,16 @@ static void ioc3_irq_handler(struct irq_desc *desc)
	struct ioc3_priv_data *ipd = domain->host_data;
	struct ioc3 __iomem *regs = ipd->regs;
	u32 pending, mask;
	unsigned int irq;

	pending = readl(&regs->sio_ir);
	mask = readl(&regs->sio_ies);
	pending &= mask; /* Mask off not enabled interrupts */

	if (pending) {
		irq = irq_find_mapping(domain, __ffs(pending));
		if (irq)
			generic_handle_irq(irq);
	} else  {
	if (pending)
		generic_handle_domain_irq(domain, __ffs(pending));
	else
		spurious_interrupt();
}
}

/*
 * System boards/BaseIOs use more interrupt pins of the bridge ASIC
+4 −6
Original line number Diff line number Diff line
@@ -122,7 +122,7 @@ pm8xxx_config_irq(struct pm_irq_chip *chip, unsigned int bp, unsigned int cp)

static int pm8xxx_irq_block_handler(struct pm_irq_chip *chip, int block)
{
	int pmirq, irq, i, ret = 0;
	int pmirq, i, ret = 0;
	unsigned int bits;

	ret = pm8xxx_read_block_irq(chip, block, &bits);
@@ -139,8 +139,7 @@ static int pm8xxx_irq_block_handler(struct pm_irq_chip *chip, int block)
	for (i = 0; i < 8; i++) {
		if (bits & (1 << i)) {
			pmirq = block * 8 + i;
			irq = irq_find_mapping(chip->irqdomain, pmirq);
			generic_handle_irq(irq);
			generic_handle_domain_irq(chip->irqdomain, pmirq);
		}
	}
	return 0;
@@ -199,7 +198,7 @@ static void pm8xxx_irq_handler(struct irq_desc *desc)
static void pm8821_irq_block_handler(struct pm_irq_chip *chip,
				     int master, int block)
{
	int pmirq, irq, i, ret;
	int pmirq, i, ret;
	unsigned int bits;

	ret = regmap_read(chip->regmap,
@@ -216,8 +215,7 @@ static void pm8821_irq_block_handler(struct pm_irq_chip *chip,
	for (i = 0; i < 8; i++) {
		if (bits & BIT(i)) {
			pmirq = block * 8 + i;
			irq = irq_find_mapping(chip->irqdomain, pmirq);
			generic_handle_irq(irq);
			generic_handle_domain_irq(chip->irqdomain, pmirq);
		}
	}
}