From: Steve L. <slo...@us...> - 2002-02-08 00:33:58
|
Update of /cvsroot/linux-mips/linux/arch/mips/rc32300/79S334 In directory usw-pr-cvs1:/tmp/cvs-serv7394/79S334 Modified Files: pci_fixup.c setup.c Log Message: bus_error_init() was in, now it's out, so call it explicitly. Index: pci_fixup.c =================================================================== RCS file: /cvsroot/linux-mips/linux/arch/mips/rc32300/79S334/pci_fixup.c,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- pci_fixup.c 24 Jan 2002 20:13:34 -0000 1.4 +++ pci_fixup.c 8 Feb 2002 00:33:55 -0000 1.5 @@ -41,9 +41,50 @@ { } +#if 0 + +static void pci_master_error_intr(int irq, void *dev_id, struct pt_regs *regs) +{ + printk("RC32334 PCI master %s error\n", irq == GROUP11_IRQ_BASE+0 ? + "write" : "read"); +} + +static void pci_parity_intr(int irq, void *dev_id, struct pt_regs *regs) +{ + printk("RC32334 PCI %s parity error\n", irq == GROUP11_IRQ_BASE+2 ? + "master" : "target"); +} + +static int __init init_pci_interrupts(void) +{ + request_irq(GROUP11_IRQ_BASE+0, pci_master_error_intr, SA_INTERRUPT, + "RC32334 PCI Master Write Error", NULL); + request_irq(GROUP11_IRQ_BASE+1, pci_master_error_intr, SA_INTERRUPT, + "RC32334 PCI Master Read Error", NULL); + request_irq(GROUP11_IRQ_BASE+2, pci_parity_intr, SA_INTERRUPT, + "RC32334 PCI Master Parity Error", NULL); + request_irq(GROUP11_IRQ_BASE+3, pci_parity_intr, SA_INTERRUPT, + "RC32334 PCI Target Parity Error", NULL); +} + +static void __exit cleanup_pci_interrupts(void) +{ + free_irq(GROUP11_IRQ_BASE+0, NULL); + free_irq(GROUP11_IRQ_BASE+1, NULL); + free_irq(GROUP11_IRQ_BASE+2, NULL); + free_irq(GROUP11_IRQ_BASE+3, NULL); +} + +#endif + void __init pcibios_fixup(void) { + extern void (*ibe_board_handler)(struct pt_regs *regs); + extern void (*dbe_board_handler)(struct pt_regs *regs); + extern void rc32334_be_handler(struct pt_regs *regs); extern void rc32300_ack_irq(unsigned int irq_nr); + + ibe_board_handler = dbe_board_handler = rc32334_be_handler; // ack any bus errors rc32300_ack_irq(GROUP4_IRQ_BASE+4); // ack timer 4 rollover intr Index: setup.c =================================================================== RCS file: /cvsroot/linux-mips/linux/arch/mips/rc32300/79S334/setup.c,v retrieving revision 1.7 retrieving revision 1.8 diff -u -d -r1.7 -r1.8 --- setup.c 4 Feb 2002 21:21:42 -0000 1.7 +++ setup.c 8 Feb 2002 00:33:55 -0000 1.8 @@ -167,10 +167,6 @@ * an interrupt. */ - /* set bus error vectors to our custom handler */ - set_except_vector(6, rc32334_be_handler); - set_except_vector(7, rc32334_be_handler); - /* * Disable CPU and IP Bus Error exceptions (PCI scan will * cause bus timeouts), and disable WatchDog. @@ -229,6 +225,8 @@ // clear out any wired entries write_32bit_cp0_register(CP0_WIRED, 0); + + bus_error_init(); inb(LCD_CLEAR); // clear the 4-digit LCD display |