root/arch/mips/pci/fixup-tb0226.c

/* [<][>][^][v][top][bottom][index][help] */

DEFINITIONS

This source file includes following definitions.
  1. pcibios_map_irq
  2. pcibios_plat_dev_init

   1 // SPDX-License-Identifier: GPL-2.0-or-later
   2 /*
   3  *  fixup-tb0226.c, The TANBAC TB0226 specific PCI fixups.
   4  *
   5  *  Copyright (C) 2002-2005  Yoichi Yuasa <yuasa@linux-mips.org>
   6  */
   7 #include <linux/init.h>
   8 #include <linux/pci.h>
   9 
  10 #include <asm/vr41xx/giu.h>
  11 #include <asm/vr41xx/tb0226.h>
  12 
  13 int pcibios_map_irq(const struct pci_dev *dev, u8 slot, u8 pin)
  14 {
  15         int irq = -1;
  16 
  17         switch (slot) {
  18         case 12:
  19                 vr41xx_set_irq_trigger(GD82559_1_PIN,
  20                                        IRQ_TRIGGER_LEVEL,
  21                                        IRQ_SIGNAL_THROUGH);
  22                 vr41xx_set_irq_level(GD82559_1_PIN, IRQ_LEVEL_LOW);
  23                 irq = GD82559_1_IRQ;
  24                 break;
  25         case 13:
  26                 vr41xx_set_irq_trigger(GD82559_2_PIN,
  27                                        IRQ_TRIGGER_LEVEL,
  28                                        IRQ_SIGNAL_THROUGH);
  29                 vr41xx_set_irq_level(GD82559_2_PIN, IRQ_LEVEL_LOW);
  30                 irq = GD82559_2_IRQ;
  31                 break;
  32         case 14:
  33                 switch (pin) {
  34                 case 1:
  35                         vr41xx_set_irq_trigger(UPD720100_INTA_PIN,
  36                                                IRQ_TRIGGER_LEVEL,
  37                                                IRQ_SIGNAL_THROUGH);
  38                         vr41xx_set_irq_level(UPD720100_INTA_PIN,
  39                                              IRQ_LEVEL_LOW);
  40                         irq = UPD720100_INTA_IRQ;
  41                         break;
  42                 case 2:
  43                         vr41xx_set_irq_trigger(UPD720100_INTB_PIN,
  44                                                IRQ_TRIGGER_LEVEL,
  45                                                IRQ_SIGNAL_THROUGH);
  46                         vr41xx_set_irq_level(UPD720100_INTB_PIN,
  47                                              IRQ_LEVEL_LOW);
  48                         irq = UPD720100_INTB_IRQ;
  49                         break;
  50                 case 3:
  51                         vr41xx_set_irq_trigger(UPD720100_INTC_PIN,
  52                                                IRQ_TRIGGER_LEVEL,
  53                                                IRQ_SIGNAL_THROUGH);
  54                         vr41xx_set_irq_level(UPD720100_INTC_PIN,
  55                                              IRQ_LEVEL_LOW);
  56                         irq = UPD720100_INTC_IRQ;
  57                         break;
  58                 default:
  59                         break;
  60                 }
  61                 break;
  62         default:
  63                 break;
  64         }
  65 
  66         return irq;
  67 }
  68 
  69 /* Do platform specific device initialization at pci_enable_device() time */
  70 int pcibios_plat_dev_init(struct pci_dev *dev)
  71 {
  72         return 0;
  73 }

/* [<][>][^][v][top][bottom][index][help] */