站長新書 站長開講 首頁 最新文章 站長著作及審校 FreeBSD 筆記 Linux 筆記 Windows 筆記 虛擬化筆記 網管人雜誌 遊山玩水 關於本站
站長新書 VMware vSphere ICM 團購開跑了!!

無法抓到網卡 Broadcom NetXtreme BCM5752 Gigabit Ethernet

Q1.無法抓到 Broadcom NetXtreme BCM5752 Gigabit Ethernet 網路卡?

Error Meaage:

安裝完 FreeBSD 6.0 Release 後無法抓到 NetXtreme BCM5752 網卡,只有辦認到網卡公司無法辦認型號

 #pciconf -lv
 none3 at pci63:0:0:  class=0x020000 card=0x3013103c chip=0x160014e4 rev=0x01 hdr=0x00
 vendor = 'Broadcom Corporation'
 device = 'Broadcom NetXtreme Gigabit Ethernet'
 class = network
 subclass = ethernet

Ans:

解決方式有二種如下

修改 if_bge.c

 #vi /usr/src/sys/dev/bge/if_bge.c
 約172行處新增
 { 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" },
 約2319行處修改
 if (sc->bge_asicrev == BGE_ASICREV_BCM5714)             //修改前
       sc->bge_asicrev = BGE_ASICREV_BCM5750;
 if (sc->bge_asicrev == BGE_ASICREV_BCM5714 ||           //修改後
       sc->bge_asicrev == BGE_ASICREV_BCM5752)
  	 sc->bge_asicrev = BGE_ASICREV_BCM5750;

修改 if_bgereg.h

 #vi /usr/src/sys/dev/bge/if_bgereg.h
 約250行處新增
 #define BGE_ASICREV_BCM5750		0x04
 #define BGE_ASICREV_BCM5714		0x05
 #define BGE_ASICREV_BCM5752		0x06            //新增此行
 約1875行處新增
 #define BCOM_DEVICEID_BCM5751M		0x167D
 #define BCOM_DEVICEID_BCM5752		0x1600          //新增此行
 #define BCOM_DEVICEID_BCM5782		0x1696

修改完畢後在重新編譯核心 (make kernel) 後重新開機就順利抓到 NetXtreme BCM5752 (bge0) 網卡了

Go To Oddmuse OrgGo To FreeBSD OrgCreative Commons 2.5 Taiwansitestates.com