[irqchip: irq/irqchip-next] irqchip/loongson-liointc: Support to set IRQ type for ACPI path

From: irqchip-bot for Jianmin Lv
Date: Sat Nov 26 2022 - 08:35:27 EST


The following commit has been merged into the irq/irqchip-next branch of irqchip:

Commit-ID: 17343d0b4039196517ab5c40d8fce3e8d394c526
Gitweb: https://git.kernel.org/pub/scm/linux/kernel/git/maz/arm-platforms/17343d0b4039196517ab5c40d8fce3e8d394c526
Author: Jianmin Lv <lvjianmin@xxxxxxxxxxx>
AuthorDate: Sat, 22 Oct 2022 15:59:55 +08:00
Committer: Marc Zyngier <maz@xxxxxxxxxx>
CommitterDate: Sat, 26 Nov 2022 13:05:49

irqchip/loongson-liointc: Support to set IRQ type for ACPI path

For ACPI path, the xlate callback used IRQ_TYPE_NONE and ignored
the IRQ type in intspec[1]. For supporting to set type for
IRQs of the irqdomain, intspec[1] should be used to get IRQ
type.

Signed-off-by: Jianmin Lv <lvjianmin@xxxxxxxxxxx>
Reviewed-by: Huacai Chen <chenhuacai@xxxxxxxxxxx>
Signed-off-by: Marc Zyngier <maz@xxxxxxxxxx>
Link: https://lore.kernel.org/r/20221022075955.11726-5-lvjianmin@xxxxxxxxxxx
---
drivers/irqchip/irq-loongson-liointc.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/drivers/irqchip/irq-loongson-liointc.c b/drivers/irqchip/irq-loongson-liointc.c
index 0da8716..838c8fa 100644
--- a/drivers/irqchip/irq-loongson-liointc.c
+++ b/drivers/irqchip/irq-loongson-liointc.c
@@ -167,7 +167,12 @@ static int liointc_domain_xlate(struct irq_domain *d, struct device_node *ctrlr,
if (WARN_ON(intsize < 1))
return -EINVAL;
*out_hwirq = intspec[0] - GSI_MIN_CPU_IRQ;
- *out_type = IRQ_TYPE_NONE;
+
+ if (intsize > 1)
+ *out_type = intspec[1] & IRQ_TYPE_SENSE_MASK;
+ else
+ *out_type = IRQ_TYPE_NONE;
+
return 0;
}