Date: Tue, 23 Feb 1999 16:32:56 -0600 (CST) From: "Douglas K. Rand" <rand@meridian-enviro.com> To: freebsd-questions@FreeBSD.ORG Subject: Re: Two ISA Intel EtherExpress Pro/10+ cards Message-ID: <14035.11416.794297.939217@deneb.meridian-enviro.com> In-Reply-To: <14031.20418.90174.211965@deneb.meridian-enviro.com> References: <14031.20418.90174.211965@deneb.meridian-enviro.com>
next in thread | previous in thread | raw e-mail | index | archive | help
** Douglas K Rand <rand@meridian-enviro.com> on Sat, 20 Feb 1999 18:13:54 -0600 (CST)
** in [Two ISA Intel EtherExpress Pro/10+ cards] writes:
Douglas> I'm having difficulity getting an old 486 (EISA) to work with two
Douglas> Intel EtherExpress Pro/10+ cards.
Well, I don't know if answering my own question is a good thing or
not, but here goes.
After some assistance from Javir Martin Rueda <jmrueda@diatel.upm.es>
the author of the ex driver, I figured out that Intel is now shipping
EtherExpress Pro/10+ cards with a different prefix on the MAC
address. The prefix of the MAC address is used to determine if the
card is a Pro/10 or a Pro/10+. Adding my prefix to the code fixed all
my problems.
Here are the diffs against the 3.0-RELEASE if_ex.c driver:
*** if_ex.c-orig Sun Jun 7 12:10:30 1998
--- if_ex.c Tue Feb 23 16:18:01 1999
***************
*** 206,214 ****
tmp = eeprom_read(iobase, EE_IRQ_No) & IRQ_No_Mask;
/* work out which set of irq <-> internal tables to use */
! if (sc->arpcom.ac_enaddr[0] == 0x00 &&
! sc->arpcom.ac_enaddr[1] == 0xA0 &&
! sc->arpcom.ac_enaddr[2] == 0xC9) { /* it's a 10+ */
sc->irq2ee = plus_irq2eemap;
sc->ee2irq = plus_ee2irqmap;
} else { /* it's an ordinary 10 */
--- 206,217 ----
tmp = eeprom_read(iobase, EE_IRQ_No) & IRQ_No_Mask;
/* work out which set of irq <-> internal tables to use */
! if ((sc->arpcom.ac_enaddr[0] == 0x00 &&
! sc->arpcom.ac_enaddr[1] == 0xA0 &&
! sc->arpcom.ac_enaddr[2] == 0xC9) ||
! (sc->arpcom.ac_enaddr[0] == 0x00 &&
! sc->arpcom.ac_enaddr[1] == 0x90 &&
! sc->arpcom.ac_enaddr[2] == 0x27)) { /* it's a 10+ */
sc->irq2ee = plus_irq2eemap;
sc->ee2irq = plus_ee2irqmap;
} else { /* it's an ordinary 10 */
***************
*** 274,282 ****
if_attach(ifp);
ether_ifattach(ifp);
! if (sc->arpcom.ac_enaddr[0] == 0x00 &&
! sc->arpcom.ac_enaddr[1] == 0xA0 &&
! sc->arpcom.ac_enaddr[2] == 0xC9) {
printf("ex%d: Intel EtherExpress Pro/10+, address %6D, connector ", dev->id_unit, sc->arpcom.ac_enaddr, ":");
} else {
printf("ex%d: Intel EtherExpress Pro/10, address %6D, connector ", dev->id_unit, sc->arpcom.ac_enaddr, ":");
--- 277,288 ----
if_attach(ifp);
ether_ifattach(ifp);
! if ((sc->arpcom.ac_enaddr[0] == 0x00 &&
! sc->arpcom.ac_enaddr[1] == 0xA0 &&
! sc->arpcom.ac_enaddr[2] == 0xC9) ||
! (sc->arpcom.ac_enaddr[0] == 0x00 &&
! sc->arpcom.ac_enaddr[1] == 0x90 &&
! sc->arpcom.ac_enaddr[2] == 0x27)) {
printf("ex%d: Intel EtherExpress Pro/10+, address %6D, connector ", dev->id_unit, sc->arpcom.ac_enaddr, ":");
} else {
printf("ex%d: Intel EtherExpress Pro/10, address %6D, connector ", dev->id_unit, sc->arpcom.ac_enaddr, ":");
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-questions" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?14035.11416.794297.939217>
