Date: Mon, 3 Jan 2005 07:50:21 +0100 (CET) From: Andre Albsmeier <andre.albsmeier@siemens.com> To: FreeBSD-gnats-submit@FreeBSD.org Subject: kern/75739: Intel Etherexpress 10MBit broken since recent commit to fxp driver Message-ID: <200501030650.j036oLlr024930@curry.mchp.siemens.de> Resent-Message-ID: <200501030700.j0370kVW002520@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 75739 >Category: kern >Synopsis: Intel Etherexpress 10MBit broken since recent commit to fxp driver >Confidential: no >Severity: critical >Priority: high >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Mon Jan 03 07:00:45 GMT 2005 >Closed-Date: >Last-Modified: >Originator: Andre Albsmeier >Release: FreeBSD 4.11-RC1 i386 >Organization: >Environment: FreeBSD 4.11-RC1 using an Intel Etherexpress 10MBit >Description: This commit: mux 2004-12-28 22:49:24 UTC FreeBSD src repository Modified files: (Branch: RELENG_4) sys/dev/fxp if_fxp.c Log: Merge if_fxp.c:1.220 from HEAD to RELENG_4: date: 2004/12/20 10:18:21; author: mux; state: Exp; lines: +2 -2 Only try to use the 82503 serial interface for the 82557 chipsets. The datasheet says it is only valid for such chipsets and shouldn't be used with others. This fixes some 82559 based cards which otherwise only work at 10Mbit. broke the Intel Etherexpress 10MBit card which has an INTEL S82557 and a SEEQ NQ80C24 chip on them: fxp1: <Intel 82557 Pro/100 Ethernet> port 0xb800-0xb81f mem 0xe0800000-0xe08fffff,0xe3800000-0xe3800fff irq 10 at device 11.0 on pci0 fxp1: Ethernet address 00:a0:c9:a9:1d:06 fxp1: MII without any PHY! device_probe_and_attach: fxp1 attach returned 6 >How-To-Repeat: Boot a recent 4.11-RC1 with the above card and try to use it. >Fix: I assume the patch is not correct but it works here: --- if_fxp.c.ORI Fri Dec 31 16:40:32 2004 +++ if_fxp.c Fri Dec 31 17:01:15 2004 @@ -511,7 +511,7 @@ * Determine whether we must use the 503 serial interface. */ fxp_read_eeprom(sc, &data, 6, 1); - if (sc->revision == FXP_REV_82557 && (data & FXP_PHY_DEVICE_MASK) != 0 + if ((sc->revision == 0 || sc->revision == FXP_REV_82557) && (data & FXP_PHY_DEVICE_MASK) != 0 && (data & FXP_PHY_SERIAL_ONLY)) sc->flags |= FXP_FLAG_SERIAL_MEDIA; >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200501030650.j036oLlr024930>