Lines Matching refs:gsi
856 static int mp_find_ioapic (int gsi)
862 if ((gsi >= mp_ioapic_routing[i].gsi_base)
863 && (gsi <= mp_ioapic_routing[i].gsi_end))
867 printk(KERN_ERR "ERROR: Unable to locate IOAPIC for GSI %d\n", gsi);
908 * Build basic GSI lookup table to facilitate gsi->io_apic lookups
924 mp_override_legacy_irq(u8 bus_irq, u8 polarity, u8 trigger, u32 gsi)
931 * Convert 'gsi' to 'ioapic.pin'.
933 ioapic = mp_find_ioapic(gsi);
936 pin = gsi - mp_ioapic_routing[ioapic].gsi_base;
1037 int mp_register_gsi(u32 gsi, int triggering, int polarity)
1051 if (acpi_gbl_FADT.sci_interrupt == gsi)
1052 return gsi;
1054 ioapic = mp_find_ioapic(gsi);
1056 printk(KERN_WARNING "No IOAPIC for GSI %u\n", gsi);
1057 return gsi;
1060 ioapic_pin = gsi - mp_ioapic_routing[ioapic].gsi_base;
1063 gsi = ioapic_renumber_irq(ioapic, gsi);
1067 * with redundant pin->gsi mappings (but unique PCI devices);
1076 return gsi;
1081 return gsi_to_irq[gsi];
1091 int irq = gsi;
1092 if (gsi < MAX_GSI_NUM) {
1093 if (gsi > 15 || (gsi == 0 && !timer_uses_ioapic_pin_0))
1094 gsi = pci_irq++;
1098 if (gsi == acpi_gbl_FADT.sci_interrupt)
1099 gsi = pci_irq++;
1100 gsi_to_irq[irq] = gsi;
1102 printk(KERN_ERR "GSI %u is too high\n", gsi);
1103 return gsi;
1107 io_apic_set_pci_routing(ioapic, ioapic_pin, gsi,
1110 return gsi;