Hi again,
I am trying to use e1000e driver in Ankh to bring-up intel's 82574L ethernet controller. But its unable to allocate interrupt and I cant figure out the source of the problem.
Can you please try this?
Index: dde/linux26/lib/src/arch/l4/pci.c
--- dde/linux26/lib/src/arch/l4/pci.c (Revision 41236) +++ dde/linux26/lib/src/arch/l4/pci.c (Arbeitskopie) @@ -196,6 +196,7 @@ Assert(pci_bus);
pci_do_scan_bus(pci_bus);
pci_walk_bus(pci_bus, pci_irq_enable, NULL); INITIALIZE_INITVAR(dde26_pci);
}
Christian kindly asked for a longer explanation: modern BIOSes reroute IRQs. The updated information on the newly assigned IRQ number is provided through some ACPI tables that are parsed correctly by the IO server.
The Linux drivers, though, try to read the IRQ no. from the PCI config space, which is not touched by the BIOS and hence contains an invalid value. Calling pci_irq_enable() afterwards will make sure that DDE gets the "right" IRQ value from the IO server.
Björn