static int __init dt2_pci_map_irq(const struct pci_dev *dev, u8 slot, u8 pin) { int irq; /* * Check for devices with hard-wired IRQs. */ irq = orion5x_pci_map_irq(dev, slot, pin); if (irq != -1){ printk(KERN_INFO "orion5x_pci_map_irq: %d\n", irq); return irq; } /* * PCI IRQs are connected via GPIOs */ switch (slot - DT2_PCI_SLOT0_OFFS) { case 0: if (pin == 1){ irq = gpio_to_irq(DT2_PCI_SLOT0_IRQ_A_PIN); printk(KERN_INFO "dt2_pci_map_irq DT2_PCI_SLOT0_IRQ_A_PIN: %d\n", irq); } else { irq = gpio_to_irq(DT2_PCI_SLOT0_IRQ_B_PIN); printk(KERN_INFO "dt2_pci_map_irq DT2_PCI_SLOT0_IRQ_B_PIN: %d\n", irq); } default: irq = -1; printk(KERN_INFO "dt2_pci_map_irq IRQ: %d\n", irq); } return irq; }
static int __init rd88f5182_pci_map_irq(const struct pci_dev *dev, u8 slot, u8 pin) { int irq; /* * Check for devices with hard-wired IRQs. */ irq = orion5x_pci_map_irq(dev, slot, pin); if (irq != -1) return irq; /* * PCI IRQs are connected via GPIOs */ switch (slot - RD88F5182_PCI_SLOT0_OFFS) { case 0: if (pin == 1) return gpio_to_irq(RD88F5182_PCI_SLOT0_IRQ_A_PIN); else return gpio_to_irq(RD88F5182_PCI_SLOT0_IRQ_B_PIN); default: return -1; } }
static int __init db88f5281_pci_map_irq(const struct pci_dev *dev, u8 slot, u8 pin) { int irq; /* * Check for devices with hard-wired IRQs. */ irq = orion5x_pci_map_irq(dev, slot, pin); if (irq != -1) return irq; /* * PCI IRQs are connected via GPIOs. */ switch (slot - DB88F5281_PCI_SLOT0_OFFS) { case 0: return gpio_to_irq(DB88F5281_PCI_SLOT0_IRQ_PIN); case 1: case 2: return gpio_to_irq(DB88F5281_PCI_SLOT1_SLOT2_IRQ_PIN); default: return -1; } }
static int __init kurobox_pro_pci_map_irq(const struct pci_dev *dev, u8 slot, u8 pin) { int irq; irq = orion5x_pci_map_irq(dev, slot, pin); if (irq != -1) return irq; return -1; }
static int __init rd88f5181l_fxo_pci_map_irq(const struct pci_dev *dev, u8 slot, u8 pin) { int irq; irq = orion5x_pci_map_irq(dev, slot, pin); if (irq != -1) return irq; return gpio_to_irq(1); }
static int __init dns323_pci_map_irq(const struct pci_dev *dev, u8 slot, u8 pin) { int irq; /* * Check for devices with hard-wired IRQs. */ irq = orion5x_pci_map_irq(dev, slot, pin); if (irq != -1) return irq; return -1; }
static int __init wrt350n_v2_pci_map_irq(const struct pci_dev *dev, u8 slot, u8 pin) { int irq; irq = orion5x_pci_map_irq(dev, slot, pin); if (irq != -1) return irq; if (slot == 7) return gpio_to_irq(4); return -1; }
static int __init rd88f5181l_ge_pci_map_irq(const struct pci_dev *dev, u8 slot, u8 pin) { int irq; irq = orion5x_pci_map_irq(dev, slot, pin); if (irq != -1) return irq; if (pin == 1) return gpio_to_irq(4); else return gpio_to_irq(10); }
static int __init kurobox_pro_pci_map_irq(struct pci_dev *dev, u8 slot, u8 pin) { int irq; /* * Check for devices with hard-wired IRQs. */ irq = orion5x_pci_map_irq(dev, slot, pin); if (irq != -1) return irq; /* * PCI isn't used on the Kuro */ return -1; }
static int __init rd88f5181l_fxo_pci_map_irq(struct pci_dev *dev, u8 slot, u8 pin) { int irq; /* * Check for devices with hard-wired IRQs. */ irq = orion5x_pci_map_irq(dev, slot, pin); if (irq != -1) return irq; /* * Mini-PCI / Cardbus slot. */ return gpio_to_irq(1); }
static int __init qnap_ts409_pci_map_irq(const struct pci_dev *dev, u8 slot, u8 pin) { int irq; /* * Check for devices with hard-wired IRQs. */ irq = orion5x_pci_map_irq(dev, slot, pin); if (irq != -1) return irq; /* * PCI isn't used on the TS-409 */ return -1; }
static int __init tsp2_pci_map_irq(const struct pci_dev *dev, u8 slot, u8 pin) { int irq; /* * Check for devices with hard-wired IRQs. */ irq = orion5x_pci_map_irq(dev, slot, pin); if (irq != -1) return irq; /* * PCI IRQs are connected via GPIOs. */ if (slot == TSP2_PCI_SLOT0_OFFS) return gpio_to_irq(TSP2_PCI_SLOT0_IRQ_PIN); return -1; }
static int __init wnr854t_pci_map_irq(struct pci_dev *dev, u8 slot, u8 pin) { int irq; /* * Check for devices with hard-wired IRQs. */ irq = orion5x_pci_map_irq(dev, slot, pin); if (irq != -1) return irq; /* * Mini-PCI slot. */ if (slot == 7) return gpio_to_irq(4); return -1; }
static int __init db88f5281_pci_map_irq(const struct pci_dev *dev, u8 slot, u8 pin) { int irq; irq = orion5x_pci_map_irq(dev, slot, pin); if (irq != -1) return irq; switch (slot - DB88F5281_PCI_SLOT0_OFFS) { case 0: return gpio_to_irq(DB88F5281_PCI_SLOT0_IRQ_PIN); case 1: case 2: return gpio_to_irq(DB88F5281_PCI_SLOT1_SLOT2_IRQ_PIN); default: return -1; } }
static int __init rd88f5181l_ge_pci_map_irq(const struct pci_dev *dev, u8 slot, u8 pin) { int irq; /* * Check for devices with hard-wired IRQs. */ irq = orion5x_pci_map_irq(dev, slot, pin); if (irq != -1) return irq; /* * Cardbus slot. */ if (pin == 1) return gpio_to_irq(4); else return gpio_to_irq(10); }
static int __init qnap_ts209_pci_map_irq(struct pci_dev *dev, u8 slot, u8 pin) { int irq; /* * Check for devices with hard-wired IRQs. */ irq = orion5x_pci_map_irq(dev, slot, pin); if (irq != -1) return irq; /* * PCI IRQs are connected via GPIOs. */ switch (slot - QNAP_TS209_PCI_SLOT0_OFFS) { case 0: return gpio_to_irq(QNAP_TS209_PCI_SLOT0_IRQ_PIN); case 1: return gpio_to_irq(QNAP_TS209_PCI_SLOT1_IRQ_PIN); default: return -1; } }