Date: Sun, 13 Nov 2005 19:34:09 +0100 From: Alexander Hausner <alex@hugo.bmg.gv.at> To: FreeBSD-gnats-submit@FreeBSD.org Subject: kern/88940: [patch] bge support for BCM5752 Message-ID: <E1EbMg5-0000Vh-AR@teleweb.at> Resent-Message-ID: <200511131840.jADIeHqi022903@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 88940 >Category: kern >Synopsis: [patch] bge support for BCM5752 >Confidential: no >Severity: serious >Priority: medium >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: update >Submitter-Id: current-users >Arrival-Date: Sun Nov 13 18:40:17 GMT 2005 >Closed-Date: >Last-Modified: >Originator: >Release: FreeBSD 6.0-STABLE i386 >Organization: >Environment: System: FreeBSD chuck.teleweb.at 6.0-STABLE FreeBSD 6.0-STABLE #6: Sat Nov 12 19:47:53 CET 2005 root@:/usr/src/sys/i386/compile/CHUCK i386 >Description: Yesterday, I tried to install FreeBSD on an HP dc7600, the onboard NIC was not found during installation. After some investigations on the web, I found this onboard NIC should be a Broadcom BCM5752, which is not supported by the current bge driver. Hence I wrote a simple patch for this NIC. >How-To-Repeat: >Fix: --- bge.patch begins here --- diff -r -c bge.orig/if_bge.c bge/if_bge.c *** bge.orig/if_bge.c Sun Nov 13 18:50:06 2005 --- bge/if_bge.c Sun Nov 13 18:57:27 2005 *************** *** 172,177 **** --- 172,179 ---- "Broadcom BCM5751 Gigabit Ethernet" }, { BCOM_VENDORID, BCOM_DEVICEID_BCM5751M, "Broadcom BCM5751M Gigabit Ethernet" }, + { BCOM_VENDORID, BCOM_DEVICEID_BCM5752, + "Broadcom BCM5752 Gigabit Ethernet" }, { BCOM_VENDORID, BCOM_DEVICEID_BCM5782, "Broadcom BCM5782 Gigabit Ethernet" }, { BCOM_VENDORID, BCOM_DEVICEID_BCM5788, *************** *** 2319,2328 **** sc->bge_chiprev = BGE_CHIPREV(sc->bge_chipid); /* ! * Treat the 5714 like the 5750 until we have more info * on this chip. */ ! if (sc->bge_asicrev == BGE_ASICREV_BCM5714) sc->bge_asicrev = BGE_ASICREV_BCM5750; /* --- 2321,2331 ---- sc->bge_chiprev = BGE_CHIPREV(sc->bge_chipid); /* ! * Treat the 5714 and the 5752 like the 5750 until we have more info * on this chip. */ ! if (sc->bge_asicrev == BGE_ASICREV_BCM5714 || ! sc->bge_asicrev == BGE_ASICREV_BCM5752) sc->bge_asicrev = BGE_ASICREV_BCM5750; /* Only in bge: if_bge.c~ diff -r -c bge.orig/if_bgereg.h bge/if_bgereg.h *** bge.orig/if_bgereg.h Sun Nov 13 18:50:30 2005 --- bge/if_bgereg.h Sun Nov 13 18:54:59 2005 *************** *** 250,255 **** --- 250,256 ---- #define BGE_ASICREV_BCM5705 0x03 #define BGE_ASICREV_BCM5750 0x04 #define BGE_ASICREV_BCM5714 0x05 + #define BGE_ASICREV_BCM5752 0x06 /* chip revisions */ #define BGE_CHIPREV(x) ((x) >> 24) *************** *** 1875,1880 **** --- 1876,1882 ---- #define BCOM_DEVICEID_BCM5750M 0x167C #define BCOM_DEVICEID_BCM5751 0x1677 #define BCOM_DEVICEID_BCM5751M 0x167D + #define BCOM_DEVICEID_BCM5752 0x1600 #define BCOM_DEVICEID_BCM5782 0x1696 #define BCOM_DEVICEID_BCM5788 0x169C #define BCOM_DEVICEID_BCM5789 0x169D --- bge.patch ends here --- >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?E1EbMg5-0000Vh-AR>