USB OHCI IRQ on Digital PWS500

Peter De Schrijver (p2@mind.be)
Sun, 28 Oct 2001 21:31:54 +0100


--vtzGhvizbBRQ85DL
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline

Hi,

The IRQ for the 82c693 USB function is not assigned correctly to an interrupt.
This is because it's the only PCI device which has it's IRQ line connected to
the 8259 interrupt controllers iso to the PYXIS. The following patch solves
this problem.

Comments welcome,

Peter.

--vtzGhvizbBRQ85DL
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename=t

--- orig/linux/arch/alpha/kernel/sys_miata.c Sat Oct 13 00:35:53 2001
+++ linux/arch/alpha/kernel/sys_miata.c Sun Oct 28 21:02:13 2001
@@ -176,6 +176,19 @@
{ -1, -1, -1, -1, -1}, /* IdSel 31, PCI-PCI */
};
const long min_idsel = 3, max_idsel = 20, irqs_per_slot = 5;
+
+ /* the USB function of the 82c693 has it's interrupt connected to
+ the 2nd 8259 controller. So we have to check for it first. */
+
+ if((slot == 7) && (PCI_FUNC(dev->devfn) == 3)) {
+ u8 irq=0;
+
+ if(pci_read_config_byte(pci_find_slot(dev->bus->number, dev->devfn & ~(7)), 0x40,&irq)!=PCIBIOS_SUCCESSFUL)
+ return -1;
+ else
+ return irq;
+ }
+
return COMMON_TABLE_LOOKUP;
}

--vtzGhvizbBRQ85DL--
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/