]>
Commit | Line | Data |
---|---|---|
1a59d1b8 | 1 | // SPDX-License-Identifier: GPL-2.0-or-later |
1da177e4 LT |
2 | /* |
3 | * fixup-tb0226.c, The TANBAC TB0226 specific PCI fixups. | |
4 | * | |
ada8e951 | 5 | * Copyright (C) 2002-2005 Yoichi Yuasa <yuasa@linux-mips.org> |
1da177e4 LT |
6 | */ |
7 | #include <linux/init.h> | |
8 | #include <linux/pci.h> | |
9 | ||
43d2c4ca | 10 | #include <asm/vr41xx/giu.h> |
1da177e4 LT |
11 | #include <asm/vr41xx/tb0226.h> |
12 | ||
8eba3651 | 13 | int pcibios_map_irq(const struct pci_dev *dev, u8 slot, u8 pin) |
1da177e4 LT |
14 | { |
15 | int irq = -1; | |
16 | ||
17 | switch (slot) { | |
18 | case 12: | |
19 | vr41xx_set_irq_trigger(GD82559_1_PIN, | |
43d2c4ca YY |
20 | IRQ_TRIGGER_LEVEL, |
21 | IRQ_SIGNAL_THROUGH); | |
22 | vr41xx_set_irq_level(GD82559_1_PIN, IRQ_LEVEL_LOW); | |
1da177e4 LT |
23 | irq = GD82559_1_IRQ; |
24 | break; | |
25 | case 13: | |
26 | vr41xx_set_irq_trigger(GD82559_2_PIN, | |
43d2c4ca YY |
27 | IRQ_TRIGGER_LEVEL, |
28 | IRQ_SIGNAL_THROUGH); | |
29 | vr41xx_set_irq_level(GD82559_2_PIN, IRQ_LEVEL_LOW); | |
1da177e4 LT |
30 | irq = GD82559_2_IRQ; |
31 | break; | |
32 | case 14: | |
33 | switch (pin) { | |
34 | case 1: | |
35 | vr41xx_set_irq_trigger(UPD720100_INTA_PIN, | |
43d2c4ca YY |
36 | IRQ_TRIGGER_LEVEL, |
37 | IRQ_SIGNAL_THROUGH); | |
1da177e4 | 38 | vr41xx_set_irq_level(UPD720100_INTA_PIN, |
43d2c4ca | 39 | IRQ_LEVEL_LOW); |
1da177e4 LT |
40 | irq = UPD720100_INTA_IRQ; |
41 | break; | |
42 | case 2: | |
43 | vr41xx_set_irq_trigger(UPD720100_INTB_PIN, | |
43d2c4ca YY |
44 | IRQ_TRIGGER_LEVEL, |
45 | IRQ_SIGNAL_THROUGH); | |
1da177e4 | 46 | vr41xx_set_irq_level(UPD720100_INTB_PIN, |
43d2c4ca | 47 | IRQ_LEVEL_LOW); |
1da177e4 LT |
48 | irq = UPD720100_INTB_IRQ; |
49 | break; | |
50 | case 3: | |
51 | vr41xx_set_irq_trigger(UPD720100_INTC_PIN, | |
43d2c4ca YY |
52 | IRQ_TRIGGER_LEVEL, |
53 | IRQ_SIGNAL_THROUGH); | |
1da177e4 | 54 | vr41xx_set_irq_level(UPD720100_INTC_PIN, |
43d2c4ca | 55 | IRQ_LEVEL_LOW); |
1da177e4 LT |
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 | } |