From: Marc Zyngier <maz@kernel.org>
Date: Mon, 5 Dec 2022 10:45:11 +0000 (+0000)
Subject: Merge branch irq/loongarch-of into irq/irqchip-next
X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=dc7f1c295f829c0dd40fed8e799a37a05bec6892;p=linux.git

Merge branch irq/loongarch-of into irq/irqchip-next

* irq/loongarch-of:
  : .
  : Initial OF support for LoongArch. Funny how it only took
  : *one* release from plumbing ACPI into an unsuspecting
  : architecture to start enabling OF on it. Oh well...
  : .
  irqchip/loongarch-cpu: Fix a missing prototype warning
  dt-bindings: interrupt-controller: add yaml for LoongArch CPU interrupt controller
  irqchip: loongarch-cpu: add DT support

Signed-off-by: Marc Zyngier <maz@kernel.org>
---

dc7f1c295f829c0dd40fed8e799a37a05bec6892
diff --cc drivers/irqchip/irq-loongarch-cpu.c
index fdec3e9cfacfb,738d69c4d4a33..9d8f2c4060431
--- a/drivers/irqchip/irq-loongarch-cpu.c
+++ b/drivers/irqchip/irq-loongarch-cpu.c
@@@ -92,8 -92,27 +92,26 @@@ static const struct irq_domain_ops loon
  	.xlate = irq_domain_xlate_onecell,
  };
  
+ #ifdef CONFIG_OF
+ static int __init cpuintc_of_init(struct device_node *of_node,
+ 				struct device_node *parent)
+ {
+ 	cpuintc_handle = of_node_to_fwnode(of_node);
+ 
+ 	irq_domain = irq_domain_create_linear(cpuintc_handle, EXCCODE_INT_NUM,
+ 				&loongarch_cpu_intc_irq_domain_ops, NULL);
+ 	if (!irq_domain)
+ 		panic("Failed to add irqdomain for loongarch CPU");
+ 
+ 	set_handle_irq(&handle_cpu_irq);
+ 
+ 	return 0;
+ }
+ IRQCHIP_DECLARE(cpu_intc, "loongson,cpu-interrupt-controller", cpuintc_of_init);
+ #endif
+ 
 -static int __init
 -liointc_parse_madt(union acpi_subtable_headers *header,
 -		       const unsigned long end)
 +static int __init liointc_parse_madt(union acpi_subtable_headers *header,
 +					const unsigned long end)
  {
  	struct acpi_madt_lio_pic *liointc_entry = (struct acpi_madt_lio_pic *)header;