aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/char/tb0219.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/char/tb0219.c')
-rw-r--r--drivers/char/tb0219.c19
1 files changed, 19 insertions, 0 deletions
diff --git a/drivers/char/tb0219.c b/drivers/char/tb0219.c
index 5413f2908859..eb7058cbf015 100644
--- a/drivers/char/tb0219.c
+++ b/drivers/char/tb0219.c
@@ -24,6 +24,8 @@
24 24
25#include <asm/io.h> 25#include <asm/io.h>
26#include <asm/reboot.h> 26#include <asm/reboot.h>
27#include <asm/vr41xx/giu.h>
28#include <asm/vr41xx/tb0219.h>
27 29
28MODULE_AUTHOR("Yoichi Yuasa <yuasa@hh.iij4u.or.jp>"); 30MODULE_AUTHOR("Yoichi Yuasa <yuasa@hh.iij4u.or.jp>");
29MODULE_DESCRIPTION("TANBAC TB0219 base board driver"); 31MODULE_DESCRIPTION("TANBAC TB0219 base board driver");
@@ -266,6 +268,21 @@ static void tb0219_restart(char *command)
266 tb0219_write(TB0219_RESET, 0); 268 tb0219_write(TB0219_RESET, 0);
267} 269}
268 270
271static void tb0219_pci_irq_init(void)
272{
273 /* PCI Slot 1 */
274 vr41xx_set_irq_trigger(TB0219_PCI_SLOT1_PIN, IRQ_TRIGGER_LEVEL, IRQ_SIGNAL_THROUGH);
275 vr41xx_set_irq_level(TB0219_PCI_SLOT1_PIN, IRQ_LEVEL_LOW);
276
277 /* PCI Slot 2 */
278 vr41xx_set_irq_trigger(TB0219_PCI_SLOT2_PIN, IRQ_TRIGGER_LEVEL, IRQ_SIGNAL_THROUGH);
279 vr41xx_set_irq_level(TB0219_PCI_SLOT2_PIN, IRQ_LEVEL_LOW);
280
281 /* PCI Slot 3 */
282 vr41xx_set_irq_trigger(TB0219_PCI_SLOT3_PIN, IRQ_TRIGGER_LEVEL, IRQ_SIGNAL_THROUGH);
283 vr41xx_set_irq_level(TB0219_PCI_SLOT3_PIN, IRQ_LEVEL_LOW);
284}
285
269static int tb0219_probe(struct device *dev) 286static int tb0219_probe(struct device *dev)
270{ 287{
271 int retval; 288 int retval;
@@ -292,6 +309,8 @@ static int tb0219_probe(struct device *dev)
292 old_machine_restart = _machine_restart; 309 old_machine_restart = _machine_restart;
293 _machine_restart = tb0219_restart; 310 _machine_restart = tb0219_restart;
294 311
312 tb0219_pci_irq_init();
313
295 if (major == 0) { 314 if (major == 0) {
296 major = retval; 315 major = retval;
297 printk(KERN_INFO "TB0219: major number %d\n", major); 316 printk(KERN_INFO "TB0219: major number %d\n", major);