Lines Matching full:gsi

96  * any gsi as specified by an interrupt source override.
338 u8 trigger, u32 gsi);
341 u32 gsi) in mp_override_legacy_irq() argument
359 if (mp_register_ioapic_irq(bus_irq, polarity, trigger, gsi) < 0) in mp_override_legacy_irq()
362 * Reset default identity mapping if gsi is also an legacy IRQ, in mp_override_legacy_irq()
363 * otherwise there will be more than one entry with the same GSI in mp_override_legacy_irq()
366 if (gsi < nr_legacy_irqs() && isa_irq_to_gsi[gsi] == gsi) in mp_override_legacy_irq()
367 isa_irq_to_gsi[gsi] = INVALID_ACPI_IRQ; in mp_override_legacy_irq()
368 isa_irq_to_gsi[bus_irq] = gsi; in mp_override_legacy_irq()
371 static int mp_config_acpi_gsi(struct device *dev, u32 gsi, int trigger, in mp_config_acpi_gsi() argument
398 ioapic = mp_find_ioapic(gsi); in mp_config_acpi_gsi()
400 mp_irq.dstirq = mp_find_ioapic_pin(ioapic, gsi); in mp_config_acpi_gsi()
408 u8 trigger, u32 gsi) in mp_register_ioapic_irq() argument
413 /* Convert 'gsi' to 'ioapic.pin'(INTIN#) */ in mp_register_ioapic_irq()
414 ioapic = mp_find_ioapic(gsi); in mp_register_ioapic_irq()
416 pr_warn("Failed to find ioapic for gsi : %u\n", gsi); in mp_register_ioapic_irq()
420 pin = mp_find_ioapic_pin(ioapic, gsi); in mp_register_ioapic_irq()
464 static void __init acpi_sci_ioapic_setup(u8 bus_irq, u16 polarity, u16 trigger, u32 gsi) in acpi_sci_ioapic_setup() argument
480 mp_override_legacy_irq(bus_irq, polarity, trigger, gsi); in acpi_sci_ioapic_setup()
482 mp_register_ioapic_irq(bus_irq, polarity, trigger, gsi); in acpi_sci_ioapic_setup()
490 acpi_sci_override_gsi = gsi; in acpi_sci_ioapic_setup()
605 int acpi_gsi_to_irq(u32 gsi, unsigned int *irqp) in acpi_gsi_to_irq() argument
610 *irqp = gsi; in acpi_gsi_to_irq()
614 rc = acpi_get_override_irq(gsi, &trigger, &polarity); in acpi_gsi_to_irq()
620 irq = acpi_register_gsi(NULL, gsi, trigger, polarity); in acpi_gsi_to_irq()
629 int acpi_isa_irq_to_gsi(unsigned isa_irq, u32 *gsi) in acpi_isa_irq_to_gsi() argument
633 *gsi = isa_irq_to_gsi[isa_irq]; in acpi_isa_irq_to_gsi()
640 static int acpi_register_gsi_pic(struct device *dev, u32 gsi, in acpi_register_gsi_pic() argument
648 elcr_set_level_irq(gsi); in acpi_register_gsi_pic()
651 return gsi; in acpi_register_gsi_pic()
655 static int acpi_register_gsi_ioapic(struct device *dev, u32 gsi, in acpi_register_gsi_ioapic() argument
658 int irq = gsi; in acpi_register_gsi_ioapic()
669 irq = mp_map_gsi_to_irq(gsi, IOAPIC_MAP_ALLOC, &info); in acpi_register_gsi_ioapic()
671 if (irq >= 0 && enable_update_mptable && gsi != acpi_gbl_FADT.sci_interrupt) in acpi_register_gsi_ioapic()
672 mp_config_acpi_gsi(dev, gsi, trigger, polarity); in acpi_register_gsi_ioapic()
679 static void acpi_unregister_gsi_ioapic(u32 gsi) in acpi_unregister_gsi_ioapic() argument
685 irq = mp_map_gsi_to_irq(gsi, 0, NULL); in acpi_unregister_gsi_ioapic()
693 int (*__acpi_register_gsi)(struct device *dev, u32 gsi,
695 void (*__acpi_unregister_gsi)(u32 gsi) = NULL;
707 int acpi_register_gsi(struct device *dev, u32 gsi, int trigger, int polarity) in acpi_register_gsi() argument
709 return __acpi_register_gsi(dev, gsi, trigger, polarity); in acpi_register_gsi()
713 void acpi_unregister_gsi(u32 gsi) in acpi_unregister_gsi() argument
716 __acpi_unregister_gsi(gsi); in acpi_unregister_gsi()
836 * @gsi_base: GSI base associated with the IOAPIC
1114 u32 gsi; in mp_config_acpi_legacy_irqs() local
1116 /* Locate the gsi that irq i maps to. */ in mp_config_acpi_legacy_irqs()
1117 if (acpi_isa_irq_to_gsi(i, &gsi)) in mp_config_acpi_legacy_irqs()
1123 ioapic = mp_find_ioapic(gsi); in mp_config_acpi_legacy_irqs()
1126 pin = mp_find_ioapic_pin(ioapic, gsi); in mp_config_acpi_legacy_irqs()