[PATCH 5/7] ACPI / irq: Add GSI IRQ domain getter function

From: Hanna Hawa
Date: Sun Mar 31 2019 - 08:36:00 EST


Add GSI IRQ domain getter function (acpi_get_gsi_domain_id), for IRQ
drivers that use ACPI and need the IRQ parent domain to register their
irq-chip device.

Signed-off-by: Hanna Hawa <hhhawa@xxxxxxxxxx>
Co-developed-by: Vladimir Aerov <vaerov@xxxxxxxxxx>
Signed-off-by: Vladimir Aerov <vaerov@xxxxxxxxxx>
---
drivers/acpi/irq.c | 13 +++++++++++++
include/linux/acpi.h | 1 +
2 files changed, 14 insertions(+)

diff --git a/drivers/acpi/irq.c b/drivers/acpi/irq.c
index 7c352cb..efc57b1 100644
--- a/drivers/acpi/irq.c
+++ b/drivers/acpi/irq.c
@@ -295,3 +295,16 @@ void __init acpi_set_irq_model(enum acpi_irq_model_id model,
acpi_irq_model = model;
acpi_gsi_domain_id = fwnode;
}
+
+/**
+ * acpi_get_gsi_domain_id - getter for the GSI irqdomain information
+ *
+ * return:
+ * @fwnode: return the irq_domain identifier for mapping and looking up
+ * GSI interrupts
+ */
+struct fwnode_handle *acpi_get_gsi_domain_id(void)
+{
+ return acpi_gsi_domain_id;
+}
+EXPORT_SYMBOL_GPL(acpi_get_gsi_domain_id);
diff --git a/include/linux/acpi.h b/include/linux/acpi.h
index 87715f2..642c2e2 100644
--- a/include/linux/acpi.h
+++ b/include/linux/acpi.h
@@ -322,6 +322,7 @@ int acpi_isa_irq_to_gsi (unsigned isa_irq, u32 *gsi);

void acpi_set_irq_model(enum acpi_irq_model_id model,
struct fwnode_handle *fwnode);
+struct fwnode_handle *acpi_get_gsi_domain_id(void);

#ifdef CONFIG_X86_IO_APIC
extern int acpi_get_override_irq(u32 gsi, int *trigger, int *polarity);
--
2.7.4