Hi Dominik. Thanks for the patch ! The devices have been assigned the missing IRQs. The network card keeps having some problems, but I believe is now a driver related issue. This is what I get when activating the network card.I'm copying this message to Donald Becker, the developer for the tulip driver. Apr 3 12:28:47 inferno kernel: NETDEV WATCHDOG: eth0: transmit timed out Apr 3 12:28:47 inferno kernel: eth0: Transmit timed out, status fc674055, CSR12 00000000, resetting... I'm attaching the latest dmesg and lspci so you can take a look at it and check for possible hot-spots. Thanks again for your help. Regards, Luis sues. Patch is against > acpi-20020329 + 2.5.7/2.4.18. Please test + tell me if it works. > > Dominik > > --- linux/arch/i386/kernel/pci-irq.c.original Tue Apr 2 13:35:24 2002 > +++ linux/arch/i386/kernel/pci-irq.c Tue Apr 2 13:47:23 2002 > @@ -576,10 +576,8 @@ > struct pci_dev *dev2; > char *msg = NULL; > > - if (!pirq_table) > - return 0; > > - /* Find IRQ routing entry */ > + /* Find IRQ pin */ > pci_read_config_byte(dev, PCI_INTERRUPT_PIN, &pin); > if (!pin) { > DBG(" -> no interrupt pin\n"); > @@ -588,10 +586,17 @@ > pin = pin - 1; > > #ifdef CONFIG_ACPI_PCI > + /* Use ACPI to lookup IRQ */ > + > if (pci_use_acpi_routing) > return acpi_lookup_irq(dev, pin, assign); > #endif > > + /* Find IRQ routing entry */ > + > + if (!pirq_table) > + return 0; > + > DBG("IRQ for %s:%d", dev->slot_name, pin); > info = pirq_get_info(dev); > if (!info) { > > > On Tuesday, 2. April 2002 23:54, Luis Falcon wrote: > > Bryan, > > > > Thanks a lot for your response. > > In fact the IRQ routing conflict has been solved ! > > > > What is still pending is the assignment of a valid IRQ to the Ethernet card > > ( device 00:05.0 ) and Sound Card ( 00:07.5 ). So, at this point, the > > ethernet card doesn't work. > > does not work. > > > > Here's the latest dmesg. > > > > Regards, > > Luis > ---- > > --- linux/arch/i386/kernel/pci-irq.c.original Tue Apr 2 13:35:24 2002 > +++ linux/arch/i386/kernel/pci-irq.c Tue Apr 2 13:47:23 2002 > @@ -576,10 +576,8 @@ > struct pci_dev *dev2; > char *msg = NULL; > > - if (!pirq_table) > - return 0; > > - /* Find IRQ routing entry */ > + /* Find IRQ pin */ > pci_read_config_byte(dev, PCI_INTERRUPT_PIN, &pin); > if (!pin) { > DBG(" -> no interrupt pin\n"); > @@ -588,10 +586,17 @@ > pin = pin - 1; > > #ifdef CONFIG_ACPI_PCI > + /* Use ACPI to lookup IRQ */ > + > if (pci_use_acpi_routing) > return acpi_lookup_irq(dev, pin, assign); > #endif > > + /* Find IRQ routing entry */ > + > + if (!pirq_table) > + return 0; > + > DBG("IRQ for %s:%d", dev->slot_name, pin); > info = pirq_get_info(dev); > if (!info) {