Skip to content

Commit d32932d

Browse files
Jiang LiuKAGA-KOKO
authored andcommitted
x86/irq: Convert IOAPIC to use hierarchical irqdomain interfaces
Convert IOAPIC driver to support and use hierarchical irqdomain interfaces. It's a little big, but would break bisecting if we split it into multiple patches. Fold in a patch from Andy Shevchenko <[email protected]> to make it bisectable. http://lkml.org/lkml/2014/12/10/622 Signed-off-by: Jiang Liu <[email protected]> Tested-by: Joerg Roedel <[email protected]> Cc: Konrad Rzeszutek Wilk <[email protected]> Cc: Sander Eikelenboom <[email protected]> Cc: David Vrabel <[email protected]> Cc: Tony Luck <[email protected]> Cc: Joerg Roedel <[email protected]> Cc: Greg Kroah-Hartman <[email protected]> Cc: Andy Shevchenko <[email protected]> Cc: [email protected] Cc: Bjorn Helgaas <[email protected]> Cc: Benjamin Herrenschmidt <[email protected]> Cc: Rafael J. Wysocki <[email protected]> Cc: Randy Dunlap <[email protected]> Cc: Yinghai Lu <[email protected]> Cc: Borislav Petkov <[email protected]> Cc: Dimitri Sivanich <[email protected]> Cc: Len Brown <[email protected]> Cc: Pavel Machek <[email protected]> Cc: Grant Likely <[email protected]> Cc: Rob Herring <[email protected]> Cc: David Rientjes <[email protected]> Cc: David Cohen <[email protected]> Link: http://lkml.kernel.org/r/[email protected] Signed-off-by: Thomas Gleixner <[email protected]>
1 parent 96ed44b commit d32932d

File tree

8 files changed

+240
-137
lines changed

8 files changed

+240
-137
lines changed

arch/x86/kernel/acpi/boot.c

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -412,11 +412,6 @@ static int mp_register_gsi(struct device *dev, u32 gsi, int trigger,
412412
trigger = trigger == ACPI_EDGE_SENSITIVE ? 0 : 1;
413413
polarity = polarity == ACPI_ACTIVE_HIGH ? 0 : 1;
414414
node = dev ? dev_to_node(dev) : NUMA_NO_NODE;
415-
if (mp_set_gsi_attr(gsi, trigger, polarity, node)) {
416-
pr_warn("Failed to set pin attr for GSI%d\n", gsi);
417-
return -1;
418-
}
419-
420415
ioapic_set_alloc_attr(&info, node, trigger, polarity);
421416
irq = mp_map_gsi_to_irq(gsi, IOAPIC_MAP_ALLOC, &info);
422417
if (irq < 0)
@@ -442,8 +437,10 @@ static void mp_unregister_gsi(u32 gsi)
442437
}
443438

444439
static struct irq_domain_ops acpi_irqdomain_ops = {
445-
.map = mp_irqdomain_map,
446-
.unmap = mp_irqdomain_unmap,
440+
.alloc = mp_irqdomain_alloc,
441+
.free = mp_irqdomain_free,
442+
.activate = mp_irqdomain_activate,
443+
.deactivate = mp_irqdomain_deactivate,
447444
};
448445

449446
static int __init

0 commit comments

Comments
 (0)