#define pr_fmt(fmt) …
#include <linux/dmi.h>
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/init.h>
#include <linux/types.h>
#include <linux/spinlock.h>
#include <linux/pm.h>
#include <linux/pci.h>
#include <linux/acpi.h>
#include <linux/slab.h>
#include <linux/interrupt.h>
struct acpi_prt_entry { … };
static inline char pin_name(int pin)
{ … }
static const struct dmi_system_id medion_md9580[] = …;
static const struct dmi_system_id dell_optiplex[] = …;
static const struct dmi_system_id hp_t5710[] = …;
struct prt_quirk { … };
#define PCI_INTX_PIN(c) …
static const struct prt_quirk prt_quirks[] = …;
static void do_prt_fixups(struct acpi_prt_entry *entry,
struct acpi_pci_routing_table *prt)
{ … }
static int acpi_pci_irq_check_entry(acpi_handle handle, struct pci_dev *dev,
int pin, struct acpi_pci_routing_table *prt,
struct acpi_prt_entry **entry_ptr)
{ … }
static int acpi_pci_irq_find_prt_entry(struct pci_dev *dev,
int pin, struct acpi_prt_entry **entry_ptr)
{ … }
#ifdef CONFIG_X86_IO_APIC
extern int noioapicquirk;
extern int noioapicreroute;
static int bridge_has_boot_interrupt_variant(struct pci_bus *bus)
{ … }
static int acpi_reroute_boot_interrupt(struct pci_dev *dev,
struct acpi_prt_entry *entry)
{ … }
#endif
struct acpi_prt_entry *acpi_pci_irq_lookup(struct pci_dev *dev, int pin)
{ … }
#if IS_ENABLED(CONFIG_ISA) || IS_ENABLED(CONFIG_EISA)
static int acpi_isa_register_gsi(struct pci_dev *dev)
{ … }
#else
static inline int acpi_isa_register_gsi(struct pci_dev *dev)
{
return -ENODEV;
}
#endif
static inline bool acpi_pci_irq_valid(struct pci_dev *dev, u8 pin)
{ … }
int acpi_pci_irq_enable(struct pci_dev *dev)
{ … }
void acpi_pci_irq_disable(struct pci_dev *dev)
{ … }