From owner-freebsd-bugs Wed May 14 08:00:03 1997 Return-Path: Received: (from root@localhost) by hub.freebsd.org (8.8.5/8.8.5) id IAA12851 for bugs-outgoing; Wed, 14 May 1997 08:00:03 -0700 (PDT) Received: (from gnats@localhost) by hub.freebsd.org (8.8.5/8.8.5) id IAA12829; Wed, 14 May 1997 08:00:01 -0700 (PDT) Date: Wed, 14 May 1997 08:00:01 -0700 (PDT) Message-Id: <199705141500.IAA12829@hub.freebsd.org> To: freebsd-bugs Cc: From: Kevin Hendrix Subject: Re: kern/2621: Patch to support Cogent EM110 fast-ethernet card. Reply-To: Kevin Hendrix Sender: owner-bugs@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk The following reply was made to PR kern/2621; it has been noted by GNATS. From: Kevin Hendrix To: "'freebsd-gnats-submit@freebsd.org'" Cc: "'jeffe@ichips.intel.com'" Subject: Re: kern/2621: Patch to support Cogent EM110 fast-ethernet card. Date: Wed, 14 May 1997 09:56:56 -0500 I tried Jeff's patch on a system using the Adaptec ANA-6911 (formerly known as the Cogent EM110) under FreeBSD 2.2.1 and met with no success. Apparently Adaptec changed the ID number of the card when they took over, so it didn't match either of the known Cogent ID constants. I've expanded on Jeff's patch to include support for the Adaptec card. Once again, all it does is check for the appropriate ID and use the existing EM100 code. It is known to work on 2.2.1-RELEASE. patch /usr/src/sys/pci. *** dc21040.h.bak Wed May 14 05:57:44 1997 --- dc21040.h Wed May 14 05:34:29 1997 *************** *** 294,299 **** --- 294,301 ---- #define TULIP_OUI_COGENT_1 0x00 #define TULIP_OUI_COGENT_2 0x92 #define TULIP_COGENT_EM100_ID 0x12 + #define TULIP_COGENT_EM110_ID 0x14 + #define TULIP_ADAPTEC_ANA6911_ID 0x00 /* *** if_de.c.bak Wed May 14 05:57:49 1997 --- if_de.c Wed May 14 05:37:39 1997 *************** *** 1603,1608 **** --- 1603,1625 ---- tulip_21140_cogent_em100_media_select, tulip_21140_nomii_100only_media_preset }; + /* The cogent 110 acts just like the em100, but the ID is different */ + static const tulip_boardsw_t tulip_21140_cogent_em110_boardsw = { + TULIP_21140_COGENT_EM100, + "Cogent EM110 ", + tulip_21140_cogent_em100_media_probe, + tulip_21140_cogent_em100_media_select, + tulip_21140_nomii_100only_media_preset + }; + /* The adaptec 6911 acts just like the em100 and em110, but the ID is different */ + static const tulip_boardsw_t tulip_21140_adaptec_ana6911_boardsw = { + TULIP_21140_COGENT_EM100, + "Adaptec ANA-6911 ", + tulip_21140_cogent_em100_media_probe, + tulip_21140_cogent_em100_media_select, + tulip_21140_nomii_100only_media_preset + }; + static int *************** *** 3269,3274 **** --- 3286,3295 ---- if (sc->tulip_chipid == TULIP_21140 || sc->tulip_chipid == TULIP_21140A) { if (sc->tulip_rombuf[32] == TULIP_COGENT_EM100_ID) sc->tulip_boardsw = &tulip_21140_cogent_em100_boardsw; + if (sc->tulip_rombuf[32] == TULIP_COGENT_EM110_ID) + sc->tulip_boardsw = &tulip_21140_cogent_em110_boardsw; + if (sc->tulip_rombuf[32] == TULIP_ADAPTEC_ANA6911_ID) + sc->tulip_boardsw = &tulip_21140_adaptec_ana6911_boardsw; } } else if (sc->tulip_hwaddr[0] == TULIP_OUI_ZNYX_0 && sc->tulip_hwaddr[1] == TULIP_OUI_ZNYX_1