Commit 4bae052d authored by Thomas Gleixner's avatar Thomas Gleixner
Browse files

Merge tag 'irqchip-fixes-5.11-1' of...

Merge tag 'irqchip-fixes-5.11-1' of git://git.kernel.org/pub/scm/linux/kernel/git/maz/arm-platforms into irq/urgent

Pull irqchip fixes from Marc Zyngier:

 - Fix the MIPS CPU interrupt controller hierarchy
 - Simplify the PRUSS Kconfig entry
 - Eliminate trivial build warnings on the MIPS Loongson liointc
 - Fix error path in devm_platform_get_irqs_affinity()
 - Turn the BCM2836 IPI irq_eoi callback into irq_ack
 - Fix initialisation of on-stack msi_alloc_info
 - Cleanup spurious comma in irq-sl28cpld

Link: https://lore.kernel.org/r/20210110110001.2328708-1-maz@kernel.org
parents 7c53f6b6 599b3063
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -366,6 +366,8 @@ int devm_platform_get_irqs_affinity(struct platform_device *dev,
		return -ERANGE;

	nvec = platform_irq_count(dev);
	if (nvec < 0)
		return nvec;

	if (nvec < minvec)
		return -ENOSPC;
+3 −2
Original line number Diff line number Diff line
@@ -493,8 +493,9 @@ config TI_SCI_INTA_IRQCHIP
	  TI System Controller, say Y here. Otherwise, say N.

config TI_PRUSS_INTC
	tristate "TI PRU-ICSS Interrupt Controller"
	depends on ARCH_DAVINCI || SOC_AM33XX || SOC_AM43XX || SOC_DRA7XX || ARCH_KEYSTONE || ARCH_K3
	tristate
	depends on TI_PRUSS
	default TI_PRUSS
	select IRQ_DOMAIN
	help
	  This enables support for the PRU-ICSS Local Interrupt Controller
+2 −2
Original line number Diff line number Diff line
@@ -167,7 +167,7 @@ static void bcm2836_arm_irqchip_handle_ipi(struct irq_desc *desc)
	chained_irq_exit(chip, desc);
}

static void bcm2836_arm_irqchip_ipi_eoi(struct irq_data *d)
static void bcm2836_arm_irqchip_ipi_ack(struct irq_data *d)
{
	int cpu = smp_processor_id();

@@ -195,7 +195,7 @@ static struct irq_chip bcm2836_arm_irqchip_ipi = {
	.name		= "IPI",
	.irq_mask	= bcm2836_arm_irqchip_dummy_op,
	.irq_unmask	= bcm2836_arm_irqchip_dummy_op,
	.irq_eoi	= bcm2836_arm_irqchip_ipi_eoi,
	.irq_ack	= bcm2836_arm_irqchip_ipi_ack,
	.ipi_send_mask	= bcm2836_arm_irqchip_ipi_send_mask,
};

+2 −2
Original line number Diff line number Diff line
@@ -142,7 +142,7 @@ static void liointc_resume(struct irq_chip_generic *gc)

static const char * const parent_names[] = {"int0", "int1", "int2", "int3"};

int __init liointc_of_init(struct device_node *node,
static int __init liointc_of_init(struct device_node *node,
				  struct device_node *parent)
{
	struct irq_chip_generic *gc;
+7 −0
Original line number Diff line number Diff line
@@ -197,6 +197,13 @@ static int mips_cpu_ipi_alloc(struct irq_domain *domain, unsigned int virq,
		if (ret)
			return ret;

		ret = irq_domain_set_hwirq_and_chip(domain->parent, virq + i, hwirq,
						    &mips_mt_cpu_irq_controller,
						    NULL);

		if (ret)
			return ret;

		ret = irq_set_irq_type(virq + i, IRQ_TYPE_LEVEL_HIGH);
		if (ret)
			return ret;
Loading