intel dual netwokcard problem on epia-m -- nearly fixed
Niki Waibel
niki.waibel at newlogic.com
Fri Nov 28 06:10:01 CET 2003
okay -- i got the dual card working -- somehow:
===
$ diff -u freebios-20031024.orig/src/mainboard/via/epia-m/mainboard.c freebios-20031024/src/mainboard/via/epia-m/mainboard.c
--- freebios-20031024.orig/src/mainboard/via/epia-m/mainboard.c 2003-07-25 05:20:20.000000000 +0200
+++ freebios-20031024/src/mainboard/via/epia-m/mainboard.c 2003-11-28 11:02:37.948735048 +0100
@@ -8,8 +8,10 @@
static const unsigned char usbIrqs[4] = { 11, 10, 12, 5 };
static const unsigned char enetIrqs[4] = { 11, 5, 10, 12 };
static const unsigned char slotIrqs[4] = { 10, 12, 5, 11 };
+static const unsigned char dualenetaIrq[4] = { 12, 5, 11, 10 };
+static const unsigned char dualenetbIrq[4] = { 10, 12, 5, 11 };
static const unsigned char firewireIrqs[4] = {10, 12, 5, 11 };
-static const unsigned char vt8235Irqs[4] = { 5,10, 12, 11 };
+static const unsigned char vt8235Irqs[4] = { 5, 10, 12, 11 };
/*
@@ -57,6 +59,12 @@
// vt8235 slot
printk_info("setting vt8235 slot\n");
pci_assign_irqs(0, 0x11, vt8235Irqs);
+
+ // dual eth card
+ printk_info("setting pci slot - pci-pci bridge - dual eth card (a)\n");
+ pci_assign_irqs(2, 0x4, dualenetaIrq);
+ printk_info("setting pci slot - pci-pci bridge - dual eth card (b)\n");
+ pci_assign_irqs(2, 0x5, dualenetbIrq);
}
===
jan: thanks a lot for the tip with the bridge!!!
it seems that i have to play a little bit more with the interrupts.
the e100.o code in linux tells me ``Disabling IRQ #10'' and/or
``Disabling IRQ #12'' (depending on the values in dualenetaIrq[4] and
dualenetbIrq[4]) when bringing up the nics. and then one or both of the
nics dont work...
niki
More information about the coreboot
mailing list