&active_high_low, &link);
&active_high_low, &link, acpi_pci_allocate_irq);
acpi_pci_irq_enable (	struct pci_dev		*dev){	int			irq = 0;	u8			pin = 0;	int			edge_level = ACPI_LEVEL_SENSITIVE;	int			active_high_low = ACPI_ACTIVE_LOW;	char			*link = NULL;	ACPI_FUNCTION_TRACE("acpi_pci_irq_enable");	if (!dev)		return_VALUE(-EINVAL);		pci_read_config_byte(dev, PCI_INTERRUPT_PIN, &pin);	if (!pin) {		ACPI_DEBUG_PRINT((ACPI_DB_INFO, "No interrupt pin configured for device %s\n", pci_name(dev)));		return_VALUE(0);	}	pin--;	if (!dev->bus) {		ACPI_DEBUG_PRINT((ACPI_DB_ERROR, "Invalid (NULL) 'bus' field\n"));		return_VALUE(-ENODEV);	}	/* 	 * First we check the PCI IRQ routing table (PRT) for an IRQ.  PRT	 * values override any BIOS-assigned IRQs set during boot.	 */ 	irq = acpi_pci_irq_lookup(dev->bus, PCI_SLOT(dev->devfn), pin,		&edge_level, &active_high_low, &link);	/*	 * If no PRT entry was found, we'll try to derive an IRQ from the	 * device's parent bridge.	 */	if (irq < 0) 		irq = acpi_pci_irq_derive(dev, pin, &edge_level,			&active_high_low, &link); 	/*	 * No IRQ known to the ACPI subsystem - maybe the BIOS / 	 * driver reported one, then use it. Exit in any case.	 */	if (irq < 0) {		printk(KERN_WARNING PREFIX "PCI Interrupt %s[%c]: no GSI",			pci_name(dev), ('A' + pin));		/* Interrupt Line values above 0xF are forbidden */		if (dev->irq >= 0 && (dev->irq <= 0xF)) {			printk(" - using IRQ %d\n", dev->irq);			return_VALUE(0);		}		else {			printk("\n");			return_VALUE(0);		} 	}	dev->irq = acpi_register_gsi(irq, edge_level, active_high_low);	printk(KERN_INFO PREFIX "PCI Interrupt %s[%c] -> ",		pci_name(dev), 'A' + pin);	if (link)		printk("Link [%s] -> ", link);	printk("GSI %u (%s, %s) -> IRQ %d\n", irq,		(edge_level == ACPI_LEVEL_SENSITIVE) ? "level" : "edge",		(active_high_low == ACPI_ACTIVE_LOW) ? "low" : "high",		dev->irq);	return_VALUE(0);}